자동화를 위한 John the Ripper 스크립트 사용
이 단계에서는 이론에서 실천으로 나아갑니다. John the Ripper 를 "통합"하는 가장 일반적인 방법은 명령줄 인터페이스를 스크립트로 감싸는 것입니다. 이를 통해 반복적인 작업을 자동화하고 더 큰 도구 체인에 통합할 수 있습니다. 여기서는 사전 공격을 실행하는 간단한 bash 스크립트를 만들고 결과를 표시합니다.
먼저 자동화 스크립트를 만듭니다. nano 편집기를 사용하여 현재 디렉토리인 ~/project에 crack.sh라는 새 파일을 만듭니다.
nano crack.sh
이제 파일에 다음 내용을 추가합니다. 이 스크립트는 해시 파일과 사전 파일을 입력으로 받아 John 을 실행하고 크랙된 비밀번호를 표시합니다.
#!/bin/bash
if [ "$#" -ne 2 ]; then
echo "Usage: $0 <hash_file> <wordlist_file>"
exit 1
fi
HASH_FILE=$1
WORDLIST=$2
echo "[-] Starting John the Ripper..."
john --wordlist="$WORDLIST" "$HASH_FILE" > /dev/null 2>&1
echo "[+] Cracking attempt finished."
echo "[+] Showing cracked passwords:"
john --show "$HASH_FILE"
파일을 저장하고 Ctrl+X, Y, Enter를 눌러 nano를 종료합니다.
다음으로 스크립트를 실행 가능하게 만들어야 합니다.
chmod +x crack.sh
이제 테스트를 위해 간단한 사전 파일을 만듭니다. 이 실험실의 설정 스크립트는 이미 샘플 해시가 포함된 hashes.txt라는 파일을 생성했습니다. 이 해시의 비밀번호는 password123입니다.
echo "password123" > wordlist.txt
마지막으로 자동화 스크립트를 실행합니다. hashes.txt 파일과 새로 만든 wordlist.txt를 제공합니다.
./crack.sh hashes.txt wordlist.txt
스크립트가 John 을 성공적으로 실행하고 비밀번호를 찾았음을 나타내는 다음과 같은 출력을 볼 수 있습니다.
[-] Starting John the Ripper...
[+] Cracking attempt finished.
[+] Showing cracked passwords:
user1:password123
1 password hash cracked, 0 left
이제 John the Ripper 를 자동화하는 간단한 스크립트를 성공적으로 만들었습니다!