作者 Paul Ducklin
最新的注目訊息,是一個名稱令人印象深刻的錯誤 (它還有自己的標誌!),稱為 KRACK Attack。
實際上,在介紹 KRACK 的文章中還討論了幾個類似的攻擊,所以它們更常被稱為KRACK Attacks (複數)。
這些 KRACK 攻擊意味著大多數的加密 Wi-Fi 網路不像您想像的那樣安全。
KRACK 會攻擊使用 WPA 和 WPA2 加密的網路,這些加密技術現在被廣泛用於加密大多數使用中的無線存取點。
在您周遭 (至少在 Wi-F i範圍內) 的攻擊者理論上至少可以探查出部分發送到企業中某些電腦的加密流量。
即使攻擊者只能 “抽出” 少許的流量,但最終的結果可能非常嚴重。
(如果您記得 2010 年的 Firesheep 攻擊,當您連線到 Facebook 或 Twitter 時,這個攻擊就會入侵連線並擷取幾個位元組的資料,只要您保持登入狀態的話。)
KRACK 簡介
KRACK 是 Key Reinstallation Attack (金鑰重新安裝攻擊) 的縮寫,是一個有趣的名字,您可能會像我們剛聽到時一樣困惑。所以這裡我們只提供簡單的說明 (請注意這個介紹只包含類似攻擊的許多手法之一)。
在加密無線連線的不同時間點,您 (用戶端) 和存取點 (AP) 需要同意好使用的安全金鑰。
為此,將使用稱為 “四向交握” (four-way handshake) 的通訊協定,作法如下:
- (AP 到用戶端) 我們來決定一個雙方同意的工作階段金鑰吧。這裡會使用一次性隨機資料來幫助計算。
- (用戶端到 AP) 好的,這裡有一些我使用的一次性隨機資料。
此時,雙方可以將 Wi-Fi 網路密碼 (所謂的預共享金鑰或 PSK) 和兩個隨機資料塊混合在一起,以產生此工作階段的一次性金鑰。
這種作法可避免直接使用 PSK 加密無線資料,並確保每個工作階段都使用唯一的金鑰。
- (AP 到用戶端) 跟您確認我們雙方同意使用這些足夠資料來建立此工作階段的金鑰。
- (用戶端到 AP) 是的,我方同意。
KRACK 攻擊 (有許多變種) 會利用這樣的原理。儘管這種四向通訊協定被證明在數學上是可行的,但是在許多情況下實作起來可能不夠安全。
具體來說,攻擊者可以使用一個假裝是真正 AP 的網路號碼 (MAC 位址) 的惡意存取點來轉移訊息 4,並阻止其到達真正的 AP。
在交握的空檔,用戶端很可能已經開始與 AP 進行通訊,因為雙方已經擁有可以使用的工作階段金鑰 (儘管尚未完成交握)。
這意味著用戶端將已經開始利用稱為金鑰流 (keystream)的加密材料來加密其發送的資料。
為了確保金鑰流永遠不會重複,用戶端會使用工作階段金鑰加上一個隨機變數或「只用一次的數字」來加密每一個網路訊框;隨機變數在每個訊框之後會遞增,使得金鑰流每次都不同。
目前我們可以確定,所有的 KRACK 攻擊都是透過「倒帶」的加密設定取得重複使用的金鑰流資訊,以便利用相同的金鑰流加密不同的資料。如果您知道了一組資料,就能找出另一個 (這是最好的情況);有些情況比這更糟糕,因為您會使用一樣的方式處理連線的兩端。
回到交握
某些時候,真正的 AP 會再傳送一份訊息 3 (甚至可能好幾次),直到惡意 AP 終於讓訊息到達用戶端。
通訊協定中數學上的確定性,在實作時的加密作法卻馬馬虎虎。
用戶端最後完成交握,並透過「重新安裝」工作階段金鑰來重置金鑰流 (該攻擊命名的由來),並將隨機亂數重置為交握第 2 階段之後的數字。
這意味著金鑰流開始重複。在網路加密時重複使用金鑰流是一大禁忌。
如果您知道第一次加密時網路訊框的內容,則就可以復原用於加密的金鑰流;如果您擁有第一次網路訊框的金鑰流,就可以使用它來解密再次使用金鑰流時第二次被加密的訊框。
即使攻擊者只能在任何一個工作階段中復原幾個訊框的資料,他們仍能領先一步。
金箔聽起來不如金條那麼有價值,但如果收集了足夠的金箔,那麼最終可以得到相同的價值。
如何因應
變更 Wi-Fi 密碼不會有幫助,因為這種攻擊不會復原密碼 (PSK) 本身,而是允許攻擊者解密工作階段的某些內容。
變更路由器也不會有幫助,因為許多 KRACK Attacks 的變種都是攻擊大多數作業系統中的 Wi-Fi 軟體。
以下是您可以進行的操作:
- 在收到進一步通知之前,請如咖啡店一般對待所有的 Wi-Fi 網路:開放、未加密與無線。
- 堅持只造訪 HTTPS 網站,即使透過未加密的連線進行瀏覽,這些流量也會被加密。
- 考慮使用 VPN,這意味著加密您的所有網路流量 (不僅是網頁瀏覽),包含連線到家中或工作網路的筆記型電腦和行動裝置,即使它們會流經一個未加密的連線。
- 只要有用戶端 (和存取點),就應該套用 KRACK 修補程式。
- Sophos 客戶應閱讀知識庫文章 127658。
簡單地說,如果您使用開放式 Wi-Fi 存取點 (或 Wi-Fi 存取點的密碼是眾人皆知的,例如印在菜單上或由咖啡店提供),您就已經生活在一個任何人都可以隨意探查您的一些網路流量的世界。
此時的預防措施 – 為什麼不採用全部措施?
如果您總是以一種您可以選擇和控制的方式自行加密一切資料,就永遠不必擔心有什麼資料被遺漏了。
英文原文: https://nakedsecurity.sophos.com/2017/10/16/wi-fi-at-risk-from-krack-attacks-heres-what-to-do/
(本博文為翻譯本,內容以英文原文為準)