Packet Master

Kisa UNIX 취약점 점검 가이드 U-14 (Metasploitable2 사용) 본문

OS security/UNIX OS Check for vulnerabilities

Kisa UNIX 취약점 점검 가이드 U-14 (Metasploitable2 사용)

상열몬 2019. 11. 16. 23:36

점검 내용 : 홈 디렉터리 내의 환경변수 파일에 대한 소유자 및 접근 권한이 관리자 또는 해당 계정으로 설정되어 있는지 점검

점검 목적 : 비인가자의 환경변수 조작으로 인한 보안 위험을 방지하기 위함

판단 기준 : 

 - 양호 : 홈 디렉터리 환경변수 파일 소유자가 root 또는, 해당 계정으로 지정되어 있고, 홈 디렉터리 환경변수 파일에 root와 소유자만 쓰기 권한이 부여된 경우

 - 취약 : 홈 디렉터리 환경변수 파일 소유자가 root 또는, 해당 계정으로 지정되지 않고, 홈 디렉터리 환경변수 파일에 rot와 소유자 외에 쓰기 권한이 부여 된 경우

쉘 스크립트 : 

#!/bin/sh

FHOME=`cat /etc/passwd | grep 'sh$' | awk -F: '{print $6}'`

for VAR in $HOME
do
USER=`echo $VAR | awk -F/ '{print $NF}'`
U=`ls -al $VAR | grep -v '^d' | egrep '(sh|rc|vi)' | awk '{print $3,$9}'`
F=`ls -al $VAR | grep -v '^d' | egrep '(sh|rc|vi)' | awk '{print $1,$9}'`
echo "$U" | while read VAR2
do
CHECK1=`echo $VAR2 | awk '{print $1}'`
FILE=`echo $VAR2 | awk '{print $2}'`
if [ "$CHECK1" == "$USER" ]; then
echo PASS "$CHECK1" "$USER" "$FILE" 소유자가 올바르게 지정 되었습니다. >> LOG
else
echo NOT "$CHECK1" "$USER" "$FILE" 소유자가 올바르게 지정되어 있지 않습니다. >> LOG

fi

done
echo "$F" | while read VAR3
do
FILE=`echo $VAR3 | awk '{print $2}'`
echo "$VAR3" | sed 's/-/ /g' | sed 's/^ /''/' | awk '{print $2,$3}' | grep 'w' >/dev/null
if [ $? -eq 0 ]; then
echo PASS "$VAR3" 권한 설정이 올바르게 되었습니다.
else
echo NOT "$VAR3" 권한 설정이 올바르지 않습니다.
fi
done
done

Comments