अक्सर पूछे जाने वाले प्रश्न
For et par år siden publiserte et team av sikkerhetseksperter en artikkel som beskriver et angrep som kan bryte en IKEv1 Aggressive Mode Pre-Shared Key-tilkobling, og som ikke kunne brukes på samme måte mot en IKEv1 Main Mode Pre-Shared Key-tilkobling. Dette førte til den feilaktige antagelsen om at Aggressive Mode i utgangspunktet er mye mer usikker enn Main Mode. Men hvis man ser på fakta nøytralt, stemmer ikke denne påstanden overens med virkeligheten. Det mange ikke vet, er at en del av dette angrepet var muligheten til å gjette Pre-Shared Key (PSK) ved hjelp av et "brute force"-angrep, og et slikt angrep bare kan lykkes hvis PSK er valgt for usikkert. En PSK er også bare et passord, og som med alle passord gjelder det at dårlige passord fører til lav sikkerhet. Så lenge PSK er minst 14 tegn langt (jo mer jo bedre), består av små bokstaver, store bokstaver og tall, og er generert helt tilfeldig (slik at den ikke kan gjettes lett), og så lenge SHA1 brukes som hash-algoritme i fase 1 (eller bedre, vi anbefaler SHA-256 hvis mulig), er det ingen grunn til å anta at en Aggressive Mode PSK-tilkobling i utgangspunktet er mindre sikker enn en Main Mode PSK-tilkobling. Hvis du vil være helt sikker, kan du ganske enkelt velge autentisering basert på sertifikater hvis mulig, da dette angrepet ikke er gjennomførbart i det hele tatt.
Teknisk bakgrunn:
Pre-Shared Key (PSK) er ikke et passord som brukes til å kryptere data. Den brukes utelukkende til autentisering, omtrent slik en bruker logger på en nettside med et passord. Under fase 1 må begge sider bevise for hverandre at de kjenner PSK. Dette kan naturligvis ikke skje ved at den ene siden sender den til den andre, fordi selv om den andre siden ikke kjente den før, vil den kjenne den nå. I stedet må begge sider beregne et tall (en såkalt hash-verdi), der data som allerede er utvekslet mellom sidene brukes (og som er forskjellige ved hver tilkobling for å sikre at hash-verdien også er forskjellig hver gang) og selve PSK. Bare denne hash-verdien sendes til den andre siden, som da må utføre nøyaktig de samme beregningene. Hvis resultatet er det samme, må den andre siden ha brukt den samme PSK i beregningen, altså kjenner den den. Det samme skjer så igjen i motsatt retning, men beregningen avviker litt her for å garantere at begge hash-verdiene alltid er forskjellige, da det naturligvis ikke ville bevise noe å sende tilbake samme verdi.
Forskjellen mellom Main Mode og Aggressive Mode er rett og slett at i Main Mode overføres hash-verdien kryptert, fordi nøkkelutvekslingsprosessen (DH Exchange) som fører til en sikker sesjonsnøkkel på begge sider allerede er fullført på dette tidspunktet, og så snart begge sider har en sesjonsnøkkel, overføres alle pakker kun kryptert. Med Aggressive Mode overføres hash-verdien ukryptert, da nøkkelutvekslingen ennå ikke er fullført på dette tidspunktet. Ved å avlytte en Aggressive Mode-tilkobling kan en angriper få både hash-verdien og alle data som er nødvendige for å beregne denne verdien, unntatt selve PSK. Men det betyr ikke at tilkoblingen er brutt ennå. Angriperen har bare nok informasjon til å søke etter PSK, for eksempel ved hjelp av et såkalt "brute force"-angrep (prøve alle mulige kombinasjoner) eller et ordbokangrep (prøve ofte brukte passord som man kan finne gjennom datalekkasjer fra andre nettjenester). Bare hvis PSK er for svak til å motstå disse angrepene, kan tilkoblingen brytes. Derfor er en god og tilstrekkelig sikker PSK essensiell for sikkerheten til en PSK VPN-tilkobling.
Imidlertid er det samme angrepet også mulig på en Main Mode-tilkobling, men det krever litt mer innsats. I tilfelle Main Mode er det ikke nok å bare kunne avlytte trafikken, man trenger et såkalt Man-in-the-Middle (MitM)-angrep, dvs. at en angriper må kunne fange opp og manipulere trafikken. Gjennom et MitM-angrep kan en angriper omgå krypteringen, noe som ikke er nok til å få tilgang til VPN-en, da PSK fortsatt er nødvendig for det, fordi fase 1 ikke vil fullføres uten den. Men selv da ville en angriper ha hash-verdien og alle data som er nødvendige for å beregne den, og kunne prøve å gjette PSK på samme måte som i tilfelle en Aggressive Mode-tilkobling. Og hvis en angriper allerede er i stand til å avlytte all trafikk (som er en grunnleggende forutsetning for ethvert angrepsscenario), er det svært sannsynlig at han også kan utføre et MitM-angrep, og da vil Main Mode ikke gi noen ekstra beskyttelse.
En PSK med 11 tilfeldige alfanumeriske tegn har en entropi på ca. 64 bits, som tilsvarer 2^64 mulige verdier. Moderne grafikkort (per 2016) kan beregne i størrelsesorden 1 milliard SHA-265 hash-verdier per sekund. I gjennomsnitt må man prøve 50 % av alle muligheter for å finne en match, og det ville ta 292 år. Men hvis en angriper har tilgang til 100 slike grafikkort, vil angrepet "bare" ta rundt 3 år. Men allerede ved 14 tegn er entropien på 80 bits, og her trenger et enkelt grafikkort 19 154 798 år. Selv ikke 10 000 grafikkort ville forkorte tiden tilstrekkelig. Og man må aldri overse kostnadene ved et slikt angrep. Ikke så mye kjøpskostnaden for grafikkortene, men heller strømforbruket når alle disse grafikkortene kjører med maksimal effekt 24 timer i døgnet i årevis, tiår eller til og med århundrer. Det kan raskt bli milliarder av euro i strømkostnader bare for å bryte en enkelt PSK-tilkobling i hele verden. I tillegg må angriperen starte helt på nytt hver gang PSK endres. Så hvis PSK kun skiftes én gang i året, har en angriper maksimalt ett år til å finne den; det ville være svært ambisiøst, selv med en svak PSK.