써니나타스 포렌식 14번 문제이다
sunninatas의 비밀번호를 아냐고 물어보는데 일단
다운로드파일을 받아보자
파일을 받고 압축을풀면 passwd파일과 shadow파일이 나오는데
passwd이랑 shadow파일내용을 확인해보면
맨아래 suninatas사용자의 정보가 보인다 passwd에서는 사용자정보를 ' : ' 로 구분하는데
suninatas:x:1001:1001::/home/suninatas:/bin/sh
1 2 3 4 5 6 7
2 - 비밀번호
3 - 사용자ID
4 - 그룹ID
5 - Comment
6 - 홈디렉토리
7 - 기본 쉘 종류
여기서 비밀번호가 암호화되어있으면 x로 표시된다고 한다
암호화된 비밀번호는 shadow파일에서 볼수있으니 shadow파일을 열어보자
여기서도 맨아래에 suninatas의 암호화된 비밀번호가 보인다
여기서는 이 $로 나누어진 3개의 파트를 보면된다
$6 $QlRlqGhj $BZoS9PuMMRHZZXz1Gde99W01u3kD9nP/zYtl8O2dsshdnwsJT/1lZXsLar8asQZpqTAioiey4rKVpsLm/bqrX/
각각 Hash ID, Salt, Hash Value 라고불린다
여기서 Hash ID는 1,5,6이 가장많이 사용된다고 한다
suninatas계정의 Hash ID는 6이니까 SHA-512로 암호화되어있다고 보면된다
자이제 암호화된 비밀번호를 어떻게 크래킹하냐가 문제인데 구글링해보니까
John The Ripper를 사용하면된다고한다 마침 지금 사용하고있는 칼리리눅스에 내장되어있다고하니
바로 사용해보았다
사용법도 굉장히 간단했다 자동으로 root계정과 suninatas 계정의 비밀번호를 찾아주었는데
우리가찾는 suninatas의 비밀번호는 iloveu1라고 나온다