취약점 개요 | |
점검 내용 | 시스템의 사용자 계정(root, 일반계정) 정보가 저장된 파일(예 /etc/passwd, /etc/shadow)에 사용자 계정 패스워드가 암호화되어 저장되어 있는지 점검 |
점검 목적 | 일부 오래된 시스템의 경우 /etc/passwd 파일에 패스워드가 평문으로 저장되므로 사용자 계정 패스워드가 암호화되어 저장되어 있는지 점검하여 비인가자의 패스워드 파일 접근 시에도 사용자 계정 패스워드가 안전하게 관리되고 있는지 확인하기 위함 |
보안 위협 | 사용자 계정 패스워드가 저장된 파일이 유출 또는 탈취 시 평문으로 저장된 패스워드 정보가 노출될 수 있음 |
참고 | 참고 ※ 관련 점검 항목 : U-07(상), U-08(상) |
점검대상 및 판단 기준 | |
대상 | LINUX |
판단기준 | 양호 : 쉐도우 패스워드를 사용하거나, 패스워드를 암호화하여 저장하는 경우 |
취약 : 쉐도우 패스워드를 사용하지 않고, 패스워드를 암호화하여 저장하지 않는 경우 | |
조치 방법 | 패스워드 암호화 저장∙관리 설정 적용 |
점검 및 조치 | |
점검 | Step 1) /shadow 파일의 패스워드 암호화 존재 확인 (일반적으로 /etc 디렉터리 내 존재) #ls /etc Step 2) /etc/passwd 파일 내 두 번째 필드가 “x” 표시되는지 확인 #cat /etc/passwd root:x:0:0:root:/root:/bin/bash (※ “passwd” 파일 구조: 부록 참조} |
위에 제시한 설정이 적용되지 않은 경우 아래의 보안설정방법에 따라 설정을 변경함 | |
조치 | Step 1) #pwconv ---> 쉐도우 패스워드 정책 적용 방법 Step 2) #pwunconv ---> 일반 패스워드 정책 적용 방법 |
점검 스크립트
#!/bin/bash
. function.sh
BAR
CODE [U-04] 패스워드 파일 보호
cat << EOF >> $RESULT
[양호]: 쉐도우 패스워드를 사용하거나, 패스워드를 암호화하여 저장하는 경우
[취약]: 쉐도우 패스워드를 사용하지 않고, 패스워드를 암호화하여 저장하지 않는 경우
EOF
BAR
FILENAME1=/etc/shadow
FILENAME2=/etc/passwd
if [ -f $FILENAME ] ; then
INFO "쉐도우 파일이 존재합니다."
CHECK=$(cat $FILENAME2 | awk -F: '{print $2}' | grep -v 'x')
if [ -z $CHECK ] ; then
OK "쉐도우 패스워드를 사용하거나, 패스워드를 암호화하여 저장하는 경우"
else
VULN "쉐도우 패스워드를 사용하지 않고, 패스워드를 암호화하여 저장하지 않는 경우"
fi
else
VULN "쉐도우 파일이 존재하지 않습니다."
fi
cat $RESULT
'Hacking > infra 진단' 카테고리의 다른 글
[Linux] U-06 (상) 파일 및 디렉터리 소유자 설정 (0) | 2021.08.17 |
---|---|
[Linux] U-05 (상) root홈, 패스 디렉터리 권한 및 패스 설정 (0) | 2021.08.17 |
[Linux] U-03 (상) 계정 잠금 임계값 설정 (0) | 2021.08.17 |
[Linux] U-02 (상) 패스워드 복잡성 설정 (0) | 2021.08.17 |
[Linux] U-01 (상) root 계정 원격접속 제한 (2) | 2021.08.17 |