WiFi hekkelés gyorsabban, mint valaha
A WPA/WPA2 fontos alapja a PBKDF2 (Password-Based Key Derivation Function 2) algoritmus. Mivel ez nagyon számításigényes ezért alkalmas a nyerserő alapú jelszó-visszafejtési kísérletek megakadályozására. Ha egy támadó megpróbálja visszafejteni a jelszót, akkor nincs más választása, mint hogy a lehetséges jelszavakat átküldje a PBKDF2 függvényen, és az eredményül kapott mesterkulccsal tovább dolgozzon. Ez az első fázisa a jelszótörésnek önmagában felemészti a szükséges idő és számításigény kb. 95 százalékát. A Tomcsányi Domonkos és Lukas Lueg által végzett kutatás azonban nem az első, hanem a második fázis tekintetében zajlott.
Az eddig ismert támadások a WPA2-AES ellen az úgynevezett négylépéses kézfogást használták fel a jelszótörés második szakaszában. A kézfogás a kapcsolat kezdetén történik, és egy challenge-response elvet használó authentikáció biztosítja, hogy a kapcsolódó felek ismerjék a hálózathoz tartozó kulcsot (jelszót). Az első lépésben az Access Point (AP) és a kliens is generál egy-egy véletlenszámot, majd az AP átküldi a sajátját a kliensnek. A kliens ezután a két véletlenszám és a mesterkulcs (ami a jelszóból generálható az első fázisban) ismeretében képes előállítani a titkosított kommunikáció során használt kulcsokat. A következő lépésben a kliens elküldi a saját véletlenszámát az AP-nek, azonban ezt a csomagot már a frissen elkészült kulcsok és egy SHA-1 függvény segítségével digitálisan aláírja. Az aláírás azért jó, mert a kulcsok ismerete nélkül is lehetővé teszi az átküldött adat (kliens véletlenszámának) felhasználását, és lehetőséget ad arra, hogy később az AP visszaellenőrizzen. Mivel az aláíráshoz a kulcsokat is felhasználják, ezért ha az aláírás helyes, akkor az AP biztos lehet benne, hogy a kliens a valódi kulcs birtokában van, azaz jogosult a hálózat használatára.
Miután támadó megszerezte a „levegőből" a két véletlenszámot, illetve az egyikhez tartozó digitális aláírást, akkor attól kezdve már offline folytathatja a támadást. A lényeg, hogy olyan kulcsot kell találnia, amellyel ha aláírja a második lépésben átküldött adatot, akkor a kapott aláírásnak meg kell egyeznie a lementett aláírással. Amennyiben ez megvalósul, akkor tudhatja, hogy a bemenetként használt jelszó helyes, azaz megtalálta a hálózat jelszavát. Ez a támadás a PBKDF2 függvényen kívül még 12-15 darab SHA-1 utasítást igényel. A Tomcsányi Domonkos által kitalált és Lukas Lueg által megvalósított támadás ezzel szemben csak 7 darab SHA-1 utasításba kerül a PBKDF2 függvény után. A támadás neve CCMP known plain-text attack.
Az AES egy blokktitkosító, azaz csak egy megadott méretű adatblokkot képes kódolni, ami a szabvány szerint 128 bites. Kézenfekvő, hogy ha több titkosítandó adatunk van, mint 128 bit, akkor azt feldaraboljuk 128 bites részekre, és egyenként átküldjük a blokkokat az AES függvényen. A probléma ezzel az, hogy ha az adat csupa egyforma karakterekből áll (tehát pl. 64 darab A betű), akkor a titkosított blokkok is egyformák lesznek, és ez egy megfigyelőnek feltűnhet. Ezért találták ki az úgynevezett counter mode-ot, amelyben nem egy blokknyi adatot, hanem egy számláló értékét titkosítják kizáró vagy (XOR) felhasználásával.
Tomcsányi Domonkos szerint a támadásra az ötletet az adta, hogy a szabvány értelmében minden egyes WiFi-n átmenő csomag egy konstans bájtsorozattal kezdődik, az első 8 bájt mindig ugyanaz. Ha a támadó már ismeri a négylépéses kézfogást, majd ezek után elkap még egy, már titkosított csomagot, akkor megpróbálhatja dekódolni a csomagot egy általa választott kulccsal. Ha a kapott csomag első 8 bájtja megegyezik az ismert, konstans szöveggel, akkor biztos, hogy a használt kulcs helyes. Ha nem az ismert 8 bájtot kapja vissza, akkor a kulcs helytelen, és újra kell próbálkozni egy másikkal.
Ez a támadás csak 7 darab SHA-1 utasítást, illetve egy AES-utasítást használ, mégis ugyanazt az eredményt éri el, mint az eddigi támadási módszerek. Az AES utasítás (főleg az újabb, AES-NI utasításkészletet tartalmazó processzorok esetében) elhanyagolható számítási teljesítményt igényel, így a kutatók az SHA-1 utasítások csökkentésével 50 százalékkal voltak képesek felgyorsítani a jelszóvisszafejtés második szakaszát.
Fontos megjegyezni, hogy gyakorlati szempontból a WPA2 továbbra is biztonságos, hiszen az alapját adó PBKDF2 függvényben eddig még nem találtak hibát. A megfelelő biztonsághoz azonban elengedhetetlen a megfelelő kulcs-, illetve jelszókezelés.




0 hozzászólás
Ehhez a cikkhez még nem érkezett hozzászólás.