服役13年,你家無線路由器用的 WPA2加密協議可能已被攻破,全球WiFi安全性將面臨重大考驗
在全球家庭WiFi網路中普遍被使用的 WPA2 加密協議,發展至今已經差不多有 13 年了,一直是被建議選用加密的首選,不過,現在這個加密協議已經由專家宣佈可能被破解了,這意味著只要在你家中的WiFi覆蓋範圍內所串流的資料,都有可能被破解。
有安全研究人員發佈他們在 WPA2 加密協議上發現了多起漏洞,並且透過這些漏洞的組合,他們發表了一個概念驗證攻擊 KRACK(代表 Key Reinstallation Attacks),並在 Github 設立了一個入口,並建立了一個網站 krackattacks.com,但目前這些尚未正式公開和上線。
WPA2 加密協議在WiFi網路中的作用,是讓資料封包在無線網路傳送的時候,透過加密讓其它人就算是攔截了封包,因為無法解密也無法解析讀到裡面的資料。因此,如果WPA2加密協議真的被破解的話,這就表示任何人只要在你的WiFi覆蓋範圍,都可以知道你現在在網路上進行的活動,甚至是你與其它人LINE、FB上傳的訊息,你在網站上輸入了什麼內容。
我們近期發現了多項 WPA2 安全認證的關鍵管理漏洞,KRACK 的影響內容包含解密、封包重送、TCP 連結綁架、HTTP 內容注入等等。值得注意的地方是,由於這是一起安全協議等級的事件,大部分的安全標準都將有可能被影響。CERT/CC 以及研究人員 KU Leuven 將會在今天稍晚推出 KRACK 事件的詳細內容。
如果 KRACK 的安全漏洞確實存在的話,現行的安全標準無法馬上更新,有些甚至可能根本不會更新,因此,這次發現的漏洞的潛在風險可能非常大。
不過,由於有心人士可以讀取的是透過WPA2加密的內容,如果你使用的通訊工具或是其它軟體也有加密功能的話,還是可以確保資料的安全。比方說LINE在傳訊的時候,也有進階的加密模式,在這種情況下,駭客就算解開了WPA2的加密,依然無法讀取你的內容。
目前對於 KRACK 的資訊還不夠,因此,還無法確定 Wi-Fi 網路被綁架或竊聽的容易度,不過晚點krackattacks.com 的研究人員應該就會提出更多相關內容,而正式的內容介紹則會在 11 月 1 日時於達拉斯舉辦的論壇議程:《Key Reinstallation Attacks: Forcing Nonce Reuse in WPA2) 上公開。
破功確認!KRACK破解 WPA2 原理已公開,你家的無線路由器還安全嗎?
現在最被推薦用來作為一般家庭無線路由器使用的安全協議WPA2被發現有許多漏洞,而且也有研究者依此來發展出一種方法KRACK,經過實作測試驗證了可以快速竊取WIFI網路中的資料。那麼,你是不是該擔心呢?
現在一般家用的無線WiFi,你都會看到一些設定中提到關於無線網路協議要設定成WEP或是它的後繼者WPA2。這兩種安全協議都是由Wi-Fi聯盟所創造的,用來保護陌生人竊聽你正在用電腦透過無線網路存取什麼網站以及讀取什麼內容。
WEP是在2003年因為安全性不夠,被WPA2所取代。而現在看來,WPA2也已經到了它生命的盡頭。根據研究者Mathy Vanhoef 在他的網站所揭露的,透過他稱之為KRACK( Key Reinstallation Attacks)的這種方法,WPA2不但抵擋不住中間人攻擊(在資料的發送以及接收端之間有人能夠監聽你的資料,暗中讀取甚至插入內容),甚至會讓Wi-Fi網路淪為勒贖攻擊或是被人用來在你的電腦中植入惡意程式碼。
根據Mathy Vanhoef 的發現, KRACK 可以用來竊取你傳輸的敏感資料,像是信用卡帳號、密碼、即時通訊的訊息、EMAIL、照片...等等。
等等,WPA2不是之前就被破解過了嗎?怎麼現在又說被破解?
關心網路安全的人或許會說,不是很久以前就說WPA2被破解過了,大家還不是都相安無事,現在怎麼又來一次?
沒錯,之前的確有WPA2被破解的消息,但是那是因為路由器的WPS簡易連線功能出現安全漏洞,也叫做Pin碼破解,透過這種方式,可以解開WiFi密碼。不過只要使用者關閉WPS的功能,這個方法就沒用了。
後來又有一種暴力破解法,可以透過字典檔或者是列出所有可能字元來進行。WPA 的密碼長度最小要求是 8 個字元,最長是 63 個字元。這種破解法需要運氣以及時間,但一樣作用是用來解開WiFi密碼。
KRACK:非竊取Wi-Fi密碼的駭客方式
之前的作法都是利用竊取Wi-Fi密碼的方式來破解,但是KRACK的方式不是這樣。
要瞭解它的作法,我們要先知道WPA2安全協議的精髓,在於四步驟的handshake 握手過程,handshake 指的是讓溝通雙方可以相互確認彼此是否要進行傳輸、交換金鑰等等協商的過程,每協商一個步驟就「握手」一次
你可以把STA想像成是家中的筆電、手機等要連接到無線網路的終端裝置,AP你可以想像成是授權端,也就是無線AP。而依照WPA2安全協議,雙方要進行連接到傳輸資料,必需要經過四次的「握手」過程:
第一步,AP會傳送一組初始化向量(nonce)給終端裝置。
第二步,終端裝置接到A的初始化向量,會產生另一個初始化向量發給AP,並且使用了名為 MIC(Message Integrity Code)的檢驗碼。
第三步,AP通知建構了一個512位元的一對一金鑰PTK(Pairwise Transient Key),通知終端裝置是否要使用這個PTK,並且帶有MIC(Message Integrity Code)的檢驗碼。
第四步,假設終端裝置要使用這個PTK,終端裝置就會安裝金鑰,然後傳送OK的回應給AP,結束握手的過程。
怎麼破解的呢?
KRACK的構想是,在4次 handshake 的過程中,其中在第三次handshake的時候,裝置會安裝AP所分配的金鑰,當安裝了這個金鑰後,他就會根據這個金鑰來透過加密協議去加密資料封包。不過,當初在設計這個架構時,因為資料會有可能遺失,也就不會發生第四次的 handshake,當發生這種狀況時,由於AP沒有收到裝置正確的回應,它就會重複前一步驟,也就是重複執行步驟三,一再地傳送金鑰給終端裝置,而裝置收到金鑰之後就會安裝,也因此就會一再重複安裝相同的加密金鑰。
值得注意的是,KRACK攻擊並不是去破解了加密金鑰,而4次 handshake 的理論在安全上也沒有問題,只是現今的實際過程中,並沒有定義何時終端裝置要安裝加密金鑰,這就是研究者找到的漏洞,因此,這也就意味著金鑰可以被重複安裝很多次。當裝置多次重複安裝相同的加密金鑰,就會使得初始向量被重置,透過比對使得傳輸封包的解密變為可能,因此稱之為 Key Reinstallation Attacks。
不過,要實現KRACK攻擊,攻擊者必須要距離路由器的訊號非常近,近到可以連接到這台路由器上。也就是說,這個攻擊者必須要在你家無線網路的有效覆蓋範圍內。
根據 Vanhoef表示,使用Android以及Linux裝置的使用者處境特別危險,因為目前這些裝置都還有「All-zero encryption key」的安全漏洞。他建議Android使用者應該要暫時關閉WiF功能等待廠商推出安全更新。下面就是利用安全漏洞攻擊Android裝置的影片。
聽起來好像很嚴重,那麼有好消息嗎?
WiFi聯盟已經確認了KRACK攻擊的可行性,不過他們也有提出相對應的辦法。
首先,安全更新檔已經在進行了。根據WiFi聯盟表示,這個問題可以透過軟體更新來解決,而且廠商已經準備好開始推送更新檔了。
其次,你的電腦到網站之間透過WPA2的傳輸雖然可能外洩,但是如果是瀏覽HTTPS的網站,依然是安全的。
第三,由於要使用這種方法,對方必須要距離你的路由器很近,因此,這段時間,請把路由器保護好,至少不要暴露在公眾之下。
