ハッカーはBullyでワイヤレス監査を効率的に実行する(Kali Linux)
ワイヤレス監査を効率的に実行する方法を理解するためにまとめてみました。
この動作確認は自分の家の無線LAN機器を利用して、Kali Linuxがインストールされたノートパソコンで確認しています。
Bullyとは
Bullyは、WPS仕様の設計上の欠陥(今ではよく知られています)を利用するという点では、他のプログラムと概念的には同じです。オリジナルのreaverコードに比べていくつかの利点があります。依存関係が少ないこと、メモリやCPUのパフォーマンスが向上していること、エンディアンを正しく扱うことができること、より堅牢なオプションが用意されていることなどです。また,Linux上で動作し,アーキテクチャに関係なく組み込みLinuxシステム(OpenWrtなど)で動作するように開発されています。
WPSブルートフォース攻撃が出来る様子です。
※WPS(Wi-Fi Protected Setup)とは、無線LAN機器の設定を簡素化するための仕様です。
機能
- 無線LANに関する設定情報を取得する
ツールの場所
[Applications]→[06-Wireless Attacks]→[.802.11Wlreless Tools]→[Bully]
ツールと使用方法
bully <options> interface
例 bully wlan0mon -e “xxxxx-735beb-a" -b 1C:B1:7F:CF:48:2D -c 7
【実行イメージ】少し端折って整形しています。
┌──(root__localhost)-[/home/kuro]
└─# bully wlan0mon -e "xxxxx-735beb-a" -b 1C:B1:7F:CF:48:2D -c 7
[!] Bully v1.4-00 - WPS vulnerability assessment utility
[P] Modified for pixiewps by AAnarchYY(aanarchyy@gmail.com)
[+] Switching interface 'wlan0mon' to channel '7'
[!] Using '9c:ef:d5:fb:50:02' for the source MAC address
[+] Datalink type set to '127', radiotap headers present
[+] Scanning for beacon from '1c:b1:7f:cf:56:2d' on channel '7'
[X] Unable to get a beacon from the AP, possible causes are
[.] an invalid --bssid or -essid was provided,
[.] the access point isn't on channel '7',
[.] you aren't close enough to the access point.
※bssid、essidが正しいことは確認しているのですがエラーになります。
無線LAN機器が脆弱性を対応しているのかもしれません。
必要な引数について(Required arguments)
interface
Wireless interface in monitor mode. (root required)
ワイヤレスインターフェースをモニターモードにする。(rootが必要)
-b, –bssid macaddr
MAC address of the target access point.
ワイヤレスインターフェースをモニターモードにする。(rootが必要)
または
-e, –essid string
Extended SSID for the access point.
アクセスポイントの拡張SSID。
任意の引数(Optional arguments)
-c, –channel N[,N…]
Channel number of AP, or list to hop. [b/g]
APのチャンネル番号、またはホップへのリストです。[b/g]の場合
-i, –index N
Starting pin index. (7 or 8 digits)[Auto]
スタートピンのインデックス。(7桁または8桁)[Auto].
-l, –lockwait N
Seconds to wait if the AP locks WPS.[43]
APがWPSをロックした場合に待機する秒数です。[43]
-o, –outfile file
Output file for messages.[stdout]
メッセージ用の出力ファイルです。[stdout] です。
-p, –pin N
Starting pin number. (7 or 8 digits) [Auto]
スタートピン番号 (7桁または8桁) [Auto].
-s, –source macaddr
Source (hardware) MAC address.[Probe]
送信元(ハードウェア)のMACアドレスです。[プローブ]
-u, –lua
Lua script file.
Luaスクリプトファイル。
-v, –verbosity N
Verbosity level 1-4, 1 is quietest.[3]
Verbosity level 1-4, 1が最も静かです。[3]
-w, –workdir path
Location of pin/session files.[~/.bully/]
ピン/セッションファイルの場所[~/.bully/] です。
-5, –5ghz
Hop on 5GHz a/n default channel list.[No]
ホップオン5GHz a/nのデフォルトチャンネルリスト。[No]
-B, –bruteforce
Bruteforce the WPS pin checksum digit.[No]
WPSピンのチェックサム桁をブルートフォースします。[No]をクリックします。
-F, –force
Force continue in spite of warnings.[No]
警告が出ていても強行突破[No]
-S, –sequential
Sequential pins. (do not randomize)[No]
シーケンシャルピン。(ランダムにしない)[No].
-T, –test
Test mode. (do not inject any packets)[No]
テストモード。(パケットを注入しない)[No]
.
高度な引数(Advanced arguments)
-d, –pixiewps
Attempt to use pixiewpsv[No]
pixiewpsvの使用を試みる[No] 。
-a, –acktime N
Deprecated/ignored.[Auto]
非推奨/無視されています。[自動].
-r, –retries N
Resend packets N times when not acked.[2]
アックされていないのにパケットをN回再送する。[2]
-m, –m13time N
Deprecated/ignored.[Auto]
非推奨/無視されています。[自動].
-t, –timeout N
Deprecated/ignored.[Auto]
非推奨/無視される。[自動]
-1, –pin1delay M,N
Delay M seconds every Nth nack at M5.[0,1]
M5のN番目のナックごとにM秒遅らせる。[0,1]
-2, –pin2delay M,N
Delay M seconds every Nth nack at M7.[5,1]
M7のN番目のナックごとにM秒遅らせる。[5,1]
-A, –noacks
Disable ACK check for sent packets.[No]
送信パケットのACKチェックを無効にする。[No] です。
-C, –nocheck
Skip CRC/FCS validation. (performance) [No]
CRC/FCS検証をスキップします。(パフォーマンス) [No]
-D, –detectlock
Detect WPS lockouts unreported by AP.[No]
APから報告されていないWPSロックアウトを検出する。[No]
-E, –eapfail
EAP Failure terminate every exchange.[No]
EAP Failがすべての交換を終了する。[No]をクリックします。
-L, –lockignore
Ignore WPS locks reported by the AP.[No]
APから報告されたWPSロックを無視する。[No]
-M, –m57nack
M5/M7 timeouts treated as WSC_NACK’s.[No]
M5/M7のタイムアウトがWSC_NACKとして扱われる。[No]をクリックしてください。
-N, –nofcs
Packets don’t contain the FCS field.[Auto]
パケットにFCSフィールドが含まれていない。[オート]
-P, –probe
Use probe request for nonbeaconing AP.[No]
ビーコンしていないAPに対してプローブ要求を使用する。[いいえ]を選択します。
-Q, –wpsinfo
Use probe request to gather WPS info.[No]
プローブ要求を使用してWPS情報を収集する。[いいえ]を選択した場合
-R, –radiotap
Assume radiotap headers are present.[Auto]
Radiotapヘッダーが存在すると仮定する。[Auto] (自動)
-W, –windows7
Masquerade as a Windows 7 registrar.[No]
Windows 7のレジストラになりすます。[No]
-Z, –suppress
Suppress packet throttling algorithm.[No]
パケットスロットルのアルゴリズムを抑制する。[No]
-V, –version
Print version info and exit.
バージョン情報を印刷して終了します。
-h, –help
Display this help information.
このヘルプ情報を表示します。
Bullyツールのまとめ
Bullyツールの確認に時間がかかってしまいました。
今までのツールは仮想環境を利用してテストサイトにコマンドを打ってテストをしていましたが、今回のBullyツールは無線(ワイヤレス)の環境を利用する必要がありました。
知識が少ないので誤っているかもしれませんが、仮想環境でWi-Fiが繋がらないためKali Linuxがインストールされたノートパソコンに無線LAN USBアダプターを付けて通信しながらテストを行いました。
自分の家にある無線LAN機器なので、bssid、essidの情報はハッキングしなくてもわかっていたのですが、ツールを実行すると「an invalid –bssid or -essid was provided」のエラーが解決できませんでした。もう少し時間をかけて確認したいと思います。
ハッキング出来るのを楽しみにしていたのですが、よく考えるとそんなに簡単にできるわけがないですよね。