12:22
14/1/2011

Tanie Wi-Fi hackowanie

Amazon udostępnił w swojej ofercie hostingowej EC2 serwery z graficznymi procesorami (GPU), które potrafią być nawet 100 razy wydajniejsze niż czterordzeniowe CPU. Thomas przetestował nową ofertę Amazonu pod kątem szybkiego łamania haseł do WPA-PSK.

Chmurowy łamacz haseł do Wi-Fi

Thomas jest w stanie łamać hasła z szybkością ~400.000 PMKs/s; co pozwala odzyskać hasło do sieci Wi-Fi korzystającej z WPA-PSK w 6 minut, przy łączym koszcie $1.68. Narzędzie zostanie opublikowane na zbliżającej się konferencji BlackHat DC 2011.

NVIDIA_Tesla_M2050_GPU

Układ NVIDIA Tesla

Niestety, ani artykuł opisujący wyczyny Thomasa, ani jego wpis na blogu nie wspomina, jakiej długości hasła testował… No i pamiętajmy, że w przypadku sieci Wi-Fi nikt nie zmusza nas do korzystania właśnie z WPA-PSK, możemy np. wybrać WPA[2] 801.1 X/EAP

Szybkie funkcje hashujące nie do wszystkiego

Mimo wszystko, powyższy eksperyment to chyba najlepszy przykład na to, że szybkość funkcji hashującej ma znaczenie — mylne jest bowiem przekonanie, że jednokrotne hashowanie haseł (np. w serwisach internetowych) to najlepsze-jakie-może-być zabezpieczenie, (por. dyskusja w komentarzach pod jednym z poprzednich artykułów).

P.S. Przypominamy o WPA Crackerze, który także łamie hasła do sieci Wi-Fi WPA PSK, też na Amazonie, ale na klastrze 400 standardowych CPU. Wolniej i za więcej.

Przeczytaj także:

21 komentarzy

Dodaj komentarz
  1. ciekawe rozwiązanie, kiedy będzie w obiegu?

  2. mowa jest oczywiście o hasle “słownikowym”. jesli haslo jest w naszym slowniku to je zlamiemy a jesli go nie ma to nie zlamiemy. wiec rewelacji tu nie ma, bo co z tego, że szybko skoro niewiele hasel tym sposobem zlamiemy (http://wpa.darkircop.org/ podaje 8%)?

    sila wpa jest w tym ze haslo musi miec conajmniej 8 znakow, a nie tak latwo wymyslic proste do odgadniecia haslo, spelniajace ten warunek (no moze poza 12345678, qwertyuiop i paroma podobnymi) i dlatego wiekszosc sieci jest bezpieczna.

  3. @Mirosław

    W poniedzialek w empiku z kubeczkiem i misiem przytulanką za 19,99.

  4. @Mirosław RTFA!

  5. Czyli jak mam WPA2 + AES z kluczem typu ‘YGuD9zLCjFfw9CMzVwTj2wtAxVM2CyUqEhPChtTxlvtphVGwgplgb5G9iq44nlr’ to nie ma sięczego obawiać?

  6. @NN
    W zasadzie nie ma różnicy czy używasz WPA-PSK czy WPA2-PSK. Zarówno w jednym i drugim możesz wykorzystać TKIP lub CCMP (AES). Powszechnie przyjęło się, że w WPA wykorzystuje się TKIP, zaś w WPA2 CCMP (AES). Eksperyment Thomasa pokazuje szybkość przeprowadzania ataku słownikowego na WPA/WPA2-Personal (w którym wykorzystywany jest klucz preshared tzw. PSK). Atak ten nie ma zastosowania dla WPA/WPA2-Enterprise.
    To czy stosowany jest AES czy TKIP nie ma również żadnego znaczenia.
    Dziwi mnie za to obecność takiego newsa, który w zasadzie nie ujawnia niczego nowego, a wręcz dezinformuje. To czy hasło zostanie złamane zależy tylko i wyłącznie od jego obecności w słowniku. Wydajność testowania haseł offline z wykorzystaniem serwerów Amazon jest duża, ale nie rewelacyjna w porównaniu do np. narzędzia Pyrit, które każdy może uruchomić na swoim komputerze. Na swojej maszynie osiągnąłem szybkość 18000 PMK/s (Radeon 4850).

  7. Ja mam sieć nazwaną Kolo i hasło typu Kolo!@#$%^&*() (może nawet 2 znaki krótsze) z tym że patrząc na zasięg mojej sieci (max 4 domy dookoła z każdej strony domu) gdzie większość ludzi prosi mnie o zainstalowanie XP, raczej się nie obawiam żadnego ataku ;] No chyba że by jakiś bus podjechał mi pod dom z aparaturą (CHYBA SAM LAPTOP I DOBRA KARTA STYKNĄ) ale wtedy bym już zauważył że coś jest nie tak i pod domem jakieś FBI stoi ;];]

  8. @Kris: na dobra sprawe to i komorka (o ile da rade dumpowac pakiety z wlan) polaczona z serwerem obliczeniowym by wystarczyla. Zacznij strzelac do kazdego przechodnia ;-)

  9. Adamie, nie każdy posiada pod ręka sprzęt, który pozwala na przeprowadzenie porównywalnego do opisanego w newsie ataku słownikowego w porównywalnym czasie. A dzięki Amazonowi może — i to jest powód dla którego wrzuciłem tego newsa.
    Ty piszesz o 18k pmk/s, a Thomas ma opublikować narzędzie o wydajności 1000k pmk/s — dziwię się że przekreślanie jego dokonań przychodzi Ci z taką łatwością… Obydwaj jednak nie mówicie o tym, że nawet przy tej wydajności sprawdzenie haseł o długości powyżej kilku znaków zajmie wiecej czasu niż 6 min. (i będzie kosztowało odpowiednio więcej).
    Dodatkowo, pamiętajmy, że w WPA2 zastosowano mechanizm kilkukrotnej iteracji klucza, co dodatkowo opóźnia atak.
    Uproszczony wniosek — im dłuższe i losowe (niesłownikowe) hasło, tym lepiej.

  10. @mariusz
    W zasadzie to nawet ta komórka nie musiałaby być z niczym połączona. Wystarczy, że przechwycisz 4 pakiety tzw. 4-way handshake, co można uzyskać od ręki wymuszając np. anulowanie asocjacji klientów z punktem dostępowym. Następnie te 4 pakiety wykorzystujesz porównując je gdzieś tam w domowym zaciszu z nieograniczonym czasem :).

    @Piotr
    Nie przekreślam dokonania Thomasa, lecz w sensie idei nie jest ono niczym nowym. Podobne rozwiązanie wykorzystujące obliczenia w chmurze dostępne już było wcześniej np. w serwisie wpacracker.com. Co do szybkości, to coś co ciągle będzie ulegać zmianie. Nie zmienia to jednak faktu, że wykorzystanie nawet najszybszych klastrów obliczeniowych nie jest w stanie złamać bardzo skomplikowanej frazy dopuszczającej (ang. passphrase).
    Nie rozumiem co masz na myśli pisząc o mechaniźmie kilkukrotnej iteracji klucza, możesz wyjaśnić? Ze specyfikacji WPA i WPA2 wynika, że jedyna różnica to sposób generowania GTK (jeżeli dobrze pamiętam), no i oczywiście implementacja CCMP w WPA2 (później również w WPA1).

    • Adam: Jeśli dobrze pamiętam, to domyślny szyfr w WPA2, czyli AES to co najmniej 10 rund (dla 128 bitowych kluczy, więcej dla dłuższych) — i to miałem na myśli. Co oczywiście przy niektórych AP nie odnosi się to tylko do WPA2, bo w dzisiejszych czasach różnica pomiędzy WPA i WPA2 jest lekko hmm… rozmyta; firmy takie jak Cisco pozwalają na niektórych AP np. na ustawienie nie tylko WPA-Personal PSK+TKIP,RC4 lub WPA-Enterprise 801.2 x/EAP+TKIP,RC4 ale także na WPA z TKIP/*AES*… i tu zgoda — moja sugestia w tekście, “że możemy skorzystać z WPA2” jest zbyt wielkim skrótem myślowym. Doprecyzowałem go.

      Cieszę się też, że w końcu doszliśmy do porozumienia, że tak naprawdę znaczenie ma długość a nie to, ile PMK/s ktoś będzie wstanie wykręcić (bo szybkość jest “tricky”, zarówno jeśli chodzi o CPU/GPU, jak i funkcje skrótu — w końcu w WPA-PSK korzysta się 4096 razy z HMAC-SHA1, a mimo to…). Co zaś się tyczy WPACrackera, to popatrz w P.S., który widnieje tam od momentu publikacji newsa :-)

  11. Również bym nie bagatelizował poczynań Rotha. U mnie najnowszy Pyrit w benchmarku daje ~15K PMKs/s na GTX 460, ale to wciąż niewiele w porównaniu z 400K, o których wspomina Thomas. Poza tym przebąkuje przecież też o możliwości wyciśnięcia nawet 1M.

  12. Dziwię się co ostatnio się stało z aircrackiem, jakiś rok temu, dopiero co dodali obsługę CUDów postanowiłem przetestować i na laptopie z gf 8600 gt miałem o tyle:
    http://img264.imageshack.us/img264/3517/hpim1663.jpg
    Jak teraz testuję aircracka tudzież pyrita to mi się śmiać chce, znacznie niższe osiągi.

    • Śmiać mi się chce jak widzę jak robisz screena ;)

  13. Wartosc PMK/s nie znaczy nic bez podania sprzetu, na jakim go osiagnieto,

    Z cennika amazona – koszt 1.68 $ za 6min odpowiada cenie 8 takich instancji:
    Cluster GPU Instances
    Quadruple Extra Large $2.10 per hour
    A tu opis takiej instancji:
    Cluster GPU Quadruple Extra Large 22 GB memory, 33.5 EC2 Compute Units, 2 x NVIDIA Tesla “Fermi” M2050 GPUs, 1690 GB of local instance storage, 64-bit platform, 10 Gigabit Ethernet
    EC2 Compute Unit (ECU) – One EC2 Compute Unit (ECU) provides the equivalent CPU capacity of a 1.0-1.2 GHz 2007 Opteron or 2007 Xeon processor.

    Czyli mowimy tu o 176GB pamieci, 268 odpowiednikom CPU 1.0-1.2GHz 2007 Opteron/Xeon, 16 kartom NVIDIA Tesla “Fermi” M2050 GPUs i jakims 13TB przestrzeni do wykorzystania.

    Poprawcie jesli sie myle.

  14. Czy ja dobrze rozumiem, że atak Thomasa w dalszym ciągu opiera się na łamaniu słownikowym? Tak trochę z innej beczki: czy ktoś może zna jakieś AP z wbudowanym małym serwerem RADIUS czyli suplikant i autentykator w jednym urządzeniu? Po prostu chciałbym skorzystać z zalet jakie daje WPA(2) Enterprise – np. dynamiczne genrowanie kluczy dla każdego użytkownika. Jednak sieć jest na tyle mała, że niedobrze mi się robi na myśl o stawianiu i utrzymywaniu dodatkowej maszyny tylko po to, żeby… przechowywała ona tabelę z hasłami dla 10 użytkowników! Ponadto, oprócz dostępu do WiFi, nie mam zamiaru wiązać tych kont użytkowników z jakąkolwiek inną usługą.

  15. moze sie czepiam ale chyba coraz wiecej osob nie czyta tekstu zanim go skomentuje. patrz komentarze miroslawa i adama.

    @Adam “Nie przekreślam dokonania Thomasa, lecz w sensie idei nie jest ono niczym nowym. Podobne rozwiązanie wykorzystujące obliczenia w chmurze dostępne już było wcześniej np. w serwisie wpacracker.com. Co do szybkości, to coś co ciągle będzie ulegać zmianie. Nie zmienia to jednak faktu, że wykorzystanie nawet najszybszych klastrów obliczeniowych nie jest w stanie złamać bardzo skomplikowanej frazy dopuszczającej (ang. passphrase).”

    przeciez dokladnie o tym jest artykul. o tym ze dlugosc ma znaczenie a nie sama szybkosc i o tym ze szybkosc f. hashujacych jest zaleta w jednym przypadku a wada w drugim. przyczepie sie jeszcze do tego ze “bardzo skomplikowana” to zle okreslenie [“dluga” lepiej oddaje istote atakow bf]. a wpacracker podlinkowano w peesie. howgh

  16. @gadulix
    Karty M2050 są znacznie szybsze od C1060, których wydajność można sprawdzić na stronie projektu Pyrit. Pyrit wykorzystujący 8xC1060 uzyskuje szybkość 88k PMKs/s. 16 takich GPU powinno dać szybkość ~165k PMKs/s. Karta M2050 uzyskuje szybkość około 21k PMKs/s, co przy 16 sztukach daje ~335k PMKs/s. Każdy CPU core uzyskuje szybkość ~400 PMKs/s, co przy 268 sztukach daje ~107k PMKs/s. Łącznie 442k PMKs/s. Odejmując minimalne narzuty na komunikację otrzymamy wyniki podobne lub trochę lepsze od Thomasa. Tym samym, jego narzędzie nie wygląda na lepsze od Pyrita, chyba, że pomyliłem się gdzieś w obliczeniach. Dodam, że Pyrita też możemy uruchomić na klastrach.

    @Marcin Maziarz
    Tak, wciąż atak słownikowy, gdyż pełen przegląd to wciąż za wiele dla współczesnych klastrów. Co do AP, polecam Cisco Aironet 1130AG, na którym przeprowadzałem badania do swojej pracy mgr. Posiada on wbudowany serwer RADIUS dla maks. 50 użytkowników. Zaznaczam jednak, że w mojej wersji nie działało automatic PAC provisioning dla EAP-FAST.

    @Piotr Konieczny
    Wciąż nie rozumiem czemu piszesz o AES, skoro atak Thomasa, czy też wykorzystanie Pyrita lub Aircracka nie ma absolutnie z nim nic wspólnego. Atak na hasło to atak tylko i wyłącznie wykorzystujący pakiety z czterostronnego uzgadniania, a tam AES nie jest stosowany. Klucz w WPA/WPA2-Personal może być wprowadzony w formacie hex. Zazwyczaj jednak użytkownik wprowadza passphrase 8-63 znaków, gdzie następnie algorytm wykorzystując również SSID, na podstawie tych dwóch generuje klucz. Wszystkie dostępne obecnie systemy łamania słownikowego offline wykorzystują fakt, że zazwyczaj użytkownicy podają passphrase, a nie wartość hex co umożliwia ograniczenie czasu potrzebnego na złamanie hasła WPA/WPA2 (gdyż SSID jest znane). To jakiego algorytmu szyfrowania stosujemy potem (w oparciu o klucze sesyjne) nie ma absolutnie żadnego znaczenia. Może to być TKIP lub CCMP, jeden kit :).

    Tak na prawdę liczy się długość frazy dopuszczającej oraz jej skomplikowanie, tak by nie znalazła się ona w żadnym słowniku. Właściwie najlepiej to byłoby wpisywać klucz w formacie hex, gdyż wtedy wszelkie ataki słownikowe przy użyciu dostępnych narzędzi byłyby nieskuteczne.

  17. @Adam: Piotrowi chodzi o wykorzystanie PBKDF2 w procesie przekształcania hasła na klucz. O tym algorytmie sam piszesz, wykorzystywany jest SSID pełniący w praktyce rolę salta) i hasło wpisane przez użytkownika. HMAC-SHA1 wykonywany jest 4096 razy co w oczywisty sposób wydłuża czas łamania hasła w porównaniu z hipotetyczną sytuacją, w której takie przekształcenie wykonane byłoby tylko jeden raz. Natomiast masz rację, że słabe hasło słownikowe w tym przypadku nadal pozostanie słabym hasłem słownikowym.

  18. @Marcin Maziarz: dowolny AP obsługiwany przez OpenWRT (np. TP-Link TL-WR1043ND (~160zł) lub TP-Link TL-MR3420/TL-MR3220 (~100-120zł), ale w przypadku tych 2 ostatnich prawdopodobnie niezbędne będzie rozszerzenie flasha używając np. pendrive’a) – polecam także pogooglanie w temacie coova-chilli / chillispot w połączeniu z OpenWRT.

Twój komentarz

Zamieszczając komentarz akceptujesz regulamin dodawania komentarzy. Przez moderację nie przejdą: wycieczki osobiste, komentarze nie na temat, wulgaryzmy.

RSS dla komentarzy: