WiFiハッキング2019 WEPのパスワード解析 Kali Linuxで実践

※この記事は古くなってます。最新のやり方などは下記の動画に詳しく解説されているのでこちらを参照ください。

WiFiハッキングシリーズ第一弾 WEPのパスワード解析

都心では稀にしか見つけることができないWEP WiFi

逆に田舎の旅館などに行くと割とあったりするWEP WiFi

存在自体が脆弱性と言っても過言ではないレベルのWiFi初期の産物ですが、WiFiハッキングを行う上で誰もが通る道であるので知っておいて損はない。

WEP WiFiとは

Wired Equivalent Privacyとは

1997年に登場した無線LANの暗号化方式の一つ

WEPキーと呼ばれる暗号化と復号に使われる鍵を使ってルーターと端末との間を暗号化する

任意の文字列とIVと呼ばれるランダムで生成される初期化ベクトルによって構成されている

ハードウェア的な脆弱性じゃなくて仕組み的な脆弱性だぞ。1997年製なんやからしゃーない

WEPハッキング 準備

kali linuxとモニターモードに変更可能なアダプターを使ってWEPハッキングする

最終的な目標はWEPキーを特定してそのWiFiに接続することだ

環境

Kali linux
Kali linux

本体:Macbook Air 2015

OS:Kali linux 2018.4(VirtualBox)ダウンロード

アダプタ:ALFA AWUS036ACH(モニターモードに変更可能なアダプタを用意しろ)

ルーター:dodocoolの無線LAN中継機(ぶっちゃけなんでもいい)

WiFiの名前:Brain-Fuck-WiFi

暗号化方式:WEP(終わったらすぐに戻せ。踏み台にされるぞ)

WEPキー:1145148108939(普段使わないパスワードにしろ)

Kali linuxじゃなくてもいいけど、iwconfigが使えないとモニターモードに変更できないからmacとかじゃ難しいぞ

WEPのアクセスポイントを作成

大体のルーターにはWEPが実装されているがデフォルトでは有効になっていない。

おそろくWPA2あたりが設定されているのでWEPに変更してパスワードを普段使用しない適当なパスワードにしろ

アダプタをモニターモードにする

私が使っているアダプタは通常だと普通にWi-Fiに接続するだけの端末だが、魔法のコマンドでモニターモードに変更することができる。

モニターモードに変更することによって、本来は自分宛のパケットしか拾わないアダプタが近くに飛んでいるパケット全てを拾うようになる

しかし、無理やりモニターモードにしている為やりすぎると負担がかかりすぎてアダプタから火が上がるかもしれないからやりすぎは注意

コマンドの説明はコメントアウトで後ろに付けてるから一応よんどけ

画像は面倒だからMakefileに全部ふぢこんでやっている。

airmon-ng check kill # 別のプロセスがアダプタを使っていた場合色々うざいから該当するプロセスをkillする
ifconfig wlan0 down # モニターモードにするために該当アダプタを一旦落とす
iwconfig wlan0 mode monitor # iwconfigになってるところが注意。モニターモードに変更する
macchanger -e wlan0 # 別にやらなくてもいいけど、ベンダー未満のmacアドレスを変更する
ifconfig wlan0 up # モニターモードにしたのでアダプタを立ち上げる
iwconfig # モニターモードになっているか確認するんだ

火は上がらないけど高温になることが多いから都度温度を確認して壊れないようにしろ。モニターモードにできるアダプタは限られている(ワイがAmazonで買ったら販売ページが消えた)
アダプターのドライバを入れ忘れるなよ

周囲のWiFiを取得する

モニターモードに正常になっている場合周囲のWiFiのアクセスポイントや接続している端末を取得することが可能だ

airodump-ng wlan0

wlan0はアダプタの名前たせ。ifconfigで確認しろ。

airodump-ngの見方はこうだ。今回は必要なものだけ解説をする

上段はアクセスポイント一覧で

BSSID:ルーターのMacアドレス的なやつだ

PWR:電波の強さだ。たしかこの値が小さければ電波が強いはずだ。

#Data:データ通信の量だ。WEPでは重要な項目なので覚えておこう

CH:アクセスポイントのチャンネル数だ。2Ghz帯は1から13まである。パケットキャプチャをするときにアダプタに5チャンネルに設定しろとするときがある

ENC:が暗号化方式。WEP・WPA・WPA2の種類がある

ESSID:アクセスポイントの名前だ

下段は近くにあるアクセスポイントを利用している端末だ。

5Ghz帯をキャプチャするときは{airodump-ng wlan0 –band a}と入力しろ

WEPハッキング 実線

WEPのパケットをたくさん集めて、そのパケットからパスワードを解析する。

詳しい話は他のウェブサイトを参照した方が良いので割愛させていただく。

パケットを保存する

ターミナルを必要位して以下のコマンドを実行しろ

それでパケットをキャプチャすることができる。

airodump-ng --bssid 80:3F:5D:42:D9:11 --channel 5 --write wep wlan0

引数を説明する

–bssid :airodump-ngでbssidと出ていた部分だ。解析するWEPのbssidを入力しろ

–channel :airodump-ngでCHと出ていた部分だ。解析するWEPのCHを入力しろ

–write :パケットを保存するファイルの名前だ。拡張子は要らない。

wlan0: 自分のアダプタ名だ

パケットからWEPキーを解析する

Ctrl+Shift+Nで新しいターミナルを起動しろ

さっきのパケットを保存は実行し続けなればならないため別のコマンドを実行するためにも新しいターミナルが必要だ。

解析を開始するので下記のコマンドを実行しろ

aircrack-ng wep-01.cap wlan0

wep01.capかwep.capで保存してるパケットを指定するんだ

WEPの解析には#Data項目にあるデータが必要なるが現在は一つもデータがない為解析が実行できないと怒られる。少しある場合は解析が始まる。

ARP要求リプレイ攻撃で#Dataを増やす

要はARPリクエストを送りまくってデータを稼ぐ方法である。

fakeauthで偽の認証を行う

これをしないとARPリクエストを送ってもデータが増えない。

aireplay-ng --fakeauth 0 -a 80:3F:5D:42:D9:11 -h 00:c0:ca:a6:4f:63 wlan0

–fakeauth 0 :偽の認証を行う

-a: アクセスポイントのBSSID

-h: アダプタのmacアドレス

wlan0:アダプタ名

偽の認証が成功するとパケットを保存しているターミナルでAUTHの部分がOPENになっているのを確認できるぞ

ARPリクエストを送りつける

下記のコマンドを実行してしばらくすると#Dataが増えてくるぞ

初回時はリクエストパケットを生成するからなかなか増えないけど1分くらい待ったらリクエストの送信を始めるから焦らず待て

aireplay-ng --arpreplay -b 80:3F:5D:42:D9:11 -h 00:c0:ca:a6:4f:63 wlan0

もう一度WEP解析を始める

ARPリクエストを大量送ることによってDataが増えたはずだ。

さっと同じように下記のコマンドを実行して解析を始めろ

aircrack-ng wep-01.cap wlan0

なんかエラー出てるときは大体パケットファイルの指定がミスってる。wep-02.capとか出てたらそいつを指定しろ

データが集まるのをひたすら待つ

この解析ではデータ量が命。5万データくらいあれば大抵は解析ができてしまうが、そこまで待たなければならない。これはしかたないことである。

データが5000集まるごとに自動的に解析を始める(大体は)

始まらなかつたら毎度再実行して解析すると良い。

解析完了

4万くらいデータが集まったところで解析完了した

パスワードが表示されているのがわかるだろう。

以上でWEP解析は終了だ。

あとは接続するだけ