주요정보통신기반시설 기술적 취약점 가이드

🛡️ U-02 패스워드 복잡성 설정

시스템 계정의 패스워드 설정 시 영문, 숫자, 특수문자 등을 조합하여 유추하기 어렵게 설정하는지 점검합니다.

✅ 점검 진행도
  • 설정 파일 확인
  • 취약한 설정 식별
  • 보안 조치 완료
설정 파일 편집기 취약함
/etc/security/pwquality.conf 💡 최소 길이 및 문자 조합 설정을 확인하세요.
# Configuration for pam_pwquality.so
#
# [취약] 모든 설정이 주석 처리되어 기본값(미흡)으로 동작함
#
# minlen = 8
# dcredit = 0
# ucredit = 0
# lcredit = 0
# ocredit = 0
💡 KISA 조치 가이드 (RHEL/CentOS)
1. 설정 파일 수정

/etc/security/pwquality.conf 파일에서 다음 옵션들의 주석을 해제하고 값을 설정합니다.

  • minlen: 패스워드 최소 길이 (8 이상 권장)
  • dcredit: 숫자 포함 여부 (음수 값 입력 시 필수 포함)
  • ucredit: 대문자 포함 여부
  • lcredit: 소문자 포함 여부
  • ocredit: 특수문자 포함 여부
# 예시: 영문, 숫자, 특수문자 조합 8자리 이상 minlen = 8 dcredit = -1 ucredit = -1 lcredit = -1 ocredit = -1
📊 취약점 상세 분석
점검 목적
패스워드 복잡성 설정을 통해 무작위 대입 공격(Brute Force) 및 사전 대입 공격(Dictionary Attack)에 대비하고, 유추하기 어려운 패스워드를 사용하도록 강제하기 위함입니다.
위험성

[상] 매우 위험

패스워드 복잡성이 낮을 경우, 공격자가 쉽게 패스워드를 추측하거나 자동화된 도구를 통해 크랙킹하여 시스템에 접근할 수 있습니다.

판단 기준
  • 양호: 영문(대/소문자), 숫자, 특수문자 중 2종류 이상 조합하여 최소 10자리 이상 또는 3종류 이상 조합하여 최소 8자리 이상의 패스워드 설정이 적용된 경우
  • 취약: 패스워드 복잡성 설정이 되어 있지 않거나, 기준에 미흡한 경우
✅ 점검 진행도
  • 설정 파일 확인
  • 취약한 설정 식별
  • 보안 조치 완료
설정 파일 편집기 취약함
/etc/pam.d/common-password 💡 pam_cracklib.so 모듈 설정을 확인하세요.
# /etc/pam.d/common-password

# [취약] 복잡성 검증 모듈이 주석 처리됨
# password requisite pam_cracklib.so retry=3 minlen=8 difok=3

password        [success=1 default=ignore]      pam_unix.so obscure sha512
password        required                        pam_deny.so
password        required                        pam_permit.so
💡 KISA 조치 가이드 (Ubuntu/Debian)
1. pam_cracklib 모듈 활성화

/etc/pam.d/common-password 파일에서 pam_cracklib.so 라인의 주석을 해제하고 옵션을 설정합니다.

password requisite pam_cracklib.so retry=3 minlen=8 difok=3 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1

※ 시스템에 따라 pam_pwquality.so를 사용할 수도 있습니다.

📊 취약점 상세 분석
점검 목적
패스워드 복잡성 설정을 통해 무작위 대입 공격 및 사전 대입 공격에 대비하고, 유추하기 어려운 패스워드를 사용하도록 강제하기 위함입니다.
위험성

[상] 매우 위험

패스워드 복잡성이 낮을 경우, 공격자가 쉽게 패스워드를 추측하거나 크랙킹하여 시스템에 접근할 수 있습니다.

판단 기준
  • 양호: 영문(대/소문자), 숫자, 특수문자 중 2종류 이상 조합하여 최소 10자리 이상 또는 3종류 이상 조합하여 최소 8자리 이상의 패스워드 설정이 적용된 경우
  • 취약: 패스워드 복잡성 설정이 되어 있지 않거나, 기준에 미흡한 경우