WiFi WEP

Wed 04 December 2013

Her skal jeg skrive litt om WEP, de forskjellige sikkerhetsmekanismene i WEP og hvorfor WEP er en dårlig ide.

Først vil jeg definere to forkortelser som går igjen i alle WiFi artiklene her.

  • MS, mobile station, den mobile enheten, f.eks telefon, laptop og lignende
  • BS, base station, den stasjonære enheten, f.eks en trådløs ruter, basestasjon og lignende

Sikkerhetsmekanismer i WEP

Beskytte data

Wired Equivalent Privacy (WEP) krypterer datapakker på MAC laget.

Bare MS som har den rette nøkkelen kan kommunisere med basestasjonen

  • Alle MS kan se nettverkstrafikken, selv om de ikke har nøkkelen til å dekryptere
  • Siden kryptering skjer på MAC laget så er det bare den trådløse linken som er beskyttet

Klartekst blir kryptert ved hjelp av en stream cipher, RC4. RC4 er en symmetrisk kryptering, som betyr at det er samme nøkkelen som krypterer og dekrypterer dataene.

  • en ny RC4 nøkkel er generert for hver pakke for å unngå synkroniseringsproblemer ved pakketap
  • standard nøkkellengde er 40-bit, men det er også implementert variant med 104-bit hvor en legger til en 24-bit vektor til de allerede eksisterende 40-bit
  • pseudorandom sekvens utledet av RC4 nøkkelen blir XORet med datastrømmen

SSID og annen management trafikk er ukryptert.

Integritet av data

For å beskytte mot at dataene blir endret kalkuleres det en Integrity Check Value (ICV) basert på dataene. Denne ICV er en Cyclic Redundancy Check (CRC) sum.

Dataene og ICV blir satt sammen før krypteringen. Mottaker kalkulerer cå CRC på nytt, og verifiserer at den er lik den som han har mottatt.

Krypteringsprosessen

Kryptering

  • En 24-bit Initialization Vector (IV) blir satt sammen med 40-bit nøkkelen sånn at man ender opp med en 64-bit RC4 nøkkel
  • En 2-bit nøkkel ID spesifiserer at det er standard pre-shared key (PSK) som er i bruk
  • ICV, en 4-byte CRC legges til før kryptering
  • Frame Check Sequence (FCS), en 4-byte CRC legges til etter kryptering

Dekryptering

Man reverserer krypteringsprosessen.

  • IV legges til den hemmelige nøkkelen, og sendes til RC4 algoritmen for å regenerere nøkkelstrømmen
  • Nøkkelstrømmen blir XORet med den krypterte meldingen
  • ICV blir kalkulert på ny og sjekket opp mot den tidligere kalkulerte verdien for å kontrolle om noen har tuklet med dataene på veien

Autentisering

Vi har to forskjellige modus for autentisering når vi bruker WEP.

  • Åpent, det vil si ingen autentisering, eventuelt kan man filtrere på mac-adresse
  • Shared-key, basert på WEP, og krever at både BS og MS støtter WEP

BS sender et tilfeldig generert nummer til MS, dette kalles en "challenge".

MS krypterer dette nummeret med pre-shared WEP key og sender dette tilbake til BS, dette kalles en "response".

BS verifiserer at han kan dekryptere nummeret (om den greier dette er det kryptert med den rette nøkkelen), og så kontrollerer den om det dekrypterte nummeret er det samme som ble sendt som challenge. Om alt er ok, er MS autentisert mot basestasjonen.

Sikkerhetsproblemer med WEP

shared-key autentisering

Problemene

  • WEP impliserer at basestasjonen alltid oppfører seg korrekt.
  • En kan autentisere MS for å forsikre seg om at kun autoriserte enheter får tilgang til nettverket, men MS kan ikke autentisere basestasjonen
  • Nøkkelen som blir brukt for autentisering er den samme som blir brukt for å besyktte dataene. Dette er ingen god ide
  • Siden nøkkelen XORes kan en angriper gjenskape nøkkelstrømmen dersom han har tilgang til en kjent klartekst, og tilhørende krypterttekst. Dette kan han skaffe seg ved å utnytte challenge-response i autentiseringsmekanismen.
  • Shared-key autentisering gir ingen garanti for at etterfølgende data kommer fra den autentiserte enheten (MS).

Fiksen

  • Gjensidig autentisering, BS og MS må kunne autentisere hverandre
  • Et system for å holde på autentisert identitet, for eksempel en form for hemmelig token som sendes i hver dataframe
  • Forskjellige nøkler for autentisering og kryptering

ICV

Problemet

  • CRC er en lineær funksjon av dataene det genereres sum over. Det er derfor mulig å gjøre kontrollerte endringer i teksten uten å få en ugyldig CRC sum

Fiksen

  • Integritetessjekken bør være basert på en ikke-lineær hash funksjon

Replay

WEP har ingen beskyttelse mot replay angrep fordi det ikke er implementert noen regler for sekvensiering. En pakke vil bli akseptert selvom den har en IV verdi som er mindre en tidligere pakker.

Nøkkelhåndtering

Det finnes ikke noe system for å håndtere nøkler. Hver enhet må statisk skrives inn på alle enheter som skal bruke den.

Alle enheter som kobler til samme basestasjonen bruker den samme nøkkelen, og kan derfor dekryptere hverandres trafikk.

Gjenbruk av IV og RC4 nøkler

Problemet

Dette er en svakhet i RC4 og en angriper kan enkelt knekke den om han får tak i nok trafikk fra nettverket.

  • PSK er statisk, og endres veldig sjelden
  • RC4 nøkkelstrømmen avhenger av IV
  • Det er bare 2^24 mulige IVer, noe som fører til at IVer blir gjenbrukt etter 17 millioner pakker
  • To pakker som har samme IV vil mest sansynlig også ha samme RC4 nøkkel

Svakhet i RC4 nøkler

En liten del av en nøkkel bestemmer mange av bitsene som tilslutt ender opp som pseudorandom data fra RC4 algoritmen.

Om angriperen får mange pakker med svake RC4 nøkler er det mulig å gjenskape den statiske / hemmelige delen av nøkkelen utifra den kjente delen (IVen).

Tiden det tar å cracke WEP er en lineær funksjon av nøkkellengden fordi angrepet cracker de individuelle bytesene i nøkkelen. Dette fører til at det ikke hjelper nevneverdig å øke nøkkellengden.

Det finnes mange gratisprogrammer for å cracke RC4 WEP nøkler, for eksempel Aircrack-ng og AirSnort.

Det har blitt demonstrert at man kun trenger 50.000-200.000 pakker for å cracke en 40-bit WEP nøkkel, og tilsvarende 200.000 - 700.000 for en 104-bit nøkkel.

Angrep mot WEP

Eavesdropping

Er et type passivt angrep hvor angriperen sitter innenfor rekkevideo av radiosenderen og lytter på trafikken. Han kan utnytte dataene i realtime, eller lagre de til senere bruk.

Analysering av trafikk

Er også et type passivt angrep hvor angriperen monitorerer trafikken på det trådløse nettverket. Angriperen ser her etter mønster i trafikken for å finne ut hva offeret driver med. For eksempel vil korte topper kunne indikere en type instant messaging eller terminal sesjon, mens en mer jevn trafikkstrøm kan tyde på video, nedlasting eller lignende.

Manipulering / Man in the middle

Er et aktivt angrep hvor angriperen mottar offerets krypterte data, manipulerer de, og sender de manipulerte dataene tilbake til offeret.

Angriperen kan også velge å manipulere pakkedataene slik at de blir sendt til en adresse han spesifiserer. Dataene er kryptert på det trådløse nettet, men i det øyeblikket de går ut på internett er de ukryptert. Angriperen kan lure brukeren til å legge igjen sensitiv informasjon på falske websider som er kontrollert av angriperen.

Denial of Service

Alle de vanlige DoS angrepene vil også fungere på trådløse nettverk.

Noen sikkerhetstiltak

  • Aksesskontroll på MS
    • brannmur, overvåking av data in/ut, blokkering
  • SSL og SSH
    • krypter trafikken mellom deg og tjenesten du skal bruke
  • Akesskontroll på BS
    • Lukket nettverk / Skjult SSID
      • SSID sendes i klartekst til MS som vil koble seg på nettverket
      • En angriper kan lett sniffe pakker for å se skjulte SSID
    • Filtrering på mac-adresse
      • mac-adresser sendes i klartekst selvom WEP er aktivert
      • Det er enkelt å endre en mac-addresse dersom en vil gi seg ut for å være en annen

Konklusjon

WPA er ut, har vært det lenge og man bør slutte å bruke det.

Tagged as : wep security sikkerhet wifi