가. 취약점 개요
■ 내용
- 사용자 계정 로그인 실패 시 계정잠금 임계값이 설정되어 있는지 점검
■ 목적
- 계정탈취 목적의 무작위 대입 공격 시 해당 계정을 잠금하여 인증 요청에 응답하는 리소스 낭비를 차단하고 대입 공격으로 인한 비밀번호 노출 공격을 무력화하기 위함
■ 보안 위협
- 패스워드 탈취 공격(무작위 대입 공격, 사전 대입 공격, 추측 공격 등)의 인증 요청에 대해 설정된 패스워드와 일치 할 때까지 지속적으로 응답하여 해당 계정의 패스워드가 유출 될 수 있음
■ 참고
- 사용자 로그인 실패 임계 값: 시스템에 로그인 시 몇 번의 로그인 실패에 로그인을 차단할 것인지 결정하는 값
나. 점검방법
■ 대상 : SOLARIS, LINUX, AIX, HP-UX 등
■ 판단기준
- 양호 : 계정 잠금 임계값이 10회 이하의 값으로 설정되어 있는 경우
- 취약 : 계정 잠금 임계값이 설정되어 있지 않거나, 10회 이하의 값으로 설정되 지 않은 경우
■ 점검 명령어
- OS 별 패스워드 설정 점검 파일
OS | 점검 파일 |
SOLARIS | #cat /etc/default/login RETRIES=5 SOLARIS 5.9 이상 버전일 경우 추가적으로 “policy.conf” 파일 확인 #cat /etc/security/policy.conf LOCK_AFTER_RETRIES=YES |
LINUX | #cat /etc/pam.d/system-auth auth required /lib/security/pam_tally.so deny=5 unlock_time=120 no_magic_root account required /lib/security/pam_tally.so no_magic_root reset |
AIX | #cat /etc/security/user loginretries=10 |
HP-UX | #cat /tcb/files/auth/system/default u_maxtries#5 HP-UX 11.v3 이상일 경우 “security” 파일 확인 #cat /etc/default/security AUTH_MAXTRIES=10 |
다. 조치방법
■ 조치방법 : 계정 잠금 임계값을 10회 이하로 설정
■ SOLARIS 5.9 이하 버전
Step 1) vi 편집기를 이용하여 “/etc/default/login” 파일 열기
Step 2) 아래와 같이 수정 또는, 신규 삽입
(수정 전) #RETRIES=2
(수정 후) RETRIES=10
■ SOLARIS 5.9 이상 버전
Step 1) vi 편집기를 이용하여 “/etc/default/login” 파일 열기
Step 2) 아래와 같이 수정 또는, 신규 삽입 (계정 잠금 횟수 설정)
(수정 전) #RETRIES=2
(수정 후) RETRIES=10
Step 3) vi 편집기를 이용하여 “/etc/security/policy.conf” 파일 열기
Step 4) 아래와 같이 수정 또는, 신규 삽입 (계정 잠금 정책사용 설정)
(수정 전) #LOCK_AFTER_RETRIES=NO
(수정 후) LOCK_AFTER_RETRIES=YES
■ LINUX
Step 1) vi 편집기를 이용하여 “/etc/pam.d/system-auth” 파일 열기
Step 2) 아래와 같이 수정 또는, 신규 삽입
auth required /lib/security/pam_tally.so deny=5 unlock_time=120
no_magic_root
account required /lib/security/pam_tally.so no_magic_root reset
옵션 | 설명 |
no_magic_root | root에게는 패스워드 잠금 설정을 적용하지 않음 |
deny=5 | 5회 입력 실패 시 패스워드 잠금 |
unlock_time | 계정 잠김 후 마지막 계정 실패 시간부터 설정된 시간이 지나면 자동 계정 잠김 해제 (단위: 초) |
reset | 접속 시도 성공 시 실패한 횟수 초기화 |
■ AIX
Step 1) vi 편집기를 이용하여 “/etc/security/user” 파일 열기
Step 2) 아래와 같이 수정 또는, 신규 삽입
(수정 전) loginretries = 0
(수정 후) loginretries = 10
■ HP-UX 11.v2 이하 버전
Step 1) vi 편집기를 이용하여 /tcb/files/auth/system/default 파일 열기
Step 2) 아래와 같이 수정 또는, 신규 삽입
(수정 전) u_maxtries#
(수정 후) u_maxtries#10
※ HP-UX 서버에 계정 잠금 정책 설정을 위해서는 HP-UX 서버가 Trusted Mode로 동작하고 있어야 하므로 Trusted Mode로 전환한 후 잠금 정책 적용
■ HP-UX 11.v3 이상 버전
Step 1) vi 편집기를 이용하여 /etc/default/security 파일 열기
Step 2) 아래와 같이 수정 또는, 신규 삽입
(수정 전) #AUTH_MAXTRIES=0
(수정 후) AUTH_MAXTRIES=10
※ Standard and Shadow modes only
라. 조치시 영향
■ HP-UX 경우 Trusted Mode로 전환 시 파일시스템 구조가 변경되어 운영 중인 서비스에 문제가 발생할 수 있으므로 충분한 테스트를 거친 후 Trusted Mode 로의 전환이 필요함
■ Liunx의 pam.d/system-auth의 내용 수정 시 해당 라이브럴리가 실제 존재하 는지 확인 필요 (/lib/security/pam_tally.so – 파일 미 존재시 모든 계정 로그인 안되는 장애가 발생될 수 있음)