본문 바로가기
IT/리눅스

주요정보통신기반시설 유닉스/리눅스 서버 U-02 패스워드 복잡성 설정

by 쏠-티 2023. 1. 5.

■ 개념

2021 주요정보통신기반시설 취약점 분석 및 평가 중 점검대상 유닉스(Unix) 서버의 U-02 패스워드 복잡성 설정 점검항목에 대해 알아보겠습니다. 해당 포스팅은 리눅스(CentOS 7)을 기준으로 진단 및 실습합니다.

항목명 패스워드 복잡성 설정
항목코드 U-02
위험도
점검내용 시스템 정책에 사용자 계정(root 및 일반계정 모두 해당) 패스워드 복잡성 관련 설정이 되어 있는지 점검
점검목적 패스워드 복잡성 관련 정책이 설정되어 있는지 점검하여 비인가자의 공격(무 작위 대입 공격, 사전 대입 공격 등)에 대비가 되어 있는지 확인하기 위함

보안위협 복잡성 설정이 되어있지 않은 패스워드는 사회공학적인 유추가 가능 할 수 있으며 암호화된 패스워드 해시값을 무작위 대입공격, 사전대입 공격 등으로 단시간에 패스워드 크렉이 가능함

※ 패스워드 복잡성: 사용자 패스워드 설정 시 영문(대문자, 소문자), 숫자, 특수문자가 혼 합된 일정 길이 이상으로 패스워드를 설정하는 방법
판단기준
양호 패스워드 최소길이 8자리 이상, 영문·숫자·특수문자 최소 입력 기능이 설정된 경우
취약 패스워드 최소길이 8자리 이상, 영문·숫자·특수문자 최소 입력 기능이 설정된 경우
조치방법 계정과 유사하지 않은 8자 이상의 영문, 숫자, 특수문자의 조합으로 암호 설정 및 패스워드 복잡성 옵션 설정

 

■ 실습

U-02 점검항목은 유닉스 계열의 패스워드 복잡성 설정 여부를 확인하여 양호/취약을 판단합니다. 아래 표를 참고하시어 진단 업무에 참고하세요.

구분 내용
최소 8자리 이상 영어 대문자, 소문자, 숫자, 특수문자 중 3종류 조합
최소 10자리 이상 영어 대문자, 소문자, 숫자, 특수문자 중 2종류 조합
기타 1) 일련번호, 전화번호 등 쉬운 문자열이 포한 되지 않도록 함
2) 잘 알려진 단어, 키보드 상에서 나란히 있는 문자열이 포함 되지 않도록 함

유닉스 계열에서 패스워드 복잡성 설정 및 확인하는 방법은 다음과 같습니다. CentOS 7 이상은 /etc/security/pwquality.conf 에서 패스워드 복잡성을 설정 및 확인해야 하고, CentOS 6 이하는 /etc/pam.d/system-auth 에서 패스워드 복잡성 확인합니다.

패스워드 복잡성 확인 (1)
패스워드 복잡성 확인 (1)

패스워드 복잡성 확인 (2)
패스워드 복잡성 확인 (2)

구분 내용 예시
minlen 최소 패스워드 길이 minlen = 8
패스워드 최소 길이 8자
dcredit 숫자 최소 사용 수 설정 dcredit = -1
패스워드에 숫자 최소 1개 존재해야 함
ucredit 대문자 최소 사용 수 설정 ucredit = -1
패스워드에 대문자 1개 존재해야 함
lcredit 소문자 최소 사용수 설정 lcredit = -1
패스워드에 소문자 1개 존재해야 함

ocredit 특수문자 최소 사용수 설정 ocredit = -1
패스워드에 특수문자 1개 존재해야 함
minclass 대문자, 소문자, 숫자, 특수문자 조합 수 설정 minlclass = 4
복잡성이 최소 4가지 포함
즉, 대문자, 소문자, 숫자, 특수문자가 포함되어 있어야 함
maxrepeat 동일 문자 사용 최대 허용 문자 수 설정 maxrepeat = 2
연속으로 같은 문자 최대 2글자까지 사용 허용
difok 이전에 사용하던 패스워드에서 사용한 문자 허용 금지 수 설정 difok = 7
이전의 패스워드와 비교했을 때 최소 7글자가 상이해야 함
badwords 패스워드에 사용하지 않을 단어 리스트 작성 badwords = qwer1234!! qwer1234!! 단어 패스워드 사용 금지

 

본 포스팅 내용은 한국인터넷진흥원(KISA)에서 발행한 주요정보통신기반시설 평가기준을 바탕으로 작성했습니다.

반응형

댓글