0
| 本文作者: 郭佳 | 2017-10-18 15:09 |
雷鋒網編者按:本周,關于“最強 Wi-Fi 漏洞影響所有設備”的新聞賺足了安全圈的眼球,各路安全研究員第一時間對 WPA2 協議漏洞產生原因以及如何應對進行了研究,本文的研究團隊針對企業安全,提出了利用WIPS產品,來幫助抵御 KRACK 攻擊等無線安全攻擊威脅。本文為360天馬安全團隊 & 360天巡實驗室的投稿,雷鋒網在不改變作者原意的基礎上進行了編輯整理。
作者:360天馬安全團隊 & 360天巡實驗室
近日,有安全研究員披露 WPA2 協議層中存在邏輯缺陷,幾乎所有支持 Wi-Fi 的設備都面臨威脅,其傳輸的數據存在被嗅探、篡改的風險。攻擊者可獲取 Wi-Fi 網絡中的數據信息,如信用卡、郵件、賬號、照片等,危害巨大。對于用戶而言,應該關注設備廠商安全公告,及時更新修補漏洞。而對于企業而言,除了督促員工盡快更新設備外,還可以利用 WIPS 產品來幫助抵御 KRACK 攻擊等無線安全攻擊威脅,保護企業內部的 WiFI 設備安全。
本文將以KRACK攻擊為例,介紹 WIPS 產品為何能快速支持 KRACK 攻擊檢測并進行防御,雷鋒網進行了編輯整理。
WIPS(無線入侵防御系統)是針對企業無線應用環境的安全威脅發現與防護系統,通過將無線通信技術、無線攻防、數據分析與挖掘等技術相結合,確保企業的無線網絡邊界安全、可控。
較為出名的 WAIDPS,便是一款由 Python 編寫的無線入侵檢測工具,基于Linux平臺,完全開源。它可以探測包括 WEP/WPA/WPS 在內的無線入侵&攻擊方式,并可以收集周邊WiFi相關的所有信息。 
1.WIPS(無線入侵防御系統)基本架構
WIPS 通常采用采用 B/S 或者 C/S 架構,收發引擎分布式部署在企業辦公環境中,將收集到的熱點信息傳給中控服務器。管理員通過通過管理平臺查看企業內部熱點信息,對捕獲到的攻擊行為進行告警,并對惡意、違規的熱點進行阻斷。 
2.基本功能
利用 WIPS 產品可以查看并管理企業內可信熱點、未知熱點;識別并告警可疑攻擊行為;快速響應 WiFi攻擊及威脅事件。能夠有效防止惡意熱點、未知及外部熱點、偽造熱點、未授權移動終端等可能帶來的安全隱患,從而保護企業的無線網絡安全。

分布式部署在企業辦公環境中的收發引擎將會回收整個區域內所有 802.11 原始數據并進行分析識別,如:
● 熱點、客戶端識別
■ 回收熱點、客戶端BSSID、ESSID、PWR、OUI & Loc等信息。
■ 判斷并標記惡意熱點、未授權熱點、錯誤配置熱點(弱密碼、有漏洞的加密協議)。
■ 發現客戶端未授權連接。
■ ..
● 攻擊行為識別
■ 檢測MDK3去認證攻擊
■ 檢測偽造合法熱點攻擊
■ 檢測偽造MAC地址攻擊
■ 檢測Aircrack-NG無線破解攻擊
■ ..
3.無線攻擊識別規則
由于后文對 KRACK 攻擊的檢測方法涉及檢測偽造熱點,此處便以此為例進行說明。
偽造熱點攻擊(Evil-Twin)是眾多無線攻擊方法中,成本較低、效果較好的一種,因此及時地發現并阻斷釣魚熱點是非常必要的。常見的偽造熱點攻擊檢測方法有:熱點常規信息檢測、登錄憑證驗證檢測、時鐘偏差檢測等方式。
● 常規信息檢測
利用目標 AP 的 Beacon、Interval、SSID、Channel 及其他無線信息進行比較得出判斷。
● 憑證驗證檢測
利用 AP 登記保存的憑證信息向目標設備發起連接,若成功再用錯誤密碼嘗試連接,若提示錯誤則證明是合法熱點。
● 時鐘偏差檢測等方式
通過計算兩個相鄰信標幀之間的 timestamp 間隔差異,即時鐘偏差,與預先設定的閾值進行比較來檢測偽 AP。如果 AP 的時鐘偏差值與特征庫中儲存的偏差值不一樣,則可認定這個 AP 為一個無線釣魚 AP。 
▲如上圖就是一個 Python 利用 Scapy 模塊以實現通過時鐘偏差檢測識別釣魚熱點的示例
本次的 WPA2“密鑰重裝攻擊”,基本原理為:利用 WPA 協議層中的邏輯缺陷,多次重傳握手過程中的消息3從而導致重放隨機數和重播計數器,為攻擊者提供了利用條件。
在協議標準中還存在一條危險的注釋“一旦安裝后,就可從內存中清除加密密鑰”,若按此注釋進行實現,在密鑰重裝攻擊時會從內存中取回已經被0覆蓋的 key 值,從而導致客戶端安裝了值全為零的秘鑰。而使用了含漏洞 wpa_supplicant 版本的 Linux 及 Android 設備便因此遭受嚴重威脅。
1.KRACK攻擊利用方式(攻擊視頻分析)
①首先測試設備連接真實的 testnetwork 網絡↓↓↓
②開啟 WireShark 監聽并在稍后被設為釣魚熱點的網卡↓↓↓
③攻擊演示:
真實熱點 Real AP:
SSID:testnetwork
Mac:bc:ae:c5:88:8c:20
Channel:6
被攻擊客戶端 Target:
SSID: 90:18:7c:6e:6b:20
偽造同名同 MAC 熱點(Rouge AP):
SSID: testnetwork
Mac:bc:ae:c5:88:8c:20
Channel:1(信道不同)

▲注入CSA beacon pairs 將客戶端信道變為1,也就是迫使客戶端Target與Rouge AP通信。偽AP向目標Target發送Disassociate數據包,使其解除關聯。
④利用網卡建立目標 AP 的偽造熱點,迫使客戶端連接到偽造熱點上。此時設備經歷重連,WiFI 狀態為正在認證。
當目標 targe 與真實 AP 完成認證過程,準備發起連接時,注入CSA beacon pairs,使信道切換到 Channel 1 實施中間人攻擊,同時客戶端狀態保持在 State 2,接下來開始發送四次握手中的 Message 3,實施密鑰重新安裝(Key Reinstallation Attack)攻擊。


⑤此時密鑰重裝攻擊已經執行成功,客戶端已連接上偽造熱點: 
⑥在此偽造熱點中,被攻擊端所有流量皆可被嗅探、篡改;演示視頻中使用經典的 MITM 工具 sslstrip 對 HTTPS 進行降級,便可獲取用戶傳輸的明文賬號信息。


⑦用戶提交的賬號信息便可被獲取:

2.檢測KRACK的幾種途徑
之前有講到 KRACK 的攻擊原理,根據現有 KRACK 的 Demo 來看,攻擊者的主要利用方式為:在被攻擊客戶端與正常AP建立連接時,攻擊代碼(POC)“克隆”了被攻擊客戶端所連接的AP,建立了一個相同 BSSID、ESSID,但 Channel 不同的熱點;通過發送 Disassociate Frame 迫使被攻擊客戶端解除關聯,此時設備經歷重連;準備重新與正常AP發起連接時,注入CSA beacon pairs(Channel Switch Announcement),使信道切換到惡意AP所在信道,實施中間人攻擊;同時客戶端狀態保持在State 2(通過對訪問點進行身份驗證的身份驗證狀態),接下來開始發送四次握手中的Message 3,實施密鑰重新安裝(Key Reinstallation Attack)攻擊,即可與偽AP建立正常連接通信。


根據以上攻擊流程,我們分析便得出 KRACK 現有的攻擊方式特征,并能據此添加對 KRACK 攻擊進行檢測:

1. 建立同 ESSID、BSSID 但不同Channel 的 Rouge AP;
2. 向客戶端發送異常 Deauth/Disassociate Frame;
3. 重新發送四次握手中的 message3 強制重置 nonce,相同IV;
4. Sequence Number 和 Timestamp 亂序;
5. Client 在建立握手的時候切換 Channel;
作為使用 WPA2 協議設備的用戶來說,官方的解決方案是等待協議漏洞的修復與廠家設備的升級。在企業環境中,能否將無線防護的主動權掌握在自己手中呢。安全專家的建議是企業應合理部署WIPS,但是WIPS能否抵御這種突如其來的無線安全威脅呢?
在詳細分析了黑客的攻擊過程后,天巡實驗室準備進行一場紅黑對抗,一組扮演黑客模擬相同的攻擊手段進行無線攻擊;另一組實驗人員扮演企業管理員進行無線防護,同時在實驗環境內部署 WIPS,測試 WIPS的防御效果。
1. 首先建立 testnetwork 熱點,企業用戶連接該熱點并通過認證后可訪問企業內網資源;通過WIPS管理員可直觀了解該熱點的設備屬性和安全屬性,包括熱點 ESSID、BSSID、熱點廠商、頻道和加密方式等等。 
2. 然后黑客偽造與 testnetwork 相同名稱及配置的熱點,嘗試欺騙用戶連接;此時企業無線網絡環境中同時出現了兩個熱點,非專業人員根本無法識別哪個是企業自建熱點,哪個是非法的釣魚熱點。可以看到此時非法熱點已經被 WIPS 識別出來并阻斷,當前連接終端數為“無”。 
3. 與此同時 WIPS 也第一時間向管理員通報偽造合法熱點攻擊事件的發生及處理情況。WIPS 的及時響應為管理員在突發情況發生時爭取了更多的處置時間。 
4. 黑客為了使其他終端連接非法熱點簡直無所不用其極,泛洪終端拒絕服務攻擊是成本最低也是最見效的方式。該種攻擊方式可斷開所有終端與合法熱點的連接,在其他場景也可以干擾公共網絡終端與熱點的連接,造成網絡癱瘓。此時 WIPS 系統能夠發現此類攻擊,在提供處理建議的同時,還能定位攻擊發生的具體位置,管理員可實地排查是否有可疑人員。

5. 可以說黑客的攻擊行蹤已經完全暴露在 WIPS 之下,原本看不見摸不著的無線威脅,透過 WIPS 的映射逐漸變得清晰。還不知道發生了什么的黑客繼續他的攻擊,黑客通過收集和重放重新發送四次握手中的Message3 強制重置 nonce,從而成功攻擊加密協議,解密客戶端發送通信數據包,截獲敏感信息。但是此時WIPS系統已經監測到該攻擊,并對實施釣魚的熱點進行了阻斷,使不知情的“用戶”免于威脅。 
雷峰網原創文章,未經授權禁止轉載。詳情見轉載須知。