Ponieważ, z tego co widzę, łamanie WEP cieszy się zainteresowaniem, przedstawię tutaj krótką instrukcję "jak złamać WEP". Głównie chodzi mi o uświadomienie ludziom, że WEP nie jest bezpieczny, a ewentualne "filtrowanie po MAC" to tylko iluzja jakiegokolwiek bezpieczeństwa.
Na początku zbierzmy narzędzia. Łamanie WEP przedstawię na prostych przykładach:
Dlaczego akurat taki zestaw? Cóż, nie przekonałem się do linuksa na desktopie (na laptopie tym bardziej), więc jestem zadowolonym użytkownikiem Windows XP, który jednocześnie nie chce wydawać kilkuset złotych na tę zabawkę (AirPcap). Windows Vista potrafi już bezpośrednio sniffować połączenia wireless, ale mój stary Dell C540 raczej nie byłby dobrą platformą dla tego systemu (wiem, instalowałem na nim i Beta2 i wersje testowe). Istnieje kilka dystrybucji LiveCD przeznaczonych dla pentesterów, BackTrack jest tą, którą używam, choć kiedyś również przymierzałem się do Pentoo. Próbowałem również kilka innych wersji, ale jakoś BackTrack był najbardziej użyteczny. Wadą BackTrack jest to, że aircrack-ngna nim obecnie dostępny nie wspiera ataku PTW. Cain za to atak PTW jak najbardziej wspiera.
Całość ataku można podzielić na etapy:
Wybór celu,
Zbieranie IVS,
Łamanie klucza,
Wybór celu
Z poziomu LiveCD należy uruchomić airodump-ng nazwa_interfejsu, na ekranie pojawi się informacja o wykrytych sieciach, w szczególności informacje o:
BSSID, czyli w praktyce adresie MAC AP,
ESSID, czyli nazwie sieci (o ile jest dostępna),
informacja o kanale, na którym działa sieć,
Pojawi się również informacja o stacjach, które w tej sieci są aktywne. Warto zapisać sobie kilka ich adresów MAC, bo przydadzą się później.
Zbieranie IVS
Aby złamać klucz WEP potrzeba trochę (dużo) IVS. "Klasyczny" atak potrzebował od 250 000 do 1 000 000, dla ataku PTW liczba 100 000 jest zwykle wystarczająca. Jak je zebrać? Można je zebrać pasywnie, można również przyśpieszyć proces zbierania poprzez atak arp replay. Jeśli w sieci jest duża aktywność, można uzbroić się w cierpliwość i czekać, ja jednak tej cierpliwości nie mam zbyt wiele... Poza tym zdając się na cierpliwość, raczej nie uda się szybko przeprowadzić ataku PTW, ponieważ po prostu nie będzie odpowiednich danych zebranych. Konieczny jest więc atak arp replay, czyli:
aireplay-ng --arpreplay -b BSSID -h MAC nazwa_interfejsu
Ważne, by adres MAC był aktywny w sieci. Nie jest to wymagane, ale wówczas należy wykonać kilka dodatkowych kroków, bo bez nich AP może najnormalniej na świecie ignorować będzie wstrzykiwane pakiety. Przed uruchomieniem tego polecenia warto jest przestawić kartę w pracę na odpowiednim kanale, czyli:
iwconfig nazwa_interfejsu channel numer_kanalu
Na początku nie dzieje się nic, ale po znalezieniu pierwszego pakietu ARP zaczyna się atak (można również odczytać pakiety ARP z wcześniej zapisanego pliku). Wówczas należy uruchomić polecenie (można i wcześniej, zamiast airodump-ng z powodzeniem można wykorzystać zwykły tcpdump):
airodump-ng -w nazwa_plikow --channel numer_kanalu -i nazwa_interfejsu
Następnie należy po prostu obserwować jak rośnie ilość zebranych danych. Niestety, airodump-ng nie informuje bezpośrednio jak wiele IVS zostało zebrane, więc w oddzielnej konsoli warto od czasu do czasu uruchamiać polecenie:
aircrack-ng *.cap
Tutaj jedna uwaga - niektóre karty (sterowniki) mają problemy z jednoczesnym sniffowaniem i wstrzykiwaniem pakietów. Ja korzystam z karty na Ralinku i jest z nią jeden problem - zanim karta zostanie podniesiona przez:
ifconfig ral0 up
musi zostać przestawiona w monitor mode przez:
iwconfig ra0 mode monitor
Jeśli to nie zostanie wykonane, wstrzykiwanie pakietów nie będzie działać, lub będzie działać do czasu, gdy uruchomiony zostanie jakiś sniffer wymagający trybu monitorującego, albo przestanie wstrzykiwać pakiety po 367 wysłanych...
Kiedy przestać? Ja bym sugerował poczekać tak do 100 000 IVS, choć skutecznie udawało mi się łamać sieci po zebraniu 40 000. To i tak trwa tylko chwilę, właśnie w jakieś 5 minut włamałem się do siebie :)
Łamanie
Teraz należy przejść pod Windows i uruchomić Caina. Zakładam oczywiście, że zebrane pakiety zostały przeniesione pod ten system lub są na kluczu USB. Tutaj w Cracker->802.11 Captures należy zaimportować zebrane pakiety, zaznaczyć zrzut na liście i przeanalizować go (Analyze). Otrzymuje się wówczas informację o zebranych IVS, w szczególności o ilości tych, które nadają się do ataku PTW. Po zaznaczeniu sieci można wybrać jeden z ataków. Jeśli wykorzystany był arp replay, to oczywiście wybrać należy PTW.
Jak to jest skuteczne?
Bardzo. W ciągu mniej niż 3 minut (142 sekundy) zebrałem właśnie 86 055 unikalnych IVS, z czego 75 403 nadaje się do ataku PTW. Atak kończy się powodzeniem...
Dlaczego filtrowanie po MAC niewiele daje?
Dlatego, że adres MAC można zmienić (co kończy dowód). Na przykład przy pomocy narzędzia macchanger, choć w linuksie ifconfig ma opcję ustawiania adresu MAC (w *BSD zresztą też). W Windows również jest to możliwe, choć tutaj już muszą wspierać to sterowniki (te do Ralinka akurat to w spierają bez większych problemów).
UWAGA
Proszę nie zadawać w komentarzach pytań co i jak zrobić, bo nie będę na nie odpowiadał. Napisałem ten tekst, by pokazać, że złamanie WEP to chwil kilka i nie można polegać na tej metodzie zabezpieczenia sieci bezprzewodowych. Każdy, kto naprawdę chce złamać sieć, zrobi to bez trudu, na podstawie dostępnych w Internecie materiałów. Google wszystko wiedzą...
UWAGA JESZCZE RAZ
Tak jak pisałem wcześniej, proszę NIE ZADAWAĆ pytań, bo nie będę na nie odpowiadał. Jeśli ktoś chce złamać WEP, a powyższa (nieco uproszczona instrukcja) jest dla niego zbyt trudna, znaczy to najprawdopodobniej, że nie powinien tego robić...