문제 파일을 다운받으니 2개의 파일을 담은 압축 파일이 다운로드 되었다.
passwd 파일과 shadow 파일을 확인할 수 있다.
/etc/passwd는 시스템에 등록된 사용자의 정보들이 담겨있는 파일이다.
파일의 사용자 중에 suninatas가 있는 것을 확인할 수 있다. shadow 파일에서 suninatas의 암호화된 비밀번호를 찾아보자.
각각의 필드들이 의미하는 것을 알아보자.
가장 첫번째 필드는 사용자의 계정명이다.
다음은 암호화된 패스워드이다.
$ 3개로 필드가 구분되는데, 각각 salt$encrypted_password를 의미한다.
algorithm_id : password에 사용된 해시 알고리즘의 종류를 의미한다.
1: MD5
2: BlowFish
5: SHA-256
6: SHA-512
-> suninatas의 경우 6이므로 비밀번호에 SHA-512 알고리즘이 사용되었음을 알 수 있다.
salt : 해시에 첨가하는 솔트 값을 의미한다.
encrypted_password : 해당되는 알고리즘과 솔트로 암호화된 패스워드를 의미한다.
kali linux에서 john the ripper를 이용하여 패스워드를 알아내보자.
배경화면에 suninatas 계정의 shadow 파일 필드 값을 붙여넣기 한 suninatas_14 파일을 생성해 주었다.
cmd 창에서 john the ripper 프로그램을 실행하여 password cracking을 수행한다.
suninatas 계정의 password는 iloveu1