Prelomenie WPA / WPA2-PSK cez WPS ľahko a rýchlo (teória)

Loading

Na začiatku si poďme ujasniť pojmy a ukážme na dobrého a na toho zlého.
Z nadpisu by sa mohlo zdať, že sa objavil spôsob prelomenia WPA bez nutnosti použiť hrubú silu (brute-force attack).
To ale nie je úplne pravda, samotné WPA sa totiž stále drží dobre a naozaj jediný doposiaľ známy spôsob prelomenie WPA je použitie hrubej sily.
Takže vhodne zvolené heslo, teda dostatočne dlhé a silné, zaručuje praktickú neprelomiteľnosť wifi siete WPA spoľahlivo.

To, čo podlamuje WPA nohy, je WPS (Wifi Protected Setup).
Štandard vyvinutý po boku WPA, ktorý uľahčuje spárovanie dvoch zariadení (napr. Router – PC) používateľom, ktorí nechcú vstupovať do tajov šifrovania a od svojich šikovných krabičiek očakávajú, že jednoducho budú fungovať.
Presnejšie: úlohou WPS je zaistiť bezpečné spárovanie dvoch zariadení bez nutnosti zadávať dlhé a prípadne i komplikovaná heslá.
Samotný štandard bol predstavený v roku 2007 a väčšina dnešných moderných routerov ho podporuje.
Podporujú ho aj koncové zariadenia, ako sú inteligentné mobilné telefóny (napr. Android od verzie 4.1 natívne) alebo operačné systémy, takže služba je v praxi veľmi rozšírená a ľahko použiteľná.

{googleads left}

WPS ako dobrý sluha

Idea WPS určite nie je zlá.
Ako úplný laik si kúpite router s prednastaveným šifrovaním WPA (2)-PSK a s prednastaveným dostatočne silným heslom (náhodné čísla, písmená, znaky, …).
Alebo, ak je router z výroby otvorený bez šifrovania, necháte si jednorázovo router dobre zabezpečiť niekým zdatnejším, ale podrobnosti o nastavení šifrovania a hesla nemusíte nijako riešiť.
Router potom len zapojíte podľa náčrtu (ADSL, WAN port) a všetky potrebné zariadenia si spárujete pomocou WPS.

Štandard WPS bol navrhnutý s ohľadom na využitie v domácich sieťach a ponúka niekoľko metód párovania – zadaním PIN (osemmiestne číslo), stlačením tlačidla (fyzického na routeru či virtuálneho v operačnom systéme), pomocou NFC (priložením dvoch zariadení k sebe) a pomocou USB zariadení.
Celkom teda štyri metódy, z ktorých sa v praxi najčastejšie používajú prvé dve a posledný (pomocou USB) dnes štandard neodporúča používať.
Jednotlivé spôsoby tu nebudeme rozoberať detailne, veľmi podstatné je ale to, že metóda párovanie s pomocou PIN je povinnou súčasťou implementácie štandardu a v praxi ho tak musia podporovať všetky zariadenia, ktoré WPS implementujú.
Čo je celkom problém, pretože slabina WPS je práve v metóde párovanie pomocou PIN, takže všetky zariadenia podporujúce WPS sú teoreticky (a v podstate i prakticky) zraniteľné.

WPS ako zlý pán

V decembri roku 2011 upozornil Stefan Viehböck na slabinu v návrhu WPS, ktorá, podporená v praxi nedokonalou implementáciou výrobcov routerov, robí WPS prelomiteľnou hrubou silou – a teraz pozor – so stopercentnou úspešnosťou v priebehu niekoľkých hodín.
A to bez ohľadu na zložitosť hesla k WPA, pretože WPS ako taký s WPA nesúvisí, slúži len na výmenu informácií a kľúčov pred nadviazaním šifrovaného spojenia WPA.
Výsledkom prelomenia WPS je nielen odhalenie PINu WPS, ale aj hesla k sieti chránenej WPA (2) -PSK.

{googleads left}

V praxi …

Podľa informácií dostupných na internete trvá v praxi prelomenie WPS typicky niečo medzi dvoma až štyrmi hodinami.
To môžeme z vlastnej skúsenosti potvrdiť aj autor webu http://www.mrpear.net, pretože jeho vlastné heslo sa mu podarilo prelomiť počas hodiny a pol.
Takto rýchlo nebol úspešný ani pri prelomení WEPu.

Navyše sa mu hacking WPS zdá v porovnaní s hackingom iných wifi technológií z užívateľského hľadiska jednoduchší – nie je potrebné zachytávať žiadnu prevádzku (WEP), vynucovať si a chytať výmenu wpa handshake (WPA)…
Proste sa len neustále dookola skúša jeden PIN za druhým (to samozrejme robí softvér), kým sa ten správny netrafí.
Potrebné je len zabezpečiť aspoň trošku kvalitný signál, tzn. nebyť od routeru príliš ďaleko.

Slabina WPS

Poďme sa teraz podrobnejšie pozrieť na slabinu v návrhu WPS.
Ako autor webu http://www.mrpear.net už písal skôr, slabina je v návrhu párovania s využitím PIN kódu.
PIN kód je nastavený v routeri buď natvrdo, alebo ho možno meniť napríklad cez webové rozhranie routera, čo nie je ale až tak podstatné.

Návrh WPS trpí v podstate dvoma slabinami – menej závažnou je, že ho všeobecne možno prelomiť brute-force útokom.
Viac závažné ale je, že vzhľadom na okolnosti výmeny informácií medzi routerom a klientom je možné optimalizovať algoritmus útoku tak, že možno dramaticky znížiť maximálny nutný počet pokusov úspešného útoku.

Reklamy

Poďme si to rozobrať konkrétnejšie.
WPS PIN je 8 miestne číslo.
Teoreticky teda existuje 108 variantov PIN kódu, teda až 100.000.000 pokusov potrebných k prelomeniu WPS útokom hrubou silou.
To nie je málo, ak vezmeme do úvahy to, že proces overenia jedného PIN kódu trvá približne 3 sekundy a neexistuje možnosť, ako ho v praxi nejako výraznejšie urýchliť.

PIN sa ale počas procesu overovania rozpadá na dve časti.
Každú časť tvoria štyri číslice, druhá časť sa navyše rozpadá na tri číslice plus posledná číslica tvorí kontrolný súčet.
A najväčšie slabina: vďaka špecifickej odpovedi routeru je klient schopný odvodiť, či bola prvá a potom aj druhá časť použitého PINu správna.
So znalosťou tejto vlastnosti je možné optimalizovať algoritmus útoku hrubou silou tak, že sa redukuje maximálny počet potrebných pokusov na 104 + 103, teda 10.000 + 1.000 = 11.000 pokusov.
Jedenásť tisíc pokusov, dramaticky oveľa menej ako pôvodných sto miliónov, to je pri frekvencii 3 sek/ PIN nanajvýš niečo okolo 9 hodín, ktoré k prelomeniu WPS so 100% úspešnosťou potrebujeme.

Hacknuté WPS za 93 minút

Zlý návrh a k tomu nič moc implementácia

Vražedná kombinácia zlého návrhu a zlej implementácie robia zraniteľnou všetky zariadenia s podporou WPS.
Čo je myslené zlou implementáciou?
Problém je v tom, že výrobcovia neimplementujú do WPS žiadne detekčné mechanizmy, ktoré by útoku hrubou silou zabránili, resp. dostatočne by ho stažili.
Nutné je, ale podotknúť, že štandard WPS nič také nevyžaduje, ťažko možno teda viniť len výrobca z daného prešvihu.
A samozrejme v čase, keď sa o slabine (asi) nevedelo, by bola implementácia dodatočných mechanizmov nad rámec cieľovej skupiny, kam WPS patrí – domácnosti a malé podniky.

Problém slabiny WPS je riešiteľný detekciou útoku hrubou silou a blokovaním WPS na dostatočne dlhý interval po danom počte neúspešných pokusov.
Napríklad: po pätnástich neúspešných pokusoch blokuj WPS na 60 minút – maximálna doba útoku by sa predĺžila v tomto prípade až na viac ako 30 dní.
To útok už dostatočne predlžuje a tým komplikuje úspešnosť jeho vykonania.
V kombinácii s reportovacou službou (cez e-mail) by bolo možné útok na WPS včas odhaliť a adekvátnym spôsobom zakročiť.
Avšak predstava, že si domáci užívateľ konfiguruje zasielanie e-mailov z routeru je trošku naivné, navyše v spojení s WPS, ktoré cielia naozaj na používateľa laikov.

Ochrana proti útoku

Účinná ochrana v praxi neexistuje.
Teda existuje – vypnúť WPS, alebo ešte lepšie mať router BEZ podpory WPS.
Problém niektorých routerov je totiž ten, že aj napriek jeho deaktivácii (pomocou webového rozhrania) zostal WPS aktívny.

Ak je pre daný router k dispozícii aktualizácia firmware, ktorá slabinu WPS rieši (najskôr detekciou brute-force útoku), je možné problém čiastočne vyriešiť aktualizáciou firmvéru zariadenia.
Kým sa ale do praxe nedostane následník WPS (WSC 2.0), teda štandard vyžadujúci implementáciu detekcie útoku hrubou silou, bude používanie tejto technológie párovania značne rizikové.
Hore spomínaný, autor webu http://www.mrpear.net, osobne odporúča WPS, ak ho naozaj nepotrebujete a s láskou nevyužívate, vypnúť.

Nástroje pre útok na WPS

Ak máte router s podporou WPS (alebo QSS, tak ako túto službu nazýva TP-Link), nie je na škodu si otestovať priestreľnosť implementácie WPS práve vo vašom routery.
Konkrétnemu návodu sa budeme venovať v niektorom z ďalších príspevkov, každopádne na začiatok poskytneme dve dôležité indície: BackTrack Linux – Penetration Testing Distribution a Reaver

zdroj:http://www.mrpear.net/

Reklamy

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *