❶ 求《KaliLinux無線網路滲透測試詳解》全文免費下載百度網盤資源,謝謝~
《Kali Linux無線網路滲透測試詳解》網路網盤pdf最新全集下載:
鏈接:https://pan..com/s/1MBeINKVaCnaTWzJKDyUcrA
❷ 網路安全乾貨知識分享 - Kali Linux滲透測試 106 離線密碼破解
前言
最近整理了一些 奇安信&華為大佬 的課件資料+大廠面試課題,想要的可以私信自取, 無償贈送 給粉絲朋友~
1. 密碼破解簡介
1. 思路
目標系統實施了強安全措施
安裝了所有補丁
無任何已知漏洞
無應用層漏洞
攻擊面最小化
社會 工程學
獲取目標系統用戶身份
非授權用戶不受信,認證用戶可以訪問守信資源
已知用戶賬號許可權首先,需要提權
不會觸發系統報警
2. 身份認證方法
證明你是你聲稱你是的那個人
你知道什麼(賬號密碼、pin、passphrase)
你有什麼(令牌、token、key、證書、密寶、手機)
你是誰(指紋、視網膜、虹膜、掌紋、聲紋、面部識別)
以上方法結合使用
基於互聯網的身份驗證仍以賬號密碼為主要形式
3. 密碼破解方法
人工猜解
垃圾桶工具
被動信息收集
基於字典暴力破解(主流)
鍵盤空間字元爆破
字典
保存有用戶名和密碼的文本文件
/usr/share/wordlist
/usr/share/wfuzz/wordlist
/usr/share/seclists
4. 字典
1. 簡介
鍵盤空間字元爆破
全鍵盤空間字元
部分鍵盤空間字元(基於規則)
數字、小寫字母、大寫字元、符號、空格、瑞典字元、高位 ASCII 碼
2. crunch 創建密碼字典
無重復字元
crunch 1 1 -p 1234567890 | more
1
必須是最後一個參數
最大、最小字元長度失效,但必須存在
與 -s 參數不兼容(-s 指定起始字元串)
crunch 4 4 0123456789 -s 9990
讀取文件中每行內容作為基本字元生成字典
crunch 1 1 -q read.txt
1
字典組成規則
crunch 6 6 -t @,%%^^ | more
-t:按位進行生成密碼字典
@:小寫字母 lalpha
,:大寫字母 ualpha
%:數字 numeric
^:符號 symbols
輸出文件壓縮
root@kali:~# crunch 4 5 -p dog cat bird
1
-z:指定壓縮格式
其他壓縮格式:gzip、bzip2、lzma
7z壓縮比率最大
指定字元集
root@kali:~# crunch 4 4 -f /usr/share/crunch/charset.lst mixalpha-numeric-all-space -o w.txt -t @d@@ -s cdab
1
隨機組合
root@kali:~# crunch 4 5 -p dog cat bird
1
crunch 5 5 abc DEF + !@# -t ,@^%,
在小寫字元中使用abc范圍,大寫字元使用 DEF 范圍,數字使用佔位符,符號使用!@#
佔位符
轉義符(空格、符號)
佔位符
root@kali:~# crunch 5 5 -t ddd%% -p dog cat bird
1
任何不同於 -p 參數指定的值都是佔位符
指定特例
root@kali:~# crunch 5 5 -d 2@ -t @@@%%
1
2@:不超過兩個連續相同字元
組合應用
crunch 2 4 0123456789 | aircrack-ng a.cap -e MyESSID -w -
crunch 10 10 12345 –stdout | airolib-ng testdb -import passwd -
3. CUPP 按個人信息生成其專屬的密碼字典
CUPP:Common User Password Profiler
git clone https://github.com/Mebus/cupp.git
python cupp.py -i
4. cewl 通過收集網站信息生成字典
cewl 1.1.1.1 -m 3 -d 3 -e -c -v -w a.txt
-m:最小單詞長度
-d:爬網深度
-e:收集包含email地址信息
-c:每個單詞出現次數
支持基本、摘要 身份認證
支持代理
5. 用戶密碼變型
基於 cewl 的結果進行密碼變型
末尾增加數字串
字母大小寫變化
字母與符號互相轉換
字母與數字互相轉換
P@$w0rd
6. 使用 John the Ripper 配置文件實現密碼動態變型
2. 在線密碼破解
1. hydra
簡介
密碼破解
Windows 密碼破解
Linux 密碼破解
其他服務密碼破解
圖形化界面
xhydra
HTTP表單身份認證
密碼破解效率
密碼復雜度(字典命中率)
帶寬、協議、伺服器性能、客戶端性能
鎖定閾值
單位時間最大登陸請求次數
Hydra 的缺點
穩定性差,程序時常崩潰
速度控制不好,容易觸發服務屏蔽或鎖死機制
每主機新建進程,每服務新建實例
大量目標破解時性能差
2. pw-inspector
Hydra 小工具 pw-inspector
按長度和字元集篩選字典
pw-inspector -i /usr/share/wordlists/nmap.lst -o p1.lst -l
pw-inspector -i /usr/share/wordlists/nmap.lst -o P2.lst -u
pw-inspector -i /usr/share/wordlists/nmap.lst -o P2.lst -u -m 3 -M 5
3. mesa
Mesa 的特點
穩定性好
速度控製得當
基於線程
支持模塊少於hydra(不支持RDP)
WEB-Form 支持存在缺陷
查看支持的模塊
參數
-n:非默認埠
-s:使用SSL連接
-T:並發主機數
mesa -M ftp -q
3. 離線密碼破解
1. 簡介
身份認證
禁止明文傳輸密碼
每次認證使用HASH演算法加密密碼傳輸(HASH演算法加密容易、解密困難)
伺服器端用戶資料庫應加鹽加密保存
破解思路
嗅探獲取密碼HASH
利用漏洞登陸伺服器並從用戶資料庫獲取密碼HASH
識別HASH類型
長度、字元集
利用離線破解工具碰撞密碼HASH
優勢
離線不會觸發密碼鎖定機制
不會產生大量登陸失敗日誌引起管理員注意
2. HASH 識別工具
1. hash-identifier
進行 hash 計算
結果:
進行 hash 識別
2. hashid
可能識別錯誤或無法識別
3. HASH 密碼獲取
1. sammp2
Windows HASH 獲取工具
利用漏洞:Pwmp、fgmp、 mimikatz、wce
物理接觸:sammp2
將待攻擊主機關機
使用 Kali ISO 在線啟動此主機
發現此 windows 機器安裝有兩塊硬碟
mount /dev/sda1 /mnt
將硬碟掛載
cd /mnt/Windows/System32/config
切換目錄
sammp2 SYSTEM SAM -o sam.hash
導出密碼
利用 nc 傳輸 HASH
HASH 值:
2. syskey 工具進行密碼加密
使用 syskey 進行加密(會對 SAM 資料庫進行加密)
重啟需要輸入密碼才能進一步登錄
使用 kali iso live
獲取到 hash 值
hashcat 很難破解
使用 bkhive 破解
使用 Bootkey 利用RC4演算法加密 SAM 資料庫
Bootkey 保存於 SYSTEM 文件中
bkhive
從 SYSTEM 文件中提取 bootkey
Kali 2.0 拋棄了 bkhive
編譯安裝 :http://http.us.debian.org/debian/pool/main/b/bkhive/
在windows的 kali live 模式下,運行
sammp2 SAM key (版本已更新,不再支持此功能)
建議使用 Kali 1.x
1. Hashcat
簡介
開源多線程密碼破解工具
支持80多種加密演算法破解
基於CPU的計算能力破解
六種模式 (-a 0)
0 Straight:字典破解
1 Combination:將字典中密碼進行組合(1 2 > 11 22 12 21)
2 Toggle case:嘗試字典中所有密碼的大小寫字母組合
3 Brute force:指定字元集(或全部字元集)所有組合
4 Permutation:字典中密碼的全部字元置換組合(12 21)
5 Table-lookup:程序為字典中所有密碼自動生成掩碼
命令
hashcat -b
hashcat -m 100 hash.txt pass.lst
hashcat -m 0 hash.txt -a 3 ?l?l?l?l?l?l?l?l?d?d
結果:hashcat.pot
hashcat -m 100 -a 3 hash -i –increment-min 6 –increment-max 8 ?l?l?l?l?l?l?l?l
掩碼動態生成字典
使用
生成文件
計算 hash 類型
結果 MD5
查看 MD5 代表的值
進行破解
2. oclhashcat
簡介
號稱世界上最快、唯一的基於GPGPU的密碼破解軟體
免費開源、支持多平台、支持分布式、150+hash演算法
硬體支持
虛擬機中無法使用
支持 CUDA 技術的Nvidia顯卡
支持 OpenCL 技術的AMD顯卡
安裝相應的驅動
限制
最大密碼長度 55 字元
使用Unicode的最大密碼長度 27 字元
關於版本
oclHashcat-plus、oclHashcat-lite 已經合並為 oclhashcat
命令
3. RainbowCrack
簡介
基於時間記憶權衡技術生成彩虹表
提前計算密碼的HASH值,通過比對HASH值破解密碼
計算HASH的速度很慢,修改版支持CUDA GPU
https://www.freerainbowtables.com/en/download/
彩虹表
密碼明文、HASH值、HASH演算法、字元集、明文長度范圍
KALI 中包含的 RainbowCrack 工具
rtgen:預計算,生成彩虹表,時的階段
rtsort:對 rtgen 生成的彩虹錶行排序
rcrack:查找彩虹表破解密碼
以上命令必須順序使用
rtgen
LanMan、NTLM、MD2、MD4、MD5、SHA1、SHA256、RIPEMD160
rtgen md5 loweralpha 1 5 0 10000 10000 0
計算彩虹表時間可能很長
下載彩虹表
http://www.freerainbowtables.com/en/tables/
http://rainbowtables.shmoo.com/
彩虹表排序
/usr/share/rainbowcrack
rtsort /md5_loweralpha#1-5_0_1000x1000_0.rt
密碼破解
r crack *.rt -h
rcrack *.rt -l hash.txt
4. John
簡介
基於 CPU
支持眾多服務應用的加密破解
支持某些對稱加密演算法破解
模式
Wordlist:基於規則的字典破解
Single crack:默認被首先執行,使用Login/GECOS信息嘗試破解
Incremental:所有或指定字元集的暴力破解
External:需要在主配配文件中用C語言子集編程
默認破解模式
Single、wordlist、incremental
主配置文件中指定默認wordlist
破解Linux系統賬號密碼
破解windows密碼
Johnny 圖形化界面的john
5. ophcrack
簡介
基於彩虹表的LM、NTLM密碼破解軟體
彩虹表:http://ophcrack.sourceforge.net/tables.php
❸ Kali Linux 無線滲透測試入門指南 第六章 攻擊客戶端
多數滲透測試者似乎把全部注意力都放在 WLAN 設施上,而不會注意無線客戶端。但是要注意,黑客也可以通過入侵無線客戶端來獲得授權網路的訪問權。
這一章中,我們將注意力從 WLAN 設施轉移到無線客戶端。客戶端可能是連接的,也可能是獨立未連接的。我們會看一看以客戶端為目標的幾種攻擊。
通常,當客戶端例如筆記本電腦打開時,它會探測之前連接的網路。這些網路儲存在列表中,在基於 Windows 的系統上叫做首選網路列表(PNL)。同時,除了這個列表之外,無線客戶碧中端會展示任何范圍內的可用網路。
黑客可以執行一個或多個下列事情:
這些攻擊都叫做蜜罐攻擊,因為黑客的接入點和正常的接入點錯誤連接。
下個練習中,我們會執行這兩種攻擊。
遵循這些指南來開始:
我們剛剛使用來自客戶端的探針列表來創建蜜罐,並使用和鄰近接入點相同的 ESSID。在第一個例子中,客戶端在搜索網路的時候,自動連接到了我們。第二個例子中,因為我們離客戶端念塵比真正的接入點更近,我們的信號強度就更高,所以客戶端連接到了我們。
在上一個練習中,如果客戶端不自動連接到我們,我們能做什麼呢?我們需要發送解除驗證封包來打破正常的客戶端到接入點的鏈接,之後如果我們的信號強度更高,客戶端會連接到我們的偽造接入點上。通過將客戶端連接到正常接入點,之後強迫它連接蜜罐來嘗試它。
在蜜罐攻擊中,我們注意到客戶端會持續探測它們之前連接到的 SSID。如果客戶端已經使用 WEP 連接到接入點,例如 Windows 的操作系統會緩存和儲存 WEP 密鑰。下一個客戶端連接到相同接入點時,Windows 無線配置管理器就會自動使用儲存的密鑰。
Caffe Latte 攻擊由 Vivek 發明,它是這本書的作者之一,並且在 Toorcon 9, San Diego, USA 上演示。Caffe Latte 攻擊是一種 WEP 攻擊,允許黑客僅僅使用客戶端,獲取授權網路的 WEP 密鑰。這個攻擊並不需要客戶端距離授權 WEP 非常近。它可以從單獨的客戶端上破解 WEP 密鑰。
在下一個練習中,我們將使用 Caffe Latte 攻擊從客戶端獲取網路的 WEP 密鑰。
遵循這些指南來開始:
我們成功從無線客戶悔高山端獲得了 WEP 密鑰,不需要任何真實的接入點,或者在附近存在。這就是 Caffe Latte 攻擊的力量。
基本上,WEP 接入點不需要驗證客戶端是否知道 WEP 密鑰來獲得加密後的流量。在連接在新的網路時,流量的第一部分總是會發送給路由器,它是 ARP 請求來詢問 IP。
這個攻擊的原理是,使用我們創建的偽造接入點反轉和重放由無線客戶端發送的 ARP 包。這些位反轉的 ARP 請求封包導致了無線客戶端發送更多 ARP 響應封包。
位反轉接收加密值,並將其自改來創建不同的加密值。這里,我們可以接收加密 ARP 請求並創建高精確度的 ARP 響應。一旦我們發回了有效的 ARP 響應,我們可以一次又一次地重放這個值,來生成我們解密 WEP 密鑰所需的流量。
要注意,所有這些封包都是用儲存在客戶端的 WEP 密鑰加密。一旦我們得到了大量的這類封包, aircrack-NG 就能夠輕易恢復出 WEP 密鑰。
嘗試修改 WEP 密鑰並且重放攻擊。這是個有難度的攻擊,並且需要一些練習來成功實施。使用 Wireshark 檢驗無線網路上的流量是個好主意。
我們已經在之前的章節中看到了接入點上下文中的解除驗證攻擊,這一章中,我們會在客戶端上下文中探索這種攻擊。
下一個實驗中,我們會發送解除驗證封包給客戶端並且破壞已經建立的接入點和客戶端之間的連接。
遵循這些指南來開始:
我們剛剛看到了如何使用解除驗證幀,選項性斷開無線客戶端到接入點的連接,即使使用了 WEP/WPA/WPA2 加密方式。這僅僅通過發送解除驗證封包給接入點來完成 -- 客戶端偶對,而不是發送廣播解除驗證封包給整個網路。
在上一個練習中,我們使用了解除驗證攻擊來破解連接。嘗試使用解除關聯訪問來破壞客戶端和接入點之間的連接。
我們已經看到了如何實施 Caffe Latte 攻擊。Hirte 攻擊擴展自 Caffe Latte 攻擊,使用脆片機制並允許幾乎任何封包的使用。
Hirte 攻擊的更多信息請見 Aircrack-ng 的官網: http:// www.aircrack-ng.org/doku.php?id=hirte 。
我們現在使用 aircrack-ng 來在相同客戶端上實施 Hirte 攻擊。
遵循這些指南來開始:
我們對 WEP 客戶端實施了 Hirte 攻擊,客戶端是隔離的,並遠離授權網路。我們使用和 Caffe Latte 攻擊相同的方式來破解密鑰。
我們推薦你在客戶端上設置不同的 WEP 密鑰並多次嘗試這個練習來獲得自信。你可能會注意你需要多次重新連接客戶端來使其生效。
在第四章中,我們看到了如何使用 airecrack-ng 來破解 WPA/WPA2 PSK,基本原理是捕獲四次 WPA 握手,之後載入字典攻擊。
關鍵問題是:可不可以僅僅使用客戶端來破解 WPA,在沒有接入點的情況下?
讓我們再看一看 WPA 破解練習:
為了破解 WPA,我們需要來自四次握手的四個參數 -- 驗證方的 Nounce,請求方的 Nounce,驗證方的 MAC,請求方的 MAC。現在有趣的是,我們不需要握手中的全部四個封包來提取這些信息。我們可以只從封包 1 和 2,或 2 和 3 中提取。
為了破解 WPA-PSK,我們需要啟動 WPA-PSK 蜜罐,並且當客戶端連接時,只有消息 1 和 2 會發送。由於我們並不知道口令,我們就不能發送消息 3。但是,消息 1 和 2 包含所有密鑰破解所需的信息:
我們能夠只通過客戶端破解 WPA。這是因為,即使只擁有前兩個封包,我們也能獲得針對握手的字典攻擊的全部所需信息。
我們推薦你在客戶端設置不同的 WPA 密鑰,並且多次嘗試這個練習來蝴蝶自信。你會注意到你需要多次重新連接客戶端來使其生效。
Q1 Caffe Latte 攻擊涉及到哪種加密?
Q2 蜜罐接入點通常使用哪種加密?
Q3 下列哪個攻擊是 DoS 攻擊?
Q4 Caffe Latte 攻擊需要什麼?
這一章中,我們了解了甚至是無線客戶端也容易受到攻擊。這包括蜜罐和其它錯誤關聯攻擊。Caffe Latte 攻擊用於從無線客戶端獲得密鑰;解除驗證和解除關聯攻擊導致拒絕服務;Hirte 攻擊是從漫遊客戶端獲得 WEP 密鑰的替代方案;最後,我們僅僅使用客戶端破解了 WPA 個人口令。
下一章中,我們會使用目前為止學到的東西,在客戶端和設施端實施多種高級無線攻擊。所以,趕緊翻過這一頁,進入下一章吧!
❹ Kali Linux 無線滲透測試入門指南 第四章 WLAN 加密缺陷
即使做了最充分的預測,未來始終是不可預測的。WLAN 委員會設計了了 WEP 和 WPA 作為最簡單的加密機制,但是,久而久之,這些機制擁有在現實世界中廣泛公布和利用的缺陷。
WLAN 加密機制易受密碼學攻擊,這有相當長的歷史了。這從 2000 年的 WEP 開始,它最後被完全破解。最近,攻擊慢慢轉向了 WPA。即使當前沒有公開攻擊方式用於在所有情況下破解 WPA,特殊情況下的攻擊還是可行的。
WLAN 在空氣中傳輸數據,所以保護數據的機密性是一種內在需求。使用加密是最佳方案。WLAN 委員會(IEEE 802.11)為數據加密指定了以下協議:
這一章中,我們會看一看每個加密協議,並演示針對它們的多種攻擊。
WEP 協議在 2000 年發現漏洞,但是,詫異的是,它仍然被使用,並且接入點仍然自帶 WEP 功能。
WEP 中有輪純明許多密碼學缺陷,它們被 Walker,Arbaugh,Fluhrer,Martin,Shamir,KoreK,以及其它人發現。密碼學立場上的評估超出了這本書的范圍,並且涉及到復雜的數學。這一節中,我們會看一看如何使用 Kali 中便捷可用的工具來破解 WEP 加密。這包含整個 aircrack-ng 工具套件 -- airmon-ng , aireplay-ng , airomp-ng , aircrack-ng ,以及其它。
WEP 的基礎缺陷是使用 RC4 和短的 IV 值,每 224 幀復用。雖然這本身是個大數,但是每 5000 個封包中還是有 50% 的幾率重用四次。為了利用這個,我們嘗試大量流量,是我們增加重用 IV 的可能性,從而比較兩個使用相同密鑰和 IV 加密的密文。
讓我們首先在測試環境中建立 WEP,並且看看如何破解。
遵循以下指南來開始:
我們在環境中建立 WEP,並成功破解了 WEP 密鑰。為了完成它,我們首先等待正常客戶端連接到接入點。之後,我們使用 aireplay-ng 工具在網路上重放 ARP 封包。這會導致網路發送 ARP 重放封包,從而增加空中發送的數據封包數量。之後我們使用 aircrack-ng 工臘告具,通過分析數據風暴的密碼學缺陷來破解 WEP 密鑰。
要注意我們也能夠使用共享密鑰驗證繞過機制,來偽造接入點的驗證,這會在後面的章節褲攔中學到。如果正常客戶端離開了網路,這可以更方便一些。這會確保我們可以偽造驗證和關聯,並且繼續將重放封包發送到網路。
在之前的練習中,如果正常客戶端突然斷開了網路,我們就不能重放封包,因為接入點會拒絕接受來自未關聯客戶端的封包。
你的挑戰就是,使用即將在後面學到的共享密鑰繞過偽造驗證和授權,使你仍然能夠將封包注入到網路中,並驗證接入點是否接受和響應它們。
WPA 或者 WPA v1 主要使用 TKIP 加密演算法。TKIP 用於改進 WEP,不需要完全新的硬體來運行。反之,WPA2 必須使用 AES-CCMP 演算法來加密,這比 TKIP 更加強大和健壯。
WPA 和 WPA2 允許 基於 WAP 的驗證,使用基於 RADIUS 伺服器(企業)和預共享密鑰(PSK)(個人)的驗證模式。
WPA/WPA2 PSK 易受字典攻擊。攻擊所需的輸入是客戶端和接入點之間的四次 WPA 握手,以及包含常用口令的單詞列表。之後,使用例如 Aircrack-ng 的工具,我們可以嘗試破解 WPA/WPA2 PSK 口令。
四次握手的演示見下面:
WPA/WPA2 PSK 的原理是它導出了會話層面的密鑰,叫做成對臨時密鑰(PTK),使用預共享密鑰和五個其它參數 -- 網路 SSID、驗證者 Nounce (ANounce)、申請者 Nounce (SNounce)、驗證著 MAC 地址(接入點 MAC)、申請者 MAC 地址(WIFI 客戶端 MAC)。密鑰之後用於加密接入點和客戶端之間的所有數據。
通過嗅探空氣來竊取整個對話的攻擊者,可以獲得前面提到的全部五個參數。它唯一不能得到的東西就是預共享密鑰。所以,預共享密鑰如何創建?它由用戶提供的 WPA-PSK 口令以及 SSID 導出。這些東西的組合通過基於密碼的密鑰推導函數(PBKDF2)來發送,它的輸出是 256 位的共享密鑰。
在典型的 WPA/WPA2 PSK 字典攻擊中,攻擊者會使用可能口令的大量字典以及攻擊工具。工具會從每個口令中導出 256 位的預共享密鑰,並和其它參數(之前提到過)一起使用來創建 PTK。PTK 用於在握手包之一中驗證信息完整性檢查(MIC)。如果匹配,從字典中猜測的口令就正確,反之就不正確。
最後,如果授權網路的口令存在於字典中,它會被識別。這就是 WPA/WPA2 PSK 破解的工作原理。下面的圖展示涉及到的步驟:
下個練習中,我們會看一看如何破解 WPA PSK 無線網路。使用 CCMP(AES)的WPA2-PSK 網路的破解步驟與之相同。
遵循以下指南來開始:
我們在接入點上設置了 WPA-PSK,使用常見口令: abcdefgh 。之後我們使用解除驗證攻擊,讓正常客戶端重新連接到接入點。當我們重新連接時,我們捕獲了客戶端和接入點之間的 WPA 四次握手。
因為 WPA-PSK 易受字典攻擊,我們向 Aircrack-ng 輸入了包含 WPA 四次握手的捕獲文件,以及常見口令的列表(以單詞列表形式)。因為口令 abcdefgh 出現在單詞列表中, Aircrack-ng 就能夠破解 WPS-PSK 共享口令。要再次注意,在基於字典的 WPA 破解中,你的水平就等於你的字典。所以在你開始之前,編譯一個大型並且詳細的字典非常重要。通過 Kali 自帶的字典,有時候可能不夠,可能需要更多單詞,尤其是考慮位置因素。
Cowpatty 是個同樣使用字典攻擊來破解 WPA-PSK 口令的工具。這個工具在 Kali 中自帶。我將其留做練習,來讓你使用 Cowpatty 破解 WPA-PSK 口令。
同樣,設置不常見的口令,它不出現在你的字典中,並再次嘗試。你現在再破解口令就不會成功了,無論使用 Aircrack-ng 還是 Cowpatty。
要注意,可以對 WPA2-PSK 網路執行相同攻擊。我推薦你自己驗證一下。
我們在上一節中看到,如果我們在字典中擁有正確的口令,破解個人 WPA 每次都會像魔法一樣。所以,為什麼我們不創建一個大型的詳細字典,包含百萬個常見密碼和片語呢?這會幫助我們很多,並且多數情況都會最終破解出口令。這聽起來不錯,但是我們錯過了一個核心組件 -- 所花費的時間。更多需要 CPU 和時間的計算之一就是使用 PSK 口令和 SSID 通過 PSKDF2 的預共享密鑰。這個函數在輸出 256 位的與共享密鑰之前,計算超過 4096 次二者組合的哈希。破解的下一步就是使用這個密鑰以及四次握手中的參數來驗證握手中的 MIC。這一步計算了非常大。同樣,握手中的參數每次都會變化,於是這一步不能預先計算。所以,為了加速破解進程,我們需要使來自口令的與共享密鑰的計算盡可能快。
我們可以通過預先計算與共享密鑰,在 802.11 標准術語中也叫作成對主密鑰(PMK)來加速。要注意,因為 SSID 也用於計算 PMK,使用相同口令和不同 SSID,我們會得到不同的 PMK。所以,PMK 取決於口令和 SSID。
下個練習中,我們會看看如何預先計算 PMK,並將其用於 WPA/WPA2 的破解。
我們可以遵循以下步驟來開始:
我們查看了多種不同工具和技巧來加速 WPA/WPA2-PSK 破解。主要原理就是對給定的 SSID 和字典中的口令列表預計算 PMK。
在所有我們做過的聯系中,我們使用多種技巧破解了 WEP 和 WPA 密鑰。我們能拿這些信息做什麼呢?第一步就是使用密鑰解密我們捕獲的數據封包。
下一個練習中,我們會在相同的我們所捕獲的記錄文件中解密 WEP 和 WPA 封包,使用我們破解得到的密鑰。
遵循以下步驟來開始:
我們剛剛看到了如何使用 Airdecap-ng 解密 WEP 和 WPA/WPA2-PSK 加密封包。要注意,我們可以使用 Wireshark 做相同的事情。我們推薦你查閱 Wireshark 的文檔來探索如何用它來完成。
我們也可以在破解網路密鑰之後連接到授權網路。這在滲透測試過程中非常方便。使用破解的密鑰登錄授權網路,是你可以提供給客戶的證明網路不安全的證據。
遵循以下步驟來開始:
我們連接到了 WEP 網路。
遵循以下步驟來開始:
默認的 WIFI 工具 iwconfig 不能用於連接 WPA/WPA2 網路。實際上的工具是 WPA_Supplicant 。這個實驗中,我們看到如何使用它來連接 WPA 網路。
Q1 哪種封包用於封包重放?
Q2 WEP 什麼時候能被破解?
Q3 WPA 什麼時候能被破解?
這一章中,我們了解了 WLAN 加密。WEP 含有缺陷,無論 WEP 密鑰是什麼,使用足夠的數據封包就能破解 WEP。WPA/WPA2 在密碼學上不可破解;但是,在特殊的場景下,例如 WPA/WP2-PSK 中使用了弱口令,它就能夠通過字典攻擊來獲得口令。
下一章中我們會看一看 WLAN 設施上的不同工具,例如偽造接入點,邪惡雙生子,位反轉攻擊,以及其它。
❺ 怎麼用kali linux破wifi
首先在台式機上一定要有一個無線網卡,可以是插在主板上的無線網卡,也可以是USB介面的外置無線網卡,但是最好是Kali Linux支持的型號,不然驅動程序的問題很麻煩,X寶上有的賣。
再說Kali,Kali Linux上破解WIFI的工具非常全面,因為Kali有無線滲透測試的功能,但是系統性的學習還是挺麻煩的,一條條的調用命令破解步驟也比較繁瑣,非專業滲透測試人員推薦用一個Kali上面用於無線滲透測試的傻瓜型自動化腳本,那就是wifite。
wifite命令是用於無線滲透測試的自動化測試腳本,它是個python腳本,用於自動化調用kali上面的各種無線測試工具,像是reaver、aircrack-ng等。它會先嘗試PIN碼破解wifi,當無法用PIN碼破解時,會嘗試抓取wifi驗證握手包,然後用Kali上的字典進行握手包的暴力破解。PIN碼破解的時間一般比較短,握手包的暴力破解會用GPU來加速,破解的速度取決於主機的性能配置(還有密碼的復雜程度)。
wifite的使用方法:直接在終端輸入命令wifite,它會調用aircrack-ng打開網卡的監聽模式並掃描附近的無線網路並一一顯示出來,等它顯示一會兒後按下鍵盤上的Ctrl+C組合鍵,它會中斷對無線網的掃描並讓你選擇破解的目標網路,這時輸入要破解的網路的序號(注意是序號,是個數字)並按下回車,它就會自動進行破解工作,破解過程可能很長,也可能會失敗,等到破解完成會有相應的提示。
❻ Kali Linux 無線滲透測試入門指南 第二章 WLAN 和固有的不安全性
沒有什麼偉大的東西能在脆弱的基礎上構建。在我們的語境中,固有的不安全性之上不能構建出安全。
WLAN 在設計上擁有特定的不安全性,它們可被輕易利用,例如,通過封包注入,以及嗅探(能夠在很遠處進行)。我們會在這一章利用這些缺陷。
由於這本書處理無線方面的安全,我們假設你已經對寬歷蘆協議和封包的頭部有了基本的了解。沒有的話,或者你離開無線有很長時間了,現在是個好機會來回顧這個話題。
讓我們現在快速復習一些 WLAN 的基本概念,大多數你可能已經知道了。在 WLAN 中,通信以幀的方式進行,一幀會擁有下列頭部結構:
Frame Control 欄位本身擁有更復雜的結構:
類型欄位定義了下列三種 WLAN 幀:
我們在之後的章節中討論不同攻擊的時候,會討論這些幀中每一種的安全隱患。
我們現在看一看如何使用 Wireshark 嗅探無線網路上的這些幀。也有其他工具 -- 例如 Airomp-NG,Tcpmp,或者 Tshark -- 你同樣可以用於嗅探。我們在這本書中多數情況會使用 Wireshark,但是我們推薦你探索其它工具。第一步是創建監控模式的介面。這會為你的適配器創建介面,使我們可以讀取空域中的所有無線幀,無論它們的目標是不是我們。在有線的世界中,這通常叫做混合模式。
讓我們現在將無線網卡設為監控模式。
遵循下列指南來開始:
我們成功創建了叫做 mon0 的監控模式介面。這個介面用於嗅探空域中的無線封包。這個介面已經在我們的無線慎帶適配器中創建了。
可以創建多個監控模式的介面,使用相同的物理網卡。使用 airmon-ng 工具來看看如何完成。
太棒了!我們擁有了監控模式介面,等待從空域中讀取一些封包。所以讓我們開始吧。
下一個練習中,我們會使用 Wireshark 和剛剛創建的 mon0 監控器模式介面,從空域中嗅探封包。
遵循下列指南來開始:
觀察封包中不同的頭部欄位,並將它們和之前了解的 WLAN 幀類型以及子類型關聯。
我們剛剛從空域中嗅探了第一組封包。我們啟動了 Wireshark,它使用我們之前創建的監控模式介面 mon0 。通過查看 Wireshark 的底部區域,你應該注意到封包捕獲的速度以及目前為止捕獲的封包數量。
Wireshark 的記錄有時會令人生畏,即使在構成合理的無線網路中,你也會嗅探到數千個封包。所以深入到我們感興趣的封包十分重要。這可以通過使用 Wireshark 中的過濾器來完成。探索如何使用這些過濾器來識別記錄中唯一的無線設備 -- 接入點和無線客戶端。
如果你不能做到它,不要著急,它是我們下一個要學的東西。
現在我們學習如何使用 WIreshark 中的過濾器來查看管理、控制和數據幀。
請逐爛巧步遵循下列指南:
我們剛剛學習了如何在 Wireshark 中,使用多種過濾器表達式來過濾封包。這有助於監控來自我們感興趣的設備的所選封包,而不是嘗試分析空域中的所有封包。
同樣,我們也可以以純文本查看管理、控制和數據幀的封包頭部,它們並沒有加密。任何可以嗅探封包的人都可以閱讀這些頭部。要注意,黑客也可能修改任何這些封包並重新發送它們。協議並不能防止完整性或重放攻擊,這非常易於做到。我們會在之後的章節中看到一些這類攻擊。
你可以查閱 Wireshark 的手冊來了解更多可用的過濾器表達式,以及如何使用。嘗試玩轉多種過濾器組合,直到你對於深入到任何細節層級都擁有自信,即使在很多封包記錄中。
下個練習中,我們會勘察如何嗅探我們的接入點和無線客戶端之間傳輸的數
據封包。
這個練習中,我們會了解如何嗅探指定無線網路上的封包。出於簡單性的原因,我們會查看任何沒有加密的封包。
遵循下列指南來開始:
我們剛剛使用 WIreshark 和多種過濾器嗅探了空域中的數據。由於我們的接入點並沒有使用任何加密,我們能夠以純文本看到所有數據。這是重大的安全問題,因為如果使用了類似 WIreshark 的嗅探器,任何在接入點 RF 范圍內的人都可以看到所有封包。
使用 WIreshark 進一步分析數據封包。你會注意 DHCP 請求由客戶端生成,並且如果 DHCP 伺服器可用,它會返回地址。之後你會發現 ARP 封包和其它協議的封包。這樣來被動發現無線網路上的主機十分簡單。能夠看到封包記錄,並重構出無線主機上的應用如何和網路的其餘部分通信十分重要。Wireshark 所提供的有趣的特性之一,就是跟蹤流的能力。這允許你一起查看多個封包,它們是相同連接中的 TCP 數據交換。
此外,嘗試登陸 www.gmail.com 和其它流行站點並分析生成的數據流量。
我們會演示如何向無線網路中注入封包。
我們使用 aireplay-ng 工具來進行這個練習,它在 Kali 中自帶。
遵循下列指南來開始:
我們剛剛使用 aireplay-ng,成功向我們的測試環境網路注入了封包。要注意我們的網卡將這些任意的封包注入到網路中,而不需要真正連接到無線接入點 Wireless Lab 。
我們會在之後的章節中詳細了解封包注入。現在請探索一下 Aireplay-ng 工具用於注入封包的其它選項。你可以使用 Wireshark 監控空域來驗證注入是否成功。
WLAN 通常在三種不同頻率范圍內工作:2.4 GHz,3.6 GHz 和 4.9/5.0 GHz。並不是所有 WIFI 網卡都全部支持這三種范圍和相關的波段。例如,Alfa 網卡只支持 IEEE 802.11b/g。這就是說,這個網卡不能處理 802.11a/n。這里的關鍵是嗅探或注入特定波段的封包。你的 WIFI 網卡需要支持它。
另一個 WIFI 的有趣方面是,在每個這些波段中,都有多個頻道。要注意你的 WIFI 網卡在每個時間點上只能位於一個頻道。不能將網卡在同一時間調整為多個頻道。這就好比車上的收音機。任何給定時間你只能將其調整為一個可用的頻道。如果你打算聽到其它的東西,你需要修改頻道。WLAN 嗅探的原則相同。這會產生一個很重要的結論 -- 我們不能同時嗅探所有頻道,我們只能選擇我們感興趣的頻道。這就是說,如果我們感興趣的接入點的頻道是 1,我們需要將網卡設置為頻道 1。
雖然我們在上面強調了 WLAN 嗅探,注入的原則也相同。為了向特定頻道注入封包,我們需要將網卡調整為特定頻道。
讓我們現在做一些練習,設置網卡來制定頻道或進行頻道跳躍,設置規范域以及功率等級,以及其它。
仔細遵循以下步驟:
我們知道了,無線嗅探和封包注入依賴於硬體的支持。這即是說我們只能處理網卡支持的波段和頻道。此外,無線網卡每次只能位於一個頻道。這說明了我們只能一次嗅探或注入一個頻道。
WIFI 的復雜性到這里並沒有結束。每個國家都有自己的未授權的頻譜分配策略。這規定了允許的功率等級和頻譜的用戶。例如,FCC 規定,如果你在美國使用 WLAN,你就必須遵守這些規定。在一些國家,不遵守相關規定會收到懲罰。
現在讓我們看看如何尋找默認的規范設置,以及如何按需修改它們。
仔細遵循以下步驟:
每個國家都有用於未授權無線波段的自己的規范。當我們將規范域設置為特定國家時,我們的網卡會遵循允許的頻道和指定的功率等級。但是,嗅探網卡的規范域,來強制它工作在不允許的頻道上,以及在高於允許值的功率等級上傳輸數據相當容易。
查看你可以設置的多種參數,例如頻道、功率、規范域,以及其它。在 Kali 上使用 iw 命令集。這會讓你深刻了解在不同國家的時候如何配置網卡,以及修改網卡設置。
Q1 哪種幀類型負責在 WLAN 中的驗證?
Q2 使用 airmon-mg 在 wlan0 上創建的第二個監控器模式介面的名字是什麼?
Q3 用於在 Wireshark 中查看非信標的過濾器表達式是什麼?
這一章中,我們對 WLAN 協議進行了一些重要的觀察。
管理、控制和數據幀是未加密的,所以監控空域的人可以輕易讀取。要注意數據封包載荷可以使用加密來保護,使其更加機密。我們在下一章討論它們。
我們可以通過將網卡設置為監控模式來嗅探附近的整個空域。
由於管理和控制幀沒有完整性保護,使用例如 aireplay-ng 的工具通過監控或照舊重放它們來注入封包非常容易。
未加密的數據封包也可以被修改和重放到網路中。如果封包加密了,我們仍然可以照舊重放它們,因為 WLAN 設計上並沒有保護封包重放。
下一章中,我們會看一看用於 WLAN 的不同驗證機制,例如 MAC 過濾和共享驗證,以及其它。並且通過實際的演示來理解多種安全缺陷。