
自作Pwnbox 🚀 / Rogue AP 📡 Raspberry Piベース — WiFiハッキングチートシート + マインドマップ 💡
自作(ヘッドレス)PwnBox / RogueAP(Raspberry Pi & Alfa WiFi USBアダプター使用)
以下の用途向けに設計:

* Broadcom内蔵チップでモニターモードとインジェクションを有効にするには nexmon パッチが必要ですが、ここでの使用には不要です。
root で実行する必要があります。arm64 で動作しますが、古いプリコンパイル済みバイナリの中には box64 や手動コンパイルが必要な場合があります。Raspberry Pi用Kali Linux ARMイメージをダウンロード: https://www.kali.org/get-kali/#kali-arm
ダウンロードしたKali Linux ARMイメージをMicro SDカードに書き込みます(Raspberry Pi Imager または dd を使用)。
Raspberry Piを起動し、ログイン(デフォルトはkali/kali)し、インターネット接続があることを確認します。
PwnBoxにインストールスクリプト/設定ファイルをダウンロード:
git clone https://github.com/koutto/pi-pwnbox-rogueap.git
重要: scripts/install-system.sh ファイルの先頭にあるインストールスクリプトの設定を編集します:
GUACAMOLE_PASSWORD、GUACAMOLE_MYSQL_PASSWORD)。aa:bb:cc:dd:ee:ff のデバイスには wlxaabbccddeeff。eth0 と wlan0(内蔵インターフェース)のMACアドレスを設定。WIFI_SSID、)。起動時に、PwnBoxは自動的に1つのインターフェースにAPを生成し、簡単なリモートアクセスを可能にします:
PWNBOX_ADMIN(非表示SSID)Koutto!PwnB0x!起動時に、PwnBoxは自動的に以下に接続します:
Ethernetポートが接続されている場合は有線ネットワーク。
保存された接続設定(/etc/wpa_supplicant.conf 内)がある利用可能な無線ネットワークがある場合はWiFiネットワーク(Raspberry Pi内蔵チップ使用)。PwnBoxに保存されていない新しいWiFiネットワークに接続する場合は、事前にネットワークのWPAパスフレーズを追加する必要があります:
wpa_passphrase <SSID> <パスフレーズ> >> /etc/wpa_supplicant.conf
wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf
dhclient -v wlan0
ping 8.8.8.8
PwnBoxは以下から制御できます:
SSHサービス(22/tcp):
ssh kali@<pwnbox_ip>
Guacamoleを使用したVNC-over-HTTP(8080/tcp):
http://<pwnbox_ip>:8080/guacamole
PwnBoxのIP は、アクセスするネットワークによって異なります:
PWNBOX_ADMIN に接続時): IPは常に 10.0.0.1 です。netdiscover を使用して見つけることができます。注: Guacamoleサービスは動作中に多くのリソース(RAM)を消費する可能性があります。使用しない場合は、stop-guacamole.sh スクリプトで停止できます。
/etc/network/interfaces が auto eth0 を使用しているため、システムは起動中にDHCPリースを待機します。EthernetなしでPwnBoxを頻繁に使用し、起動が遅い場合は、/etc/network/interfaces を編集し、以下のように変更:
auto eth0
allow-hotplug eth0
を:
allow-hotplug eth0
に変更します(auto eth0 行を削除)。
一部のツール(例: Fluxion)で必要となるため isc-dhcp-server がインストールされていますが、dnsmasq(PWNBOX_ADMIN APを提供)とのポート67/udpの競合を避けるため、デフォルトでは無効 になっています。isc-dhcp-server が必要な場合は、まず dnsmasq を停止:
systemctl stop dnsmasq
systemctl start isc-dhcp-server
新しいKali/Debianリリースでは、Tomcat 9の代わりに Tomcat 10 が同梱されています。start-guacamole.sh および stop-guacamole.sh スクリプトは、インストールされているTomcatバージョンを自動検出します。インストール後にGuacamoleが動作しない場合は、以下を確認:
systemctl list-unit-files | grep tomcat
systemctl status guacd
systemctl status mysql
# その後、正しいTomcatバージョンで手動起動。例:
systemctl start tomcat10
ベンダーのインストーラー(deb.trendtechcn.com)がオフラインの場合、ドライバーを手動でビルド:
sudo apt-get install -y bc git build-essential dkms
sudo git clone https://github.com/cilynx/rtl88x2bu.git /usr/src/rtl88x2bu-5.8.7
sudo dkms add -m rtl88x2bu -v 5.8.7
sudo dkms autoinstall
インストール時に vncpasswd を実行してパスワードファイルを作成したことを確認:
vncpasswd
systemctl restart vncserver
Python 2は最新のKaliから削除されました。インストールスクリプトは Python 3のみ を使用するようになりました。古いカスタムPython 2ツールがある場合は、Python 3に移行するか、専用のDockerコンテナ内で実行してください。
インストールスクリプトは、NetworkManagerを無効にして、従来の /etc/network/interfaces を優先します。一時的にNMを再有効化する必要がある場合:
systemctl start NetworkManager
systemctl enable NetworkManager
install-system.sh のMACアドレスが実際と一致しているか確認:
ip link show
その後、ネットワーク設定セクションを再実行するか、/etc/udev/rules.d/70-persistent-net.rules を手動で更新してください。
| デバイス | チップセット | 用途 | 802.11 | 2.4 Ghz | 5 Ghz | Kali 標準サポート | モニターモード | インジェクション | AP |
|---|
| Raspberry Pi 3 B+ 内蔵WiFiチップ | Broadcom 43430 | インターネット接続(設定にWiFiキーを追加すると起動時に自動開始) | 802.11 b/g/n/ac | Y | Y | Y | N* | N* | Y |
| BrosTrend AC1L AC1200 | Realtek RTL8812AU | リモートアクセス用アクセスポイント(起動時に自動開始) | 802.11 a/b/g/n/ac | Y | Y | N | Y | N | Y |
| Alfa AWUS036NEH | Ralink RT2870/3070 | WiFi攻撃 | 802.11 b/g/n | Y | N | Y | Y | Y | Y |
| Alfa AWUS036ACH | Realtek RTL8812AU | WiFi攻撃 | 802.11 a/b/g/n/ac | Y | Y | Y | Y | Y | Y |
WIFI_PASSPHRASEインストールスクリプトを実行します(各ステップの最後で一時停止し、コマンド出力を手動で確認できるようにします)
cd pi-pwnbox-rogueap/scripts
./install-system.sh
再起動し、ネットワークインターフェースの設定を確認:
ip a
iwconfig
eth0 と wlan0 という名前になっているはずです。wlx*)を使用する必要があります。PWNBOX_ADMIN)が適切な wlx* インターフェースで起動している必要があります。Guacamole でVNC-over-HTTPを設定:
pwnbox-vncROOTVNC33127.0.0.14822127.0.0.15901(install-system.sh実行時に選択したパスワード)True color(32ビット)デフォルトの認証情報を変更:
passwd kali)http://<pwnbox_ip>:8080/guacamole/#/manage/mysql/users/guacadmin から)