관심쟁이 영호

[#2] 시스템 보안 - 계정관리 본문

학교공부/시스템보안

[#2] 시스템 보안 - 계정관리

관심쟁이 영호 2020. 11. 2. 01:30
반응형

안녕하세요.

관심쟁이 영호입니다.

 

오늘은 시스템 보안의 6가지 중 1개인

"계정관리"에 대해서 살펴보겠습니다.

 


선수 지식

계정 관리에는 중요한 개념 2개가 있어요!

 

1. 식별 : 사용자가 자신이 누구라고 알리는 것.

2. 인증 : 신원을 증명.

이렇게 두 가지가 있습니다.

 

일반적으로 아이디나 패스워드로 진행을 하게 되지만

이 또한 다른 사람이 도용할 수 있는 것이고 100% 확신할 수 없는 인증 수단이죠..ㅠ

 

그래서 시스템은 4가지의 수단을 사용합니다.

 

- 알고있는알고 있는 것 : 아이디와 패스워드와 같은 사용자가 알고 있는 것을 가리킵니다.

- 가지고 있는 것 : 신분증이나, OTP 등을 가리킵니다.

- 자신의 모습 : 지문이나 홍채, 얼굴 등을 가리킵니다.

- 위치하는 곳 : 접속을 시도하는 곳이 적절한 위치인지 확인합니다.

 


운영 체제의 계정관리

운영체제는 시스템을 구성하고 운영하는 가장 기본적인 것입니다. 그래서 가장 보안이 중요하죠!

크게 두 가지로 나눌 수 있습니다!

관리자 권한, 일반 사용자 권한으로 나눌 수 있습니다.

그냥 딱 보기에도 관리자 권한은 시스템 내부적인 일을 더 크게 관여할 수 있고,

일반 사용자 권한은 내부적인 일을 관여할 수가 없겠죠!

 

더 상세히 들어가면 복잡하고 난잡하니 여기까지만 알고 넘어가도록해요!

 

- Window의 계정관리

윈도에서는 접속하는 계정의 권한에 따라 그룹을 따로 정해두어 관리를 합니다! 관리자 권한, users, guests 등등 각기 다른 기능을 할 수 있는 권한들이 있는데요! 이렇게 그룹으로 나누어 관리를 하게 됩니다!

 

관리자 권한을 administrator라고 합니다. 가장 기본적으로 시스템에 설치되며,

실행창을 켜주시고 cmd 입력 후 명령 프롬프트 창에서

"net localgroup administrators"를 입력해주시면 모든 관리자 그룹에 속하는 각 계정의 존재 형태를 볼 수 있어요!

"net localgroup"이라고 치면 그룹 목록만 알 수 있어요!

(그룹 목록이라 함은 이러한 계정들도 그룹으로 묶을 수 있어요. 그 그룹의 이름을 알 수 있는 것입니다!)

 

이렇게 보시면 알 수 있으시겠죠!?

 

 

- 유닉스의 계정관리

유닉스는 저도 사용을 거의 안 해봐서 잘 모르는데요 ㅠㅠ

이번에 공부를 하면서 처음 접하게 되었답니다^^ㅋㅋㅋ

 

유닉스 계열의 시스템에서는 기본 관리자 계정으로 "root"계정이 존재합니다.

/etc/passwd 파일에서 계정 목록을 확인할 수 있다고 하는데요! passwd파일의 구성을 볼게요.

 

root : x : 0 : 0 : root : /root : /bin/bash

 

이름 내용
root 사용자 계정입니다.
x 패스워드가 암호화가 되어 shadow파일에 저장되어 있다는 뜻입니다.(비었으면 비활성)
0 UID이며 사용자의 번호입니다.
0 GID이며 그룹 번호입니다.
root 실제 이름입니다.
/root 사용자의 홈 디렉터리 설정입니다. 여기서는 관리자 계정이라서 root입니다. 일반 사용자는 /home/wishfree와 같이 /home 디렉터리의 하위에 위치하게 됩니다.
/bin/bash 사용자의 셸 정의입니다. 기본 설정은 bash 셸입니다.
/bin/false = 로그인o, 셸x
/bin/nologin =  사용금지
/bin/ = 할당된 계정x

추가적으로 유닉스의 계정관리에 말씀드리자면!

 

1. 패스워드 절취 방어를 위해서 "계정 정보(/etc/password)"와 "암호화된 패스워드(/etc/shadow)"를 분리하여 저장하고, /etc/shadow 파일은 일반 사용자가 읽지 못하게 합니다!

 

2. 암호화된 패스워드 형식: "$해시 알고리즘 $솔트 $해시값"입니다!

 

3. 솔트 : 패스워드 길이를 확장하면서 동일한 패스워드가 서로 같은 해시값을 갖지 않도록 사용하는 랜덤 값입니다.

 

데이터 베이스의 계정관리

DB 또한 사용자의 계정이 존재합니다! DB의 종류에 따라 운영체제와 계정이 같을 수도 있고, 다를 수도 있어요!

크게 나누어 MS-SQL의 관리자 계정은 sa / ORACLE의 관리자 계정은 sys, system(데이터 베이스 생성 못함)입니다!

 

여기서 짚고 넘어갈만한 것은!

오라클은 다른 db와 다른 특징이 있는데요~

윈도의 Guest계정처럼 Scott이라는 기본 계정이 존재하며, 설루션을 설치 또는 테이블을 생성할 때 관련 계정이 자동으로 생성되는 경우가 있다네요!

 

 

300x250
Comments