破功確認!KRACK破解 WPA2 原理已公開,你家的無線路由器還安全嗎?

標題: 破功確認!KRACK破解 WPA2 原理已公開,你家的無線路由器還安全嗎?


作者: janus
發表時間: 2017-10-17 09:00:00

網路話題 新聞

描述: 我們昨天報導過,現在最被推薦用來作為一般家庭無線路由器使用的安全協議WPA2被發現有許多漏洞,而且也有研究者依此來發展出一種方法KRACK,經過實作測試驗證了可以快速竊取WIFI網路中的資料。那麼,你是不是該擔心呢?<p>現在一般家用的無線WiFi,你都會看到一些設定中提到關於無線網路協議要設定成WEP或是它的後繼者WPA2。這兩種安全協議都是由Wi-Fi聯盟所創造的,用來保護陌生人竊聽你正在用電腦透過無線網路存取什麼網站以及讀取什麼內容。</p> <p>WEP是在2003年因為安全性不夠,被WPA2所取代。而現在看來,WPA2也已經到了它生命的盡頭。根據研究者Mathy Vanhoef 在<a href="https://www.krackattacks.com/">他的網站所揭露</a>的,透過他稱之為KRACK( <strong>K</strong>ey <strong>R</strong>einstallation <strong>A</strong>tta<strong>ck</strong>s)的這種方法,WPA2不但抵擋不住中間人攻擊(在資料的發送以及接收端之間有人能夠監聽你的資料,暗中讀取甚至插入內容),甚至會讓Wi-Fi網路淪為勒贖攻擊或是被人用來在你的電腦中植入惡意程式碼。</p> <p>根據Mathy Vanhoef 的發現, KRACK 可以用來竊取你傳輸的敏感資料,像是信用卡帳號、密碼、即時通訊的訊息、EMAIL、照片...等等。</p> <p>&nbsp;</p> <h2>等等,WPA2不是之前就被破解過了嗎?怎麼現在又說被破解?</h2> <p>心網路安全的人或許會說,不是很久以前就說WPA2被破解過了,大家還不是都相安無事,現在怎麼又來一次?</p> <p>沒錯,之前的確有WPA2被破解的消息,但是那是因為路由器的WPS簡易連線功能出現安全漏洞,也叫做Pin碼破解,透過這種方式,可以解開WiFi密碼。不過只要使用者關閉WPS的功能,這個方法就沒用了。</p> <p>後來又有一種暴力破解法,可以透過字典檔或者是列出所有可能字元來進行。WPA 的密碼長度最小要求是 8 個字元,最長是 63 個字元。這種破解法需要運氣以及時間,但一樣作用是用來解開WiFi密碼。&nbsp;</p> <p>&nbsp;</p> <h2>KRACK:非竊取Wi-Fi密碼的駭客方式</h2> <p>之前的作法都是利用竊取Wi-Fi密碼的方式來破解,但是KRACK的方式不是這樣。</p> <p>要瞭解它的作法,我們要先知道WPA2安全協議的精髓,在於四步驟的handshake 握手過程,handshake 指的是讓溝通雙方可以相互確認彼此是否要進行傳輸、交換金鑰等等協商的過程,每協商一個步驟就「握手」一次,過程簡圖如下:</p> <p>&nbsp;</p> <p><img src="https://cdn2-techbang.pixfs.net/system/images/415782/original/a8e58ac8a80f544fa9be9a093e43a53a.png?1508177477" alt="" width="520" height="462" /></p> <p>你可以把STA想像成是家中的筆電、手機等要連接到無線網路的終端裝置,AP你可以想像成是授權端,也就是無線AP。而依照WPA2安全協議,雙方要進行連接到傳輸資料,必需要經過四次的「握手」過程:</p> <p style="padding-left: 30px;">第一步,AP會傳送一組初始化向量(nonce)給終端裝置。</p> <p style="padding-left: 30px;">第二步,終端裝置接到A的初始化向量,會產生另一個初始化向量發給AP,並且使用了名為 MIC(Message Integrity Code)的檢驗碼。</p> <p style="padding-left: 30px;">第三步,AP通知建構了一個512位元的一對一金鑰PTK(Pairwise Transient Key),通知終端裝置是否要使用這個PTK,並且帶有MIC(Message Integrity Code)的檢驗碼。</p> <p style="padding-left: 30px;">第四步,假設終端裝置要使用這個PTK,終端裝置就會安裝金鑰,然後傳送OK的回應給AP,結束握手的過程。</p> <p>&nbsp;</p> <h2>怎麼破解的呢?</h2> <p>KRACK的構想是,在4次 handshake 的過程中,其中在第三次handshake的時候,裝置會安裝AP所分配的金鑰,當安裝了這個金鑰後,他就會根據這個金鑰來透過加密協議去加密資料封包。不過,他們發現的漏洞是,當初在設計這個架構時,因為資料會有可能遺失,也就不會發生第四次的 handshake,當發生這種狀況時,由於AP沒有收到裝置正確的回應,它就會重複前一步驟,也就是重複執行步驟三,一再地傳送金鑰給終端裝置,而裝置收到金鑰之後就會安裝,也因此就會一再重複安裝相同的加密金鑰。</p> <p>值得注意的是,KRACK攻擊並不是去破解了加密金鑰,而4次 handshake 的理論在安全上也沒有問題,只是現今的實際過程中,並沒有定義何時終端裝置要安裝加密金鑰,這就是研究者找到的漏洞,因此,這也就意味著金鑰可以被重複安裝很多次。當裝置多次重複安裝相同的加密金鑰,使得傳輸封包的解密變為可能,因此稱之為 <strong>K</strong>ey <strong>R</strong>einstallation <strong>A</strong>tta<strong>ck</strong>s。</p> <p>不過,要實現KRACK攻擊,攻擊者必須要距離路由器的訊號非常近,近到可以連接到這台路由器上。也就是說,這個攻擊者必須要在你家無線網路的有效覆蓋範圍內。</p> <p>根據 Vanhoef表示,使用Android以及Linux裝置的使用者處境特別危險,因為目前這些裝置都還有「All-zero encryption key」的安全漏洞。他建議Android使用者應該要暫時關閉WiF功能等待廠商推出安全更新。下面就是利用安全漏洞攻擊Android裝置的影片。</p> <p><iframe src="https://www.youtube.com/embed/Oh4WURZoR98" width="560" height="315" frameborder="0" allowfullscreen="allowfullscreen"></iframe></p> <p>&nbsp;</p> <h2>聽起來好像很嚴重,那麼有好消息嗎?</h2> <p>WiFi聯盟已經確認了KRACK攻擊的可行性,不過他們也有提出相對應的辦法。</p> <p>首先,<a href="https://forum.mikrotik.com/viewtopic.php?f=21&amp;t=126695">安全更新檔</a>已經在進行了。根據WiFi聯盟表示,這個問題可以透過軟體更新來解決,而且廠商已經準備好開始推送更新檔了。</p> <p>其次,你的電腦到網站之間透過WPA2的傳輸雖然可能外洩,但是如果是瀏覽HTTPS的網站,依然是安全的。</p> <p>第三,由於要使用這種方法,對方必須要距離你的路由器很近,因此,這段時間,請把路由器保護好,至少不要暴露在公眾之下。</p> <p>參考資料:<a href="https://gizmodo.com/dont-panic-but-wi-fis-main-security-protocol-has-been-1819501001">gizmodo</a>、<a href="https://www.krackattacks.com/">krackattacks</a></p><a href="http://www.facebook.com/TKbang">加入T客邦Facebook粉絲團</a><img src="http://feeds.feedburner.com/~r/techbang/~4/u-6fOqvgLZo" height="1" width="1" alt=""/>
時間分享(原讚與享)評論回應(讚與心情)外掛評論
2017-10-17 10:01:25111130
2017-10-17 10:11:21121430
2017-10-17 11:37:5457122340
2017-10-17 12:03:5169132720
2017-10-17 12:14:1172142830
2017-10-17 13:34:49108284360
2017-10-17 15:01:35138445410
2017-10-17 16:31:35166576180
2017-10-17 17:05:18172616500
2017-10-17 18:33:06193737180
2017-10-17 20:04:45203808050
2017-10-17 21:32:02217908820
2017-10-17 23:02:082361029650
2017-10-18 00:31:4525112010990
2017-10-18 01:34:4926312011500
2017-10-18 03:01:4626612111760
2017-10-18 04:05:3626912211900
2017-10-18 05:33:1027012212020
2017-10-21 10:09:4537817417920
2018-02-08 11:37:5239917918720