본문 바로가기

리눅스 따라하기/Centos7 취약점 점검

08. /etc/shadow 파일 소유자 및 권한 설정

08. /etc/shadow 파일 소유자 및 권한 설정

 

[root@centos7 proc]# ls -al /etc/shadow
----------. 1 root root 713  7월  1 20:12 /etc/shadow
권한이 000인데 읽힌다.. 머지? 원래 이러나? root라 특수한가?

 

root라 특수한거가 보다.. centos6.x는 어떻나 모르겟음

 

 

 

[root@centos7 proc]# cp /etc/shadow /etc/shadow2
[root@centos7 proc]# chown root:mhpark /etc/shadow2
[root@centos7 proc]# ls -al /etc/shadow2
----------. 1 root mhpark 713  7월  1 20:28 /etc/shadow2

[root@centos7 proc]# exit
logout
[mhpark@centos7 ~]$ cat /etc/shadow2
cat: /etc/shadow2: 허가 거부

[mhpark@centos7 ~]$ su -
암호:
마지막 로그인: 일  7월  1 20:22:29 KST 2018 192.168.2.1에서 시작 일시 pts/2
[root@centos7 ~]# cat /etc/shadow2
root:$ㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁ/::0:99999:7:::
bin:*:17632:0:99999:7:::
daemon:*:17632:0:99999:7:::
adm:*:17632:0:99999:7:::
lp:*:17632:0:99999:7:::
sync:*:17632:0:99999:7:::
shutdown:*:17632:0:99999:7:::
halt:*:17632:0:99999:7:::
mail:*:17632:0:99999:7:::
operator:*:17632:0:99999:7:::
games:*:17632:0:99999:7:::
ftp:*:17632:0:99999:7:::
nobody:*:17632:0:99999:7:::
systemd-network:!!:17712::::::
dbus:!!:17712::::::
polkitd:!!:17712::::::
sshd:!!:17712::::::
postfix:!!:17712::::::
chrony:!!:17712::::::
mhpark:ㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁ/::0:99999:7:::
[root@centos7 ~]# chown mhpark:mhpark /etc/shadow2
[root@centos7 ~]# ls -al /etc/shadow2
----------. 1 mhpark mhpark 713  7월  1 20:28 /etc/shadow2
[root@centos7 ~]# exit
logout
[mhpark@centos7 ~]$ cat /etc/shadow2
cat: /etc/shadow2: 허가 거부

[mhpark@centos7 ~]$

 

 

■ 대상 OS : SunOS, Linux, AIX, HP-UX

 


■ 취약점 개요

    - "/etc/shadow" 파일은 시스템에 등록된 모든 계정의 패스워드를 암호화된 형태로 저장 및 관리하고 있는 중요 파일로 root 계정을 제외한 모든 사용자의 접근을 제한하여야 함. 해당 파일에 대한 권한 관리가 이루어지지 않을 경우 ID 및 패스워드 정보가 외부로 노출될 수 있는 위험이 존재함.

 


■ 보안대책

    - 양호 : /etc/shadow 파일의 소유자가 root이고, 권한이 400인 경우

    - 취약 : /etc/shadow 파일의 소유자가 root가 아니거나, 권한이 400이 아닌 경우

 


■ 조치방법

    - "/etc/shadow" 파일의 소유자 및 권한 변경 (소유자 root, 권한 400)

 

 

■ 보안설정 방법


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

        - SunOS, Linux

          # ls -l /etc/shadow

           r-------- root <shadow 파일>

        - AIX

          # ls -ld /etc/security/passwd

           r-------- root <passwd 파일>

        - HP-UX

          # ls -ld /tcb/files/auth

           r-------- root <auth 디렉토리>

     ※ 위에 제시된 파일 및 디렉토리의 소유자가 root가 아니거나 파일의 권한이 400이 아닌 경우 아래의 보안설정 방법에 따라 설정을 변경

 


■ SunOS, Linux

    1. "/etc/shadow" 파일의 소유자 및 권한 확인

       #ls -l /etc/shadow

    2. "/etc/shadow" 파일의 소유자 및 권한 변경 (소유자 root, 권한 400)

       #chown root /etc/shadow

       #chmod 400 /etc/shadow

 


■ AIX

    - AIX 서버는 기본적으로 "/etc/security/passwd" 파일에 패스워드를 암호화하여 저장·관리하므로 해당 디렉토리 권한을 기준에 맞게 설정

    1. /etc/security/passwd 디렉토리의 소유자 및 권한 확인

       #ls -ld /etc/security/passwd

    2. /etc/security/passwd 디렉토리의 소유자 및 권한 변경 (소유자 root, 권한 400)

       #chown root /etc/security/passwd

       #chmod 400 /etc/security/passwd

 

 

■ HP-UX

    - HP-UX 서버는 Trusted Mode 로 전환할 경우 패스워를 암호화하여 "/tcb/files/auth" 디렉토리에 계정 이니셜과 계정명에 따라 파일로 저장·관리 가능

    1. /tcb/files/auth 디렉토리의 소유자 및 권한 확인

       #ls -ld /tcb/files/auth

    2. /tcb/files/auth 디렉토리의 소유자 및 권한 변경 (소유자 root, 권한 400)

       #chown root /tcb/files/auth

       #chmod 400 /tcb/files/auth


출처: http://skynarciss.tistory.com/105?category=578795 [IT 보물창고]