[Suninatas] Forensic 14

·2025년 2월 21일

Security

목록 보기
31/60

문제

Do you know password of suninatas?

풀이

문제 파일은 passwd와 shadow로 리눅스 /etc/passwd 파일과 shadow 파일인 것 같았다.
텍스트 파일로 열어보니 아래와 같았다.

가장 하단의 문자열은 패스워드 해시 포맷으로 SHA-512 해시 알고리즘을 사용한 암호화된 비밀번호로 추정할 수 있다.

해시 복호화 방법으로 hashcat과 John the Ripper 도구를 많이 사용하는데, john이 사용하기 편리해 많이 사용되는 듯 했다.
나는 두 가지 모두 시도해보겠다.

shadow 파일에서 분석할 문자열만 따로 new 파일에 옮겨주었다.

hashcat

kali에는 hashcat이 내장되어 있어 편하게 사용할 수 있었다.
사용법을 적어놓은 기술블로그 몇 개를 보니 옵션값이 굉장히 많은 듯 했다.

┌──(kali㉿kali)-[~/Downloads]
└─$ hashcat -m 1800 -a 0 new /usr/share/wordlists/rockyou.txt
hashcat (v6.2.6) starting

위와 같은 명령어를 사용했다.
사용한 명령어 먼저 설명해보면 옵션 값인 -m 은 본인이 크랙하려는 해시 종류를 지정해주는 옵션이다.
각 해시 알고리즘에 따라 옵션값 뒤에 오는 넘버가 다르다.
MD5는 0, SHA-256은 1400, 내가 사용했던 SHA-512는 1800 이다.

옵션 -a는 attack mode로 bruteforce로 크랙할지, dictionary attack을 할지, hybrid wordlist+Mask, Hybrid+Wordlist 등등 방법을 지정할 수 있었다.

나는 dictionary attack으로 미리 준비된 비밀번호 목록을 사용하여 해시 값과 일치하는 비밀번호를 찾는 방식으로, 나는 kali에 있는 rockyou.txt를 사용했다.

이 옵션들 외에도 --pw-min [num1] --pw-max [num2] 옵션을 이용해 크랙 시도할 때 문자열의 길이를 지정할 수도 있고, -D 를 사용하여 CPU/GPU를 지정하여 연산할 수도 있다.

돌아가는데 1분 정도 걸린 듯하다.

John the Ripper

kali에 있는 도구로 john [file_path] 하면 끝이다.

사용법이 ez하네요 .

자동으로 해시 파일의 형식을 인식해서 크랙한다.
hashcat에서 사용했던 rockyou.txt를 기본적으로 사용하여 크랙하지만, 사용자가 원하는 wordlist를 지정하여 크랙할 수도 있다.

옵션을 이용해 john --wordlist=/[wordlist.txt_path] [분석할파일] 지정 가능합니다.

해시 타입 또한 --format=[hash algo] 옵션을 통해 사용자가 따로 지정할 수 있습니다.

profile
Whatever I want | Interested in DFIR, Security, Infra, Cloud

0개의 댓글