(부제) 나는 CISO 이다/ISMS-P 인증심사
(ISMS-P) 리눅스 사용자 패스워드 암호화 알고리즘 확인 및 변경
노벰버맨
2021. 11. 9. 14:45
필드에서 가장 많이 사용하고 있는 시스템이 리눅스이나
리눅스에서 관리되는 사용자의 계정을 안전하지 않은 MD5 알고리즘이 적용된 경우가 많다.
이를 확인하는 방법은 먼저
1. /etc/shadow 파일
위의 그림은 mark ID의 shadow 파일 내용이며 mark 다음의 ':$'와 ':'사이의 값이 패스워드 관련 값이다.
$다음에 숫자가 표시되어 있으며 이것은 적용된 해시 알고리즘의 유형을 의미한다.
1 | MD5 |
2a | Blowfish |
md5 | MD5 |
5 | SHA-256 |
6 | SHA-512 |
좀더 상세히 설명하면 패스워드 자리에는 '$Hashid $Salt $Hash value'와 같은 형식을 유지하며, Hashid는 적용된 알골즘, Salt는 레인보우테이블에 의한 크랙을 방지하기 위한 값이며 Hash value는 실제 수행된 결과값이다.
2. /etc/login.defs 파일
새 계정 생성 시 설정에 부여하는 기본값을 지정하는 파일이며 이곳에 ENCRYPT_METHOD에 적용될 암호화 알고리즘을 지정할 수 있다.
3. authconfig 명령어
CentOS 6.x의 /etc/pam.d/system-auth 내에 있던 설정값들을 CentOS 7.x에서는 authconfig 명령어를 사용하여 변경가능하며 authconfig --passalgo=sha256 --update와 같이 패스워드 암호화 알고리즘을 변경 가능하다.