關於KRACKs破解WPA2的方式,攻擊者需要先靠近有漏洞的無線AP網路訊號範圍內,等終端裝置要接入時攻擊,雖不影響已連上該AP的裝置,但在多個無線AP移動切換時仍會遭攻擊。因為此WPA2弱點,是在建立初始連線的四向交握階段,攻擊者以密鑰重裝方式破解

日,無線網路加密通訊協定WPA2漏洞曝光,讓全球Wi-Fi加密連線都面臨高風險,這是比利時KU Leuven大學資安研究員Mathy Vanhoef,在今年5月時發現的一系列漏洞,他並設計了密鑰重安裝攻擊(Key Reinstallation Attacks,KRACKs)的概念驗證攻擊程式。

從無線網路標準加密標準來看,現今的Wi-Fi無線網路,為達到安全需求,普遍利用的是WEP、WPA與WPA2這三種。其中,WEP是最早被公認為最不安全的,這是因為初始設計上有許多嚴重的弱點,即便沒有相關資訊專業知識的人,也容易取得工具程式,就可能在短時間內加以破解。

所以多數廠商建議是,不要使用WEP加密,最好使用相對較安全的WPA2,因為這對於破解密碼的人來說難度更高。也因此,目前大多數裝置和Wi-Fi路由器,都依賴WPA2來加密Wi-Fi流量。

儘管過去也傳出不少WPA2被破解的消息,像是利用WPS漏洞或暴力密碼破解方式。這次的不同之處在於,是首次不依靠竊取密碼的攻擊手段,直接針對存在14年來的WPA2協定本身弱點攻擊,從終端裝置接入Wi-Fi進行連線交握的階段下手。

就像近期網路上一份由js@chroot.org製作、對此資安事件的簡報,也點出了成功的攻擊概念不只是竊取密碼,還有「非常多旁敲側擊的手段。」

KRACKs是如何破解WPA2?

從原理來看,依據WPA 2無線網路加密的通訊協定,當終端裝置接入Wi-Fi時,在正式傳輸資料前,必須先經過四向交握(four-way handshake)這個階段,也就是要先經過四次溝通,以建立初始連線,以相互確認彼此確認並產生所需金鑰,達成連線協議。而KRACKs攻擊就是利用此階段的邏輯缺陷,發現一系列漏洞。

什麼是四向交握?簡單說明它的溝通過程,主要角色可以分成Supplicant與Authenticator,前者請求端像是筆電、手機等終端裝置,後者認證端是無線AP。以簡單的一種KRACKs攻擊為例:

第一步,由無線AP端先開始,傳送一組Anonce給終端裝置,讓裝置端能有產生成對臨時密鑰PTK(Pairwise Transient Key)的元素。

第二步,終端裝置收到後,已有足夠資訊組成PTK,會回送另一組Snonce給AP端,並附上檢查碼MIC。

第三步,AP端通知產生PTK密鑰,並將群組臨時密鑰GTK(Group Temporal Key)發送給終端裝置,同時也附上另一組MIC檢驗碼。

第四步,接下來終端裝置會安裝密鑰,並發送確認回應給AP端。不過,在KRACKs的攻擊方式與過程中,當AP端沒有收到裝置確認的回應時,將會重複前面的第三步,再次發送訊息給終端裝置。如此一來,終端裝置又會收到新的通知,迫使重新安裝一個已經在使用的PTK密鑰,這就是問題所在。

根據Mathy Vanhoef目前所接露的資訊來看,簡單來說,KRACKs攻擊並沒有利用此漏洞來竊取Wi-Fi密碼,而四向交握的安全也沒問題,但由於密鑰可以重複安裝許多次,進而導致重置加密協議使用的隨機數與封包序號計數器歸零,攻擊者透過重播來解密封包,或是插入竄改通訊內容。

各系統都有遭到攻擊的可能性

KRACKs攻擊的出現,已經暗示著一個問題,如果搭配各式攻擊手法,甚至可以竄改、偽造傳輸的資料。

據了解,攻擊者只要在有漏洞的AP或終端Wi-Fi網路訊號範圍內,就可發動攻擊,攻擊者將可攔截往來於裝置終端與無線AP之間連線上的明碼資料,或是注入封包或HTTP內容,甚至有可能導致TCP劫持等攻擊。

而在Mathy Vanhoef展示的驗證過程影片中,也示範了一種情況,在KRACKs攻擊過中,是透過網路封包分析軟體WireShark,並偽造與真實AP相同SSID無線網路名稱與MAC Address的熱點,在終端裝置要與真實AP完成認證之際,透過中間人攻擊與KRACKs的攻擊方法,迫使終端設備主動連接偽冒的SSID,竊取終端裝置連至交友網站時,輸入的帳號與密碼。

值得一提的是,從Mathy Vanhoef的驗證結果顯示,使用wpa_supplicant 2.4及2.5版本的Android與Linux裝置,最容易被攻擊成功,因為一旦執行安裝密鑰後,就會從記憶體中清除加密密鑰,導致重新安裝過程,會從記憶體中取出被0覆蓋的key值,導致裝置端變成安裝了數值全為0的密鑰。

另外,Mathy Vanhoef也提到還有相似的弱點,與KRACKs相關的CVE通報漏洞多達10個,像是iOS 10.3.1與Windows 7/10系統,雖然在四向交握的過程中,並不會接收AP重傳第三步(這違反了802.11標準),因此沒有影響。不過,在Group Key Handshake與802.11r的Fast BSS Transition (FT) handshak的過程中,仍然可以被攻擊。

雖然這次攻擊目標是終端裝置,不是無線AP,但產品如提供Repeater、Bridge、WDS等功能的也同樣要注意。

Mathy Vanhoef並提醒,儘管有些攻擊看來很難在現實環境中發生,但不要因為這是特殊情形,就誤解KRACKs攻擊不可能在現實中出現。

最後,這種破解WPA2的方式,現在已經成功驗證,是企業與使用者必須認識到的一點。雖然,這個漏洞可以靠軟體更新加以修補,我們也看到網通、作業系統廠商陸續釋出相關軟體更新。但還有許多問題待釐清,像是許多產品真能順利修補嗎?在手機、筆電之外,還有像是印表機、智慧家電,甚至是支援WPA2的Wi-Fi記憶卡。

另一方面,由於是WPA2協定本身的弱點,各廠商是否真能妥善修補,像是確保加密金鑰只能在裝置上被安裝一次就夠嗎?後續又如何去驗證修補,這些問題都有待後續觀察。

快速瞭繳四向交握與KRACKs攻擊原理

四向交握(4-way Handshak)基本原理

要瞭解KRACKs攻擊WPA2的方式,可以先從終端裝置接入Wi-Fi時,準備建立初始連線所經過的四向交握(four-way handshake)過程來看。一般流程就是經過四次溝通,以相互確認彼此確認並產生所需金鑰,達成連線協議。(圖片來源/維基百科)

KRACKs利用四向交握攻擊原理

而在KRACKs的基本攻擊手法中,就是最後階段AP端無法正確收到裝置端的回應時,因此不斷發送第三步通知,迫使終端裝置重複安裝一個已經再使用的密鑰,進而導致重置加密協議使用的隨機數與封包序號計數器歸零,攻擊者可進一步重播來解密封包,或是插入竄改通訊內容。(圖片來源/Mathy Vanhoef)

熱門新聞

Advertisement