Preorder drugiego tomu książki sekuraka: Wprowadzenie do bezpieczeństwa IT. -15% z kodem: sekurak-book
Kr00k (CVE-2019-15126) nowa podatność w WPA2 / WPA2 Enterprise umożliwiająca deszyfrowanie ruchu.
Pamiętacie KRACK? (podatni byli klienci WiFi – np. laptopy, telefony, urządzenia IoT; całość polegała na tym, że wartość nonce – sprzecznie z definicją – można było używać nie-tylko-raz. Prowadziło to do możliwości deszyfracji ruchu WiFI). Problem załatano (patche po stronie klienckiej, zazwyczaj patche po stronie routerów WiFi nie były potrzebne – chyba że same one były klientami). Minęło trochę czasu i… w pewnym sensie mamy nową odmianę tematu prowadzącą do tego samego, tylko w nieco inny sposób.
Specjaliści z ESET-a, którzy odkryli problem piszą tak:
The vulnerability affects both WPA2-Personal and WPA2-Enterprise protocols, with AES-CCMP encryption. (…) Kr00k affects devices with Wi-Fi chips by Broadcom and Cypress that haven’t yet been patched. These are the most common Wi-Fi chips used in contemporary Wi-Fi-capable devices such as smartphones, tablets, laptops, and IoT gadgets. Our tests confirmed that prior to patching, some client devices by Amazon (Echo, Kindle), Apple (iPhone, iPad, MacBook), Google (Nexus), Samsung (Galaxy), Raspberry (Pi 3), Xiaomi (RedMi), as well as some access points by Asus and Huawei, were vulnerable to Kr00k. This totaled to over a billion Wi-Fi-capable devices and access points, at a conservative estimate.
Czyli podatne jest zarówno WPA2 jak i WPA2 Enterprise – przypadki używające AES-CCMP, a problem dotyka najpopularniejszych chipów WiFi, które są obecnie używane w telefonach / laptopach czy urządzeniach IoT (formalnie rzecz ujmując problem nie leży zatem w WPA2, a w konkretnych chipach).
Gdzie leży istota błędu? Otóż podczas dezasocjacji klucz sesyjny przechowywany w chipie WiFi jest zerowany (OK, bo klient jest odłączony). Ale ważne jest to, co dzieje się dalej:
However, we discovered that all data frames that were left in the chip’s Tx (transmit) buffer were transmitted after being encrypted with this all-zero key. (…) After a disassociation occurs, data from the chip’s Tx buffer will be transmitted encrypted with the all-zero TK. These data frames can be captured by an adversary and subsequently decrypted. This data can contain several kilobytes of potentially sensitive information.
Czyli po dezasocjacji (i ponownej asocjacji) potencjalnie nawet kilka kilobajtów danych można śmiało odszyfrować. Rozłączamy sztucznie ofiarę (osoby, które mają do czynienia w WiFi wiedzą, że w przypadku WPA2 można bezprzewodowo wymusić dezasocjację bez posiadania dostępu do sieci (np. bez znajomości klucza PSK)), podłącza się ona z powrotem do sieci – znowu zbieramy nowe dane, deszyfrujemy… to istota podatności Kr00k.
Czy podatne są access pointy? Badacze odpowiadają na to pytanie pozytywne wskazując przykładowe podatne modele:
- Asus RT-N12
- Huawei B612S-25d
- Huawei EchoLife HG8245H
- Huawei E5577Cs-321
oraz kwitując to w ten sposób:
The attack surface is greatly increased, since an adversary can decrypt data that was transmitted by a vulnerable access point to a specific client (which may or may not be vulnerable itself).
Co robić? Aplikować łaty od producentów sprzętu, z którego korzystamy (nieco trudniejsze może to być w przypadku access pointów, które zarówno producenci jak i spora część użytkowników traktuje na zasadzie – „działa? nie ruszać”)
–ms
Badacze odpowiedzieli twierdząco, nie pozytywnie.
No to tym razem mam co patchować
Here is a list of client devices that ESET confirmed were vulnerable to Kr00k:
Amazon Echo 2nd gen
Amazon Kindle 8th gen
Apple iPad mini 2
Apple iPhone 6, 6S, 8, XR
Apple MacBook Air Retina 13-inch 2018
Google Nexus 5
Google Nexus 6
Google Nexus 6P
Raspberry Pi 3
Samsung Galaxy S4 GT-I9505
Samsung Galaxy S8
Xiaomi Redmi 3S
And here is a list of wireless routers that ESET confirmed were vulnerable:
Asus RT-N12
Huawei B612S-25d
Huawei EchoLife HG8245H
Huawei E5577Cs-321
Raspberry Pi 3 nie ma nawet wifi, a i tak jest podatne? IMHO to duzy skrot myslowy, ale pewnie chodzi o raspbiana z jakas standardowa karta sieciowa. Jednak rpi samo z siebie nie jest podatne.
Jak nie ma jak ma? I wifi, i bluetooth’a…