Caution
이 글은 WPA2 취약점으로 알려진 KRACK(Key Reinstallation Attack)에 관한 글 입니다. 정확한 모든 내용을 담고있지 않습니다.
KRACK
Key Reinstallation AttaCK
Mathy Vanhoef(@vanhoefm)가 KRACK이라 명명한 WPA2 취약점을 공개하는 것으로 보인다. 프로토콜 알고리즘에서 사용하는 Nonce값을 재사용하도록 강제하면서 발생할 수 있는 취약점이라고 한다. Kenn White에 따르면, WPA2의 프로토콜 레벨에서의 취약점이라고 하는데, 이 공격을 통해 WIFI decrypt, connection hijacking, content injection이 가능하다.
KRACKATTACKs.com 페이지가 열리면서 자세한 내용이 함께 공개되었다. 소개영상 및 Paper 등도 함께 올라와 있으니 자세한 내용이 필요하다면 가서 확인해보는 것이 좋겠다.
Mathy Vanhoef가 업로드한 KRACK 동영상을 보자.
Introduction
오늘 공개된 krackattacks.com 홈페이지에 올라온 내용중 Introduction을 살펴보면
We discovered serious weaknesses in WPA2, a protocol that secures all modern protected Wi-Fi networks. An attacker within range of a victim can exploit these weaknesses using key reinstallation attacks (KRACKs). Concretely, attackers can use this novel attack technique to read information that was previously assumed to be safely encrypted. This can be abused to steal sensitive information such as credit card numbers, passwords, chat messages, emails, photos, and so on. The attack works against all modern protected Wi-Fi networks. Depending on the network configuration, it is also possible to inject and manipulate data. …(후략)
출처 : https://www.krackattacks.com/
- The attack works against all modern protected Wi-Fi networks. Depending on the network configuration, it is also possible to inject and manipulate data.
- 이 취약점은 모든 보호된 WIFI 네트워크들에 대해 동작한다. 네트워크 구성이 어떤지에따라 인젝션을 하거나 데이터를 조작할 수 있다.
- The weaknesses are in the Wi-Fi standard itself, and not in individual products or implementations. Therefore, any correct implementation of WPA2 is likely affected. To prevent the attack, users must update affected products as soon as security updates become available.
- 이 취약점은 WIFI 표준 그 자체에 존재하는 것으로, 구현상의 문제나 개별 제품의 문제가 아니다. 그러한 이유로, WPA2를 구현한 것은 영향을 받는다고 볼 수 있다. 공격을 막기 위해서는 영향받는 제품의 업데이트가 나오는대로 반영해야한다.
- Note that if your device supports Wi-Fi, it is most likely affected. During our initial research, we discovered ourselves that Android, Linux, Apple, Windows, OpenBSD, MediaTek, Linksys, and others, are all affected by some variant of the attacks.
- 만약 여러분의 장치가 WIFI를 지원하면, 영향이 있다고 봐야한다. 초기 연구동안, 안드로이드, 리눅스, 애플, 윈도우, OpenBSD, MediaTek, Linksys, 그외 제품들이 공격에 영향이 있음을 확인했다.
CVEs
KRACK 페이지 공개와 함께 CVE 번호 및 정보도 업데이트 되었다.
- CVE-2017-13077: Reinstallation of the pairwise encryption key (PTK-TK) in the 4-way handshake.
- CVE-2017-13078: Reinstallation of the group key (GTK) in the 4-way handshake.
- CVE-2017-13079: Reinstallation of the integrity group key (IGTK) in the 4-way handshake.
- CVE-2017-13080: Reinstallation of the group key (GTK) in the group key handshake.
- CVE-2017-13081: Reinstallation of the integrity group key (IGTK) in the group key handshake.
- CVE-2017-13082: Accepting a retransmitted Fast BSS Transition (FT) Reassociation Request and reinstalling the pairwise encryption key (PTK-TK) while processing it.
- CVE-2017-13084: Reinstallation of the STK key in the PeerKey handshake.
- CVE-2017-13086: reinstallation of the Tunneled Direct-Link Setup (TDLS) PeerKey (TPK) key in the TDLS handshake.
- CVE-2017-13087: reinstallation of the group key (GTK) when processing a Wireless Network Management (WNM) Sleep Mode Response frame.
- CVE-2017-13088: reinstallation of the integrity group key (IGTK) when processing a Wireless Network Management (WNM) Sleep Mode Response frame.
🙄 아래 내용은 취약점 공개전 작성된 것입니다.
ChrisK91이나 Kenn White의 글에 따르면, 지난 8월에 이미 CVE번호는 이미 만들어져서 부여된 것으로 보인다. 하지만, CVE조회시 Candidate 상태이며 아직 자세한 정보는 업데이트 되지 않았다. 취약점 발견 후 벤더들에 알리고 조치하기까지 엠바고 기간을 보낸뒤 공개하는 듯.
So it seems that a flaw in the RNG of WPA2 has been discovered. As I understand, the issue has been reported to vendors in August, but public disclosure will be in a few hours. According to some guys on Twitter, well should pay attention to CVE-2017-13077, 13078, 13079, 13080, 13081, 13082, 13084, 13086, 13087, 13088
출처 : Reddit/r/Sysadmin comment by ChrisK91
혹 CVE 정보가 업데이트되면 아래에서 볼 수 있겠다.
- CVE-2017-13077, Candidate, 20170822 Assigned, http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-13077
- CVE-2017-13078, Candidate, 20170822 Assigned, http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-13078
- CVE-2017-13079, Candidate, 20170822 Assigned, http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-13079
- CVE-2017-13080, Candidate, 20170822 Assigned, http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-13080
- CVE-2017-13081, Candidate, 20170822 Assigned, http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-13081
- CVE-2017-13082, Candidate, 20170822 Assigned, http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-13082
- CVE-2017-13084, Candidate, 20170822 Assigned, http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-13084
- CVE-2017-13086, Candidate, 20170822 Assigned, http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-13086
- CVE-2017-13087, Candidate, 20170822 Assigned, http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-13087
- CVE-2017-13088, Candidate, 20170822 Assigned, http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-13088
What to do?
KRACK 홈페이지에 Q&A를 참조하면 되겠다. 간단히 내용을 옮겨본다.
WPA3가 필요한가?
- 그럴 필욘없다. 구현이 이전버전과 호환되도록Backwards-compatible 패치가 가능하다. 패치된 클라이언트가 패치안된 AP와 통신할 수도 있고, 반대로도 된다는 의미다. 업데이트가 제공될 때 즉시 반영하면 되겠다.
WIFI 비밀번호를 바꿔야할까?
- 비밀번호를 바꾸는 것이 이 공격을 막아주지 않는다. 모든 장치들이 업데이트 되었는지를 확실히 하고, 여러분 라우터 펌웨어 업데이트를 해라. 업데이트를 한 뒤에는 선택적으로 비밀번호를 변경해도 되겠다.
WPA2를 AES로만 사용하는데 취약할까?
- 취약하다. 공격이 WPA1과 WPA2모두에 대해 동작한다. 개인personal/기업Enterprise 모두 그렇다. 어떤 암호종류를 사용해도(WPA-TKIP, AES-CCMP, GCMP) 그렇다. 모두 업데이트해야한다.
내 장비도 취약한가?
- 아마도. WIFI를 사용하는 장비라면 취약할 것이다. 제조사에 확인하시라.
패치가 나올때까지 임시로 WEP를 사용해도 될까?
- 안된다. WPA2를 계속 사용하시길.
🙄 아래 내용은 취약점 공개전 작성된 것입니다.
대응을 어떻게 해야하는가에 대한 답이 명확하게 나온 것은 없으나(모르나), 다음 내용을 참고하는것도 괜찮겠다. Alex의 WPA2: Broken with KRACK. What now?중 Keep Calm.
KRACK으로 인해 WPA2 프로토콜의 안전성이 문제가 되는것은 사실이지만, HTTPS와 같이 별도의 레이어에서 개별적인 암호화 통신을 하는등의 다른 보안장치들이 마련되어 있기 때문에 당장에 인터넷을 못쓴다거나 모든 인프라나 데이터가 위험에 처한것은 아니란 것이다. 하지만, 그렇다해서 다른 모든것이 100% 안전하다고도 할 수 없다. 필요한 안전조치가 있다면 이번 기회에 미뤄뒀던 조치들을 취하는 쪽으로 선택해야 할 것이다.
Kenn White의 트윗에 따르면, 지난 8월에 CVE가 만들어졌고 벤더들에게 알려져서 최근까지 제조사들이 AP제품의 펌웨어 업데이트 등에 버그패치를 포함하여 제공해온 것으로 보인다.
Friendly FYI on disclosure: CVEs were assigned in August and (high-level) CERT warning was circulating ~7 wks ago. Some patches already out.
이미 충분히 고지된 내용이며 엠바고를 지키는 기간이 있었을 뿐, 오늘나온 제로데이는 아니라는 것.
Reference
취약점을 공개한 Mathy Vanhoef 및 관련자료
- KRACKATTACKS.com
- @Mathy Vanhoef
- MathyVanhoef.com
- Key Reinstallation Attacks: Forcing Nonce Reuse in WPA2, Mathy Vanhoef, Frank Piessens, 2017 (Online)
- Predicting, Decrypting, and Abusing WPA2/802.11 Group Keys, Mathy Vanhoef, Frank Piessens, 2016 (Online, Online(Usenix), PDF)
- Securely Implementing Network Protocols: Detecting and Preventing Logical Flaws, Mathy Vanhoef, Black Hat Webcast, 2017 (Online)
취약점에 대해 언급한 Kenn White 및 그외
- @Kenn White
- Kenn White가 언급한 nonce조작에 대한 문서
Nonce-Disrespecting Adversaries: Practical Forgery Attacks on GCM in TLS, 2016 (Online)
Related News
- MacRumors, Apple Says ‘KRACK’ Wi-Fi Vulnerabilities Are Already Patched in iOS, macOS, watchOS, and tvOS Betas
- TechAU : WPA2 protocol broken ? Internet, we have a problem.
- The Register : WPA2 security in trouble as Belgian boffins tease key reinstallation bug
- arsTechnica : Severe flaw in WPA2 protocol leaves Wi-Fi traffic open to eavesdropping
- Gizmodo : Wi-Fi’s Most Popular Encryption May Have Been Cracked