用于自动化的 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 的简单脚本!