Hacking Wireless Networks for MIT’ers
IT-Security
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
Inhoudsopgave Inhoudsopgave ........................................................................................................................................ 2 Inleiding ................................................................................................................................................... 3 Benodigdheden ....................................................................................................................................... 3 Overzicht standaarden ............................................................................................................................ 4 802.11 .................................................................................................................................................. 4 WEP (Wired Equivalent Privacy).......................................................................................................... 5 WPA (Wi-Fi Protected Access) / WPA2 ............................................................................................... 5 Installatie draadloze AP (WEP) ................................................................................................................ 6 WEP key onderscheppen....................................................................................................................... 10 WPA-PSK key onderscheppen ............................................................................................................... 14 Dictionary Attack ............................................................................................................................... 15 John the Ripper (Brute Force Attack) ................................................................................................ 15 Conclusie & Raadgeving ........................................................................................................................ 16
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
Inleiding In deze korte tutorial zullen we uitleggen hoe het mogelijk is met behulp van het programma Backtrack en een wireless kaart een WEP beveiligd netwerk te analyseren en aan te tonen dat deze vorm van beveiliging niet voldoende is met de hedendaagse computertechnologie. Er zijn al heel veel verschillende artikels online te vinden waar het gebruik van WEP beveiliging bij draadloze netwerken heel sterk wordt afgeraden. Uitspraken zoals ‘op minder dan 3 minuten tijd is een WEP sleutel gekraakt en heeft een hacker toegang tot uw systeem’ of ‘de dood van de WEB beveiliging?’ zijn enkele voorbeelden daarvan. Er is echter nergens een duidelijke voorbeeld te vinden hoe, en we hopen daar in dit document klaarheid in te brengen. Let op, gebruik deze handleiding enkel voor academische doeleinden en nooit als middel om in te breken in netwerken waar u geen toegang tot heeft!
Benodigdheden Voor deze opstelling zijn de volgende apparaten en software nodig: -
Een pc met minstens 2Gb ram en 16GB vrije schijfruimte Draadloze kaart op USB met packet injection Een huis- tuin- en keukenrouter (wij gebruiken een Linksys 54G)
-
Visualisatie software (als je meerdere OS’en hebt staan) Backtrack 4 installatieschijf
Onze opstelling bestaat uit de volgende zaken: -
Dell XPS M1710 op Windows 7 Alfa AWUS036H-V5 1000mW USB Wireless Adapter met 5 dBi Antenne Linksys 54G router
-
VirtualBox met Backtrack 4
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
Overzicht standaarden Alvorens aan de slag te gaan met draadloze netwerken overlopen we nog even snel de aanwezige standaarden van het draadloos netwerk. 802.11 Dit is een IEEE nummer, die bepaalde standaarden omvat die werden uitgegeven door de Institute of Electrical and Electronics Engineers. De huidige 802.11-familie omvat 6 draadloze modulatietechnieken die allemaal hetzelfde protocol gebruiken. De op dit moment populairste (en meest productieve) technieken zijn omschreven in de a, b en g uitbreidingen op de originele standaard. Een veiligheidsprotocol werd toegevoegd en later verbeterd door de 802.11i toevoeging. Andere standaarden (c–f, h–j, n) uit dezelfde familie zijn verbeteringen en uitbreidingen of correcties van vorige specificaties. De verschillen in standaarden voor draadloze communicatie worden in de volgende tabel beschreven:
802.11 legacy is de originele versie van de standaard, vastgelegd in 1997, en specificeert 2 snelheden: 1 en 2 MBps te verzenden met signalen in de "Industrial Scientific Medical frequency band" op de frequentie 2.4 GHz. In de 802.11 standaard worden ook de frequenties vastgelegd waarop het verkeer zal geschieden, zoals vb. alle verschillende frequenties van de kanalen. Omdat de IEEE enkel standaarden voorschrijft en geen toestellen test om te kijken of ze voldoen aan de standaard werd de Wi-Fi Alliance opgericht. Tegen betaling kunnen bedrijven lid worden en hun apparatuur laten testen. Zo goed als alle bedrijven die draadloze producten uitbrengen zijn lid van deze groep. Het Wi-Fi handelsmerk dat eigendom is van de groep mag gebruikt worden op apparatuur die getest en goedgekeurd is.
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
WEP (Wired Equivalent Privacy) WEP is een standaard die door de commissie niet meer wordt ondersteunt, omdat de veiligheid al meermaals niet toereikend werd aangetoond! WEP gebruikt de RC4 stroomcypher voor de confidentialiteit (dat niemand kan meelezen), en een CRC-32 checksum om de volledigheid van de data aan te tonen (zodat niemand de bestanden kan wijzigen). Er zijn verschillende versies van WEP, die veranderen met de lengte van de key die wordt gebruikt. Er kunnen keys gebruikt worden van 64 bit, 128 bit en 256 bit. De standaard waarmee WEP werd gelanceerd was 64 bit, maar dit werd later opgeheven. Een 64 bit WEP gebruikt een 40 bit key om te versleutelen en een 24 bit key om de stream cypher te doen werken. Authenticatie in WEP kan op 2 manieren gebeuren: via een open een een Shared key authenticatie. Bij de Shared key modus word de key gebruikt voor authenticatie, dit gebeurt als volgt: Er wordt een vier-weg challenge-response handdruk gebruikt: • • • •
De client authenticatie stuurt een verzoek naar de Access Point. De Access Point stuurt een clear text challenge. De client heeft de challenge voor het coderen van tekst met behulp van de geconfigureerde WEP-sleutel, en stuurt het terug in een ander authenticatieverzoek. De Access Point decodeert het materiaal, en vergelijkt deze met de clear text die werd verstuurd. Afhankelijk van het succes van deze vergelijking, stuurt de Access Point een positieve of negatieve reactie.
Na de authenticatie en associatie, wordt de vooraf gedeelde WEP-sleutel ook gebruikt voor het versleutelen van de gegevens met behulp van RC4. WPA (Wi-Fi Protected Access) / WPA2 WPA implementeert de verplichte elementen van 802.11i. In het bijzonder houdt dit een nieuw op AES gebaseerd algoritme, CCMP, dat volledig veilig wordt beschouwd. Certificering begon in september 2004. Vanaf 13 maart 2006 is WPA2 certificering verplicht voor alle nieuwe apparaten die het Wi-Fi-handelsmerk dragen. Pre-Shared Key mode (PSK, ook bekend als Personal-modus) is ontworpen voor thuis en kleine kantoren netwerken die niet de complexiteit van een 802.1X-authenticatie server vereisen. Elk draadloos netwerk apparaat versleutelt het netwerkverkeer via een 256 bits sleutel. Deze sleutel kan worden ingevoerd als een reeks van 64 hexadecimale cijfers, of als een wachtwoord van 8 tot 63 afdrukbare ASCII-tekens. Als ASCII-tekens worden gebruikt, de 256 bit-sleutel wordt berekend door de toepassing van de PBKDF2 afleiding functie op het wachtwoord, met behulp van de SSID als de ‘salt’ en 4096 iteraties van HMAC-SHA1. Als een zwak wachtwoord word gekozen, kan dit nog altijd onveilig zijn, omdat er tabellen kunnen worden gegenereerd met de meest voorkomende wachtwoorden, zie verder.
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
Installatie draadloze AP (WEP)
1. AP (access point) aan het lichtnet hangen (stroom voorzien) & utp kabel van het apparaat met je persoonlijke pc connecteren. 2. Je IP settings dienen nu aangepast te worden naar de default range van de AP. We doen dit via Configuratiescherm/netwerkadapters/ en we kiezen voor de instellingen van de wired adapter. Pas deze hieraan aan:
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
3. Vervolgens verbinden we naar het adres 192.168.1.245 via onze web browser. Gebruik als gebruikersnaam “” en paswoord “admin”.
4. We gaan de instellingen wijzigen zoals in onderstaande screenshots:
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
Als netwerksleutel hebben we nu dus “1234567890”
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
Dit veranderen we naar onze eigen keuze, bijvoorbeeld zoals hier “AdminPieter”. Alle andere instellingen laten we staan op de standaard waarden. 5. Vervolgens zetten we de instellingen van onze interne netwerkkaart terug op automatisch.
6. Plaats de utp kabel van de AP in 1 van de aanwezige netwerkpoorten van je huidige netwerkinfrastructuur. 7. Connecteer nu met je laptop via de draadloze AP “UpInTheAir” met het internet. 8. Genereer voldoende traffiek door regelmatig een website te openen.
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
WEP key onderscheppen 1. Start Backtrack v4 met de Alfa via USB aangesloten op je PC 2. Open een terminal en typ de volgende commano’s: ifup eth0 airmon-ng
(zet de huidige verbindingen actief) (geeft netwerkinterfaces weer)
We kiezen hier voor wlan0 3. Verander het MAC adres alvorens door te gaan en zet de kaart in monitor mode: macchanger --mac 00:11:22:33:44:55 wlan0 iwconfig wlan0 mode monitor
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
4. Start het dump proces: airodump-ng wlan0 5. We krijgen nu een lijst met alle AP’s en apparaten geconnecteerd met die AP’s. Hieruit noteren we onze doel AP (UpInTheAir) met zijn bijhorende gegevens zoals het BSSID, het CH(annel), de ENC(ryptie) en de ESSID.
Onze gegevens: BSSID: 00:90:4C:91:00:01 CH: 11 ENC:WEP ESSID: UpInTheAir
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
6. Blokkeer nu deze AP en sla alle data pakketten op . Deze file zal standaard opgeslagen worden in de map waar je de console geopend hebt. airodump-ng -w wep -c 11 --bssid 00:90:4C:91:00:01 wlan0 waarbij –w staat voor de filename, -c voor het channel, en –bssid voor de naam van de AP
We zien onmiddellijk dat Backtrack datapakketten begint te onderscheppen. Onderaan zien we de MAC adressen die momenteel geconnecteerd zijn met onze AP. Als we de MAC filtering van de router willen omzeilen (indien deze aanstaat), dan kan je een van deze adressen gebruiken. 7. Open nu een nieuwe terminal voor de connectie met de AP aireplay-ng -1 0 -a 00:90:4C:91:00:01 wlan0
8. Open nu (nogmaals) een nieuwe terminal voor pakket injectering (zo zal er meer trafiek gegenereerd worden) aireplay-ng -3 -b 00:90:4C:91:00:01 wlan0
Na even wachten zullen er nu heel veel pakketten worden uitgewisseld met de AP.
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
9. Wacht tot er in de eerste terminal meer dan 30 000 pakketten zijn opgeslagen. Dit kan 5 tot 40 minuten duren. Als er veel traffiek is op de AP zal dit dicht bij de 5 minuten liggen.
10. Start nu een terminal venster en typ het commando om het opgeslagen bestand met de data te analyseren. Dit kan terwijl de pakket injectering nog steeds loopt en er nog steeds data wordt opgeslagen!! aircrack-ng wep-01.cap
(file kan enigszins anders zijn)
11. Indien er voldoende data is zal de key nu getoond worden. Indien niet, laat dan nog wat meer data verzamelen, de computer zal automatisch binnen een aantal minuten opnieuw proberen als er meer data opgeslagen is.
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
WPA-PSK key onderscheppen Om WPA te kraken heb je veel meer computer rekenkracht nodig, dit zal ook niet binnen de 10 min te doen zijn (wat voor WEP meestal wel de zaak is). Er zijn een aantal manieren om dit te doen, wij bespreken de bekendste, Dictionary Attack en Brute Force Attack. Een andere vereiste om de WPA sleutel te onderscheppen (buiten tijd en computerkracht) is dat er minstens 1 client verbonden moet zijn met de AP. 1. Verander het MAC adres en zet dit in monior mode: airmon-ng stop wlan0 ifconfig wlan0 down macchanger --mac 00:11:22:33:44:55 wlan0 airmon-ng start wlan0 2. Zoek nu naar de gewenste AP. Ook nu kiezen we voor “UpInTheAir”, maar ditmaal is de AP ingesteld op een WPA PSK key. Schrijf ook deze keer de BSSID en CH van de AP op! airodump-ng wlan0 3. Begin nu met alle verkeer van deze AP te onderscheppen en op te slagen: airodump-ng -w wep -c 11 --bssid 00:90:4C:91:00:01
wlan0
4. Vervolgens gaan we de client die verbonden is met de AP deauthenticeren. Hierdoor zal deze zich (automatisch) terug authenticeren en zal de Handshake onderschept worden. Deze actie is niet echt noodzakelijk, maar het alternatief is wachten tot de client zich nog eens opnieuw aanmeld bij de AP. Daarop gaan we niet wachten… aireplay-ng -0 10 -a 00:90:4C:91:00:01
wlan0
5. Als de client is gedeauthenticeerd, zie je dit in het eerste terminalvenster (die de data onderschept) bovenaan dat de handshake werd onderschept. Nu kunnen we beginnen om het paswoord te vinden. Dit kan op twee manieren: Via een bibliotheek met paswoorden (Dictionary Attack), ofwel met een programma dat “John the Ripper” heet, welke een brute force attack zal uitvoeren om met elke combinatie van wachtwoorden het bestaande paswoord te vinden.
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
Dictionary Attack Bij deze aanval maken we gebruik van paswoordbibliotheken. Er zit een standaard bibliotheek met paswoorden in BackTrack 4, dit is echter maar een beperkte collectie. We kunnen ze uitbreiden met bibliotheken die we van het internet halen. Plaats deze in de map “/pentest/wireless/cowpatty“ onder de naam “dict”. Sommige van deze bibliotheken hebben al voorgecompileerde hashes, deze worden rainbow tables genoemd. Om de brute-force aanval te starten, voer je dit commando uit: aircrack-ng (bestandsnaam) -w /pentest/wireless/cowpatty/dict Als het wachtwoord gevonden werd, zal de boodschap getoond worden. Let wel op, dit is een brute force aanval die puur afhangt van de dictionary die je gebruikt. Gebruik daarom een hele grote bibliotheek, maar hou er rekening mee dat die ook enkele GB groot kan zijn (soms zelfs tot 1TB)! Soms zijn deze bibliotheken zelf totaal nutteloos omdat de PSK’s gehasht worden samen met de ESSID (de naam van het netwerk). Als de AP dus geen standaard naam meer heeft (zoals vb. “linksys”), dan moet je toch de hele tabel opnieuw maken. John the Ripper (Brute Force Attack) John the Ripper is een password cracker tool, die op basis van bestaande woordenlijsten ook afgeleide woorden kan produceren, met behulp van ‘word mangling’ (het door elkaar schudden van woorden). Dit programma kan ook menselijke vervormingen produceren, wat voor wachtwoorden veel word gedaan. Vb. het wachtwoord “ThuisNetwork” vervangt men door “Thu1sN3tw0rk”, omdat dit moeilijker te kraken is. John the Ripper doet dit dus ook, en alle regels voor vervangingen zijn instelbaar via reguliere expressies. Om deze techniek te gebruiken zullen we het volgende commando nodig hebben: /pentest/password/jtr/john --stdout --incremental:all | aircrack-ng -b (BSSID) -w (bestandsnaam).cap Dit zorgt ervoor dat alle output die John the Ripper produceert in aircrack wordt geplaatst (piping). Dit proces kan (extreem) lang duren en is volledig afhankelijk van de pc rekenkracht, omdat alle mogelijkheden worden uitgeprobeerd. Als we rekenen dat er meer dan 64 karakters mogelijk zijn voor een key, dan maak dit 64^36 mogelijkheden.
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel
Hacking Wireless Networks for MIT’ers
IT-Security
Conclusie & Raadgeving Wat al meermaals beweerd en bewezen was is ook hier gebleken, WEP beveiliging is echt ondermaats en ook WPA is niet veilig meer. Ook de hoog opgehemelde MAC filtering blijkt met Backtrack gemakkelijk te omzeilen. Het blijkt een trend te zijn in IT beveiliging dat het slechts een kwestie van tijd is alvorens een beveiliging kan doorbroken worden. Moeten we dan gewoon niet meer beveiligen? Neen! Beveiliging is nodig, zeker bij draadloze overdracht! Als er door omstandigheden toch voor een WEP beveiliging moet gekozen worden (bijvoorbeeld als een client zoals een Nitendo DS, welke enkel WEP aankan, wilt verbinding maken) dan is het raadzaam om een key van 128-bit’s te gebruiken. Uit onze labo’s bleek dat deze meer dan 2u aan kraaktijd nodig heeft, wat al een stuk beter is dan de 10 minuten waarin een 64-bit key gekraakt wordt. WPA is enkel veilig als men afstapt van de standaard AP naam en een niet-standaard wachtwoord kiest. Of toch zeker geen paswoord dat in een woordenboek te vinden is. MAC filtering kan een extra struikelblok zijn voor mogelijke hackers, al is dit voor de ‘betere’ slechts een paar klikken meer. We moeten natuurlijk ook concluderen dat er nog genoeg onbeveiligde netwerken zijn die al eerst gekozen zullen worden bij een kraak. Met een klein beetje moeite ligt jouw beveiliging gemakkelijker hoger dan 70% van de aanwezige AP’s. Of ze daarbij volledig sluitend is kan natuurlijk ontkracht worden. De vraag rijst dan natuurlijk welke vorm van beveiliging 100% veilig is. Je draadloos netwerk uitschakelen blijkt nog steeds de meest effectieve actie als een verdacht busje met verschillende antennes al enkele dagen voor je huis staat… al is dat dan meestal gewoon de plaatselijke radioamateur die met Frank De Winne probeert te praten. En daar ligt niemand wakker van.
Pieter Sijmons – Thomas Van De Steene – Nils Van Butsel