[Unix 서버] root 이외의 UID가 ‘0’ 금지

 

 

U-44 root 이외의 UID가 ‘0’ 금지

 

■ 점검영역 : 계정 관리

 

■ 항목 중요도 :

 

■ 점검내용

 

사용자 계정 정보가 저장된 파일(예 /etc/passwd)에 root(UID=0) 계정과 동일한 UID(User Identification)를 가진 계정이 존재하는지 점검

 

■ 점검목적

 

root 계정과 동일한 UID가 존재하는지 점검하여 root권한이 일반 사용자 계정이나 비인가자의 접근 위협에 안전하게 보호되고 있는지 확인하기 위함

 

■ 보안위협

 

root 계정과 동일 UID가 설정되어 있는 일반사용자 계정도 root 권한을 부여받아 관리자가 실행 할 수 있는 모든 작업이 가능함(서비스 시작, 중지,재부팅, root 권한 파일 편집 등)

 

root와 동일한 UID를 사용하므로 사용자 감사 추적 시 어려움이 발생함

 

■ 참고

 

※ UID(User Identification)

여러 명의 사용자가 동시에 사용하는 시스템에서 사용자가 자신을 대표하기 위해 쓰는 이름

 

 

점검대상 및 판단기준

 

■ 대상 : SOLARIS, LINUX, AIX, HP-UX 등

 

양호

root 계정과 동일한 UID를 갖는 계정이 존재하지 않는 경우

 

취약

root 계정과 동일한 UID를 갖는 계정이 존재하는 경우

 

■ 조치방법

 

UID가 0인 계정 존재 시 변경할 UID를 확인 후 다른 UID로 변경 및 불필요 시 삭제, 계정이 사용 중이면 명령어로 조치가 안 되므로 /etc/passwd 파일 설정 변경

 

 

점검 방법

 

■ OS별 점검 파일 위치 및 점검 방법

 

SOLARIS, LINUX, AIX, HP-UX

#cat /etc/passwd (※ “passwd” 파일 구조: 부록 참조)
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

“/etc/passwd” 파일 내 UID 확인 (세 번째 필드 값)
root 이외의 계정이 “UID=0”인 경우 0이 아닌 적절한 UID 부여

위에 제시한 설정이 적용되지 않은 경우 아래의 보안설정방법에 따라 설정을 변경함

 

■ SOLARIS, LINUX, HP-UX

 

Step 1) usermod 명령으로 UID가 0인 일반 계정의 UID를 100 이상으로 수정
 SOLARIS, HP-UX의 경우 100 이상

 LINUX의 경우 500 이상
(예) test 계정의 UID를 100 로 바꿀 경우
#usermod –u 100 test


※ 각 OS별로 사용자 UID 체계가 상이하여 시스템 계정 및 일반 사용자 계정이 부여받는 값의 범위에 차이가 있으며, 공통적으로 관리자는 "UID=0"을 부여받음


■ AIX

 

Step 1) chuser 명령으로 UID가 0인 일반 계정의 UID를 100 이상으로 수정
(예) test 계정의 UID 를 100 로 바꿀 경우
#chuser id=100 test

passwd 파일 구조
Test : x : 500 : 500 : Gen-User : /home/test : /usr/bin/bash
계정명 : 패스워드 : UID 값 : GID 값 : 설명 : 홈디렉터리 위치 : 지정된 쉘
(예) root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin

예는 /etc/passwd 파일의 내용으로 “:”을 사용하여 필드를 구분함
세 번째 필드(UID)가 “0”인 경우 슈퍼유저 권한을 갖으며, “0”이외의 계정은 일반계정으로 볼 수 있음

 

조치 시 영향 : 해당 계정에 관리자 권한이 필요하지 않으면 일반적으로 영향 없음

 

 

댓글

Designed by JB FACTORY