2017年10月23日 星期一

多個WIFI加密漏洞被揭露,幾乎影響了生活中大大小小的每件事


今天Wi-Fi的WPA2 加密協議中一整組嚴重的安全漏洞隨著利用漏洞概念的證明遭到揭露。

被用來交涉加密金鑰過程的中心弱點由用戶及接入點所使用—這些核心漏洞是Wi-Fi Protected Access WPA standard的一部分,所以即使是遵循WPA2規範的裝置,預計仍會受到影響。

個人及企業版的WPA都已受到感染,原版的WPA及WPA2同樣無法倖免。 

這些利用漏洞攻擊的主要方式是藉由用戶的裝置發動,但也有一些變體會影響某些接入點的使用功能。

作為一個快速刷新的WPA,人們為了連接使用WPA2的接入點而鍵入的密碼並不會被用來當作你的裝置與接入點交換網路流量的加密金鑰;然而,該密碼(技術上被稱作pre-shared key)將會被接入點用來認證該用戶的裝置並開始連結的交涉過程。

今天揭露的漏洞讓攻擊者可以從用來設定加密並確認使用哪一組金鑰的four-way handshake sequence下手,且不須擁有pre-shared key。

一旦連結完整建立,用戶與接入點通常會自pre-shared key衍生出新的加密金鑰。


802.11i Four-Way Handshake (圖片來源: Wikipedia)

該攻擊技術的概念證明稱為KRACK short for Key Reinstallation Attacks,聚焦於four-way handshake的第三步驟。

在第三步驟中,接入點傳送資訊至其金鑰交涉過程中已自行完成的用戶確認。

在收到訊息之後,用戶可以開始使用交涉金鑰並初始化向量來加密流量,最後用戶會傳送通知給接入點以完成handshake。

但這個假設建立在handshake過程中的四則訊息每則都能被成功收到的基礎上。

金鑰交涉過程必須允許無線電波干擾的可能性,故其允許接入點重新傳遞handshake第三步驟的訊息。

若攻擊者發送該訊息的複製版,用戶的裝置會被欺騙並回傳原始的加密金鑰並初始化用來開啟交流的向量。

用戶的下一組傳輸將與先前的傳輸使用相同的加密金鑰,就算該金鑰僅用於單次使用。

這允許了金鑰重用攻擊,雖然並非直接暴露基本的加密金鑰,但的確使其相對容易解密已經加密的資料,特別是當某物已經被得知訊息架構是使用同樣的加密金鑰的時候。

反過來說,IP packet headers正是提供該物的東西。

除了不會洩漏Wi-Fi pre-shared key或是four-way handshake交涉的per-session master key 外,KRACK這類的攻擊還可以為攻擊者蒐集足夠的資訊來駭入TCP connections並升級類似的攻擊行動。

若無線網路使用的是較舊的WPA-TKIP協定而非WPA2 AES-CCMP協定的話,攻擊者可能可以偽造並置入packet進入該無線網路,而非使用回收來的資訊這種較不直接的攻擊方法。

同時,使用short-range Wireless Gigabit (IEEE 802.11ad) 標準的新網路通常使用GCMP,  亦即用戶及接入點雙方使用相同授權金鑰的方法,所以KRACK攻擊可以讓每個裝置的傳出都被解密。

包括Android 6.0以上的Linux系統通常使用wpa_supplicant program。

這個WPA使用方式會在首次使用金鑰後將其從RAM中擦除,試圖防止金鑰被重複使用。

當其遭受KRACK攻擊後,wpa_supplicant把它的解密金鑰轉換成全部為零的一組數字而非原本的金鑰。

不幸的是,在感染KRACK的情形下,這項技術適得其反,產生一組已知且固定的金鑰,讓解密未來的傳輸變得太過簡單。

今天的揭露被記錄在多達十個CVE中,每個CVE都描述了在不同部分或模式的WPA上不同型態的重新安裝金鑰攻擊。

這意味著任何擁有完整功能的Wi-Fi運作方式在好幾個地方都可能需要補強。

幸運的是,這些重新安裝金鑰的漏洞全都可以在某個向下兼容的方式上得到修正,而Wi-Fi標準被預期會更新來對抗重新安裝金鑰的攻擊。

這一類漏洞在今年早些時候就被發現且相關研究者在七月就開始通知相關廠商。 

CERT在8月28日時向廠商發出了廣泛的通知。

OpenBSD已經修補好它們的WPA運行方式,而Aruba、Mikrotik以及Ubiquiti也在修補完成或準備修補的行列中。

正如同其他最近主要的安全漏洞,這項發現也被賦予令人記憶深刻的「品牌」及標誌:


這並非第一個主要影響Wi-Fi的安全缺口:原本的加密Wi-Fi標準名為Wired Equivalent Privacy (WEP),但之後被發現有許多可以快速且輕易破解加密的缺陷,完全名不符實。

Wi-Fi Protected Access (WPA)可以用軟體及固件升級的方式部署在大部分現存硬體上,而WPA2則有更多顯著的改變如從RC4 cipher轉移至AES等。

之前針對WPA2的攻擊依賴某種形式的密碼猜測,像是利用Wi-Fi Protected Setup (WPS) PINs等。

到目前為止,WPA中的four-way handshake過程被認為安全,而WPA2所使用的AES cipher也被認為是安全的 。

這也不是最近第一個被揭露的廣為流傳且影響一般網路基礎的安全漏洞。

在這個月早些時候,一個Google安全研究團隊將好幾個DNSMaq裡的漏洞公諸於世,DNS和DHCP伺服器主要由消費者級別的路由器使用。

這些bug的嚴重性從拒絕服務到遠端代碼執行,並影響DNS和DHCP的DNSMasq功能。

沒有留言: