[리눅스/계정관리] root 계정 su 제한 (U-45)

root 계정 su 제한

 

취약점 개요

■ 위험도
- 하

■ 점검 목적
- su 관련 그룹만 su 명령어 사용 권한이 부여되어 있는지 점검하여 su 그룹에 포함되지 않은 일반 사용자의 su 명령 사용을 원천적으로 차단하는지 확인하기 위함

■ 보안 위협
- su 명령어를 모든 사용자가 사용하도록 설정되어 있는 경우 root 계정 권한을 얻기 위해 패스워드 무작위 공격(Brute Force Attack) 이나 패스워드 추측 공격(Password Guessing)을 시도하여 root 계정 패스워드가 유출될 위협이 있음


점검 및 조치 방법

■ 판단 기준
- 양호 : su 명령어를 특정 그룹에 속한 사용자만 사용하도록 제한되어 있는 경우
- 취약 : su 명령어를 모든 사용자가 사용하도록 설정되어 있는 경우

■ 조치 방법
일반 사용자의 su 명령 사용 제한
Step 1) Group 생성(생성할 그룹 요청, 일반적으로 wheel 사용)
Step 2) su 명령어의 그룹을 su 명령어 허용할 그룹으로 변경
Step 3) su 명령어의 권한 변경(4750)
Step 4) su 명령어 사용이 필요한 계정을 새로 생성한 그룹에 추가(추가할 계정 요청)
※ LINUX의 경우, PAM(Pluggable Authentication Module)을 이용한 설정 가능

 



■ 점검 및 조치 사례



● SOLARIS, LINUX, HP-UX
Step 1) wheel group 생성(wheel 그룹이 존재하지 않는 경우)

# groupadd wheel

Step 2) su 명령어 그룹 변경

# chgrp wheel /usr/bin/su

Step 3) su 명령어 사용권한 변경

# chmod 4750 /usr/bin/su

Step 4) wheel 그룹에 su 명령 허용 계정 등록

# usermod -G wheel <user_name>

또는, 직접 /etc/group 파일을 수정하여 필요한 계정 등록

wheel:x:10: -> wheel:x:10:root,admin

 

 

● AIX

Step 1) wheel group 생성(wheel 그룹이 존재하지 않는 경우)

# mkgroup wheel

Step 2) su 명령어 그룹 변경

# chgrp wheel /usr/bin/su

Step 3) su 명령어 사용권한 변경

# chmod 4750 /usr/bin/su

Step 4) wheel 그룹에 su 명령 허용 계정 등록

# chgroup users=<user_name> wheel

예) chgroup users=admin wheel

 

 

LINUX PAM 모듈을 이용한 설정 방법
Step 1) "/etc/pam.d/su" 파일을 아래와 같이 설정(주석 제거)
auth sufficient /lib/security/pam_rootok.so
auth required /lib/security/pam_wheel.so debug group=wheel 또는,
auth sufficient /lib/security/$ISA/pam_rootok.so
auth required /lib/security/$ISA/pam_wheel.so use_uid

Step 2) wheel 그룹에 su 명령어를 사용할 사용자 추가

# usermod -G wheel <user_name>

또는, 직접 /etc/group 파일을 수정하여 필요한 계정 등록
wheel:x:10: -> wheel:x:10:root,admin


■ 스크립트

echo "U-45 START"
echo "[ U-45 root계정 su 제한 ]"																		>>	$COMPUTERNAME 2>&1
echo "[ 1.wheel그룹 및 그룹 내 구성원 존재 여부 확인]	"											>>	$COMPUTERNAME 2>&1
cat $GROUP | grep -i wheel																				>>	$COMPUTERNAME 2>&1
echo "[ 2.허용 그룹 설정 확인]	"															>>	$COMPUTERNAME 2>&1
cat $SU_PAM																			>>	$COMPUTERNAME 2>&1
echo " "		
echo "U-45 END"																						>>	$COMPUTERNAME 2>&1
echo "======================================================================================"		>>	$COMPUTERNAME 2>&1
echo " "	
echo " "



■ 용어 설명 / 팁
※ PAM(Pluggable Authentication Module) : 사용자를 인증하고 그 사용자의 서비스에 대한 액세스를 제어하는 모듈화 된 방법을 말하며, PAM은 관리자가 응용프로그램들의 사용자 인증 방법을 선택할 수 있도록 해줌

댓글

Designed by JB FACTORY