Før sikrede data kan utveksles, må det opprettes en kontrakt mellom de to datamaskinene. I denne kontrakten, som kalles en sikkerhetstilordning (SA), er begge datamaskinene enige om hvordan informasjon skal utveksles og beskyttes.
En nøkkel er en hemmelig kode eller et hemmelig nummer som kreves til å lese, endre eller godkjenne sikrede data. Nøkler brukes sammen med algoritmer (en matematisk prosess) for å sikre data. I IPSec er det to faser eller modi som bruker nøkler. Hovedmodus er den første og genererer en delt hovednøkkel som de to partene kan bruke til å utveksle nøkkelinformasjon på en sikker måte. Hurtigmodus bruker hovednøkkelen for å sikre opprettelsen av en eller flere øktsnøkler som brukes til dataintegritet eller kryptering.
Windows håndterer nøkkelgenerering automatisk og implementerer følgende nøkkelegenskaper for maksimal beskyttelse:
Viktig! | |
Snapin-modulen IP-sikkerhetspolicy kan brukes til å opprette IPSec-policyer som kan brukes på datamaskiner som kjører Windows Vista og senere versjoner av Windows, men denne snapin-modulen bruker ikke de nye sikkerhetsalgoritmene og andre nye funksjoner som er tilgjengelige på datamaskiner som kjører senere versjoner av Windows. Hvis du vil opprette IPSec-policyer for disse datamaskinene, må du bruke snapin-modulen Windows-brannmur med avansert sikkerhet. Snapin-modulen Windows-brannmur med avansert sikkerhet oppretter ikke policyer som kan brukes i tidligere versjoner av Windows. |
Dynamisk omnøkling
IPSec kontrollerer hvor ofte en ny nøkkel skal genereres under kommunikasjon, ved hjelp av en metode som kalles dynamisk omnøkling. Kommunikasjonen sendes i datablokker, der hver enkelt datablokk er sikret med en ulik nøkkel. Dette forhindrer at en angriper som har fått tak i deler av en kommunikasjon og de tilhørende øktsnøklene, får tak i resten av kommunikasjonen. Denne behovsbetingede sikkerhetsforhandlingen og automatiske nøkkelbehandlingstjenesten utføres ved hjelp av IKE, slik som definert i RFC 2409.
Ved hjelp av IPSec-policy kan du kontrollere hvor ofte en ny nøkkel genereres. Hvis ingen verdier er konfigurert, regenereres det automatisk nøkler i standardintervaller.
Nøkkellengder
Hver gang lengden på en nøkkel økes med én bit, dobles antallet mulige nøkler, slik at det blir stadig vanskeligere å finne nøkkelen. IPSec inneholder flere algoritmer slik at du kan ha korte eller lange nøkler.
Nøkkelmaterialegenerering: Diffie-Hellman-algoritme
Hvis du vil aktivere sikker kommunikasjon, må to datamaskiner ha tilgang til den samme delte nøkkelen (hurtigmodus eller øktsnøkkel) uten å sende nøkkelen over et nettverk og røpe hemmeligheten.
Diffie-Hellman-algoritmen (DH) er en av de eldste og sikreste algoritmer som brukes for nøkkelutveksling. De to partene utveksler nøkkelinformasjon åpent, som Windows i tillegg beskytter med en nummerfunksjonssignatur. Ingen av partene utveksler den virkelige nøkkelen. Etter utvekslingen av nøkkelmateriale kan imidlertid begge partene generere den samme delte nøkkelen.
DH-nøkkelmateriale som utveksles av de to partene kan baseres på 768- eller 1024-biters nøkkelmateriale, som kalles DH-grupper. Styrken til DH-gruppen er proporsjonal med styrken på nøkkelen som overføres fra DH-utvekslingen. Sterke DH-grupper kombinert med lengre nøkler, gjør det vanskeligere å bryte nøkkelen under overføringen.
Obs! | |
I dialogboksen IKE-sikkerhetsalgoritmer svarer 768 biter til innstillingen Lav (1) og 1024 biter til innstillingen Middels (2). |
IPSec bruker DH-algoritmen for å angi nøkkelmaterialet for alle andre krypteringsnøkler. DH utfører ikke godkjenning. Microsoft Windows-implementeringen av IPSec godkjenner identiteter etter at DH-utvekslingen finner sted, noe som gir beskyttelse mot angrep fra personer som trenger seg inn i midten.
Nøkkelbeskyttelse
Funksjonene nedenfor utvider primærnumrene (nøkkelmateriale) og styrken på nøklene for hoved- og øktsnøklene.
Nøkkellevetider
Nøkkellevetider bestemmer når, ikke hvordan, en ny nøkkel genereres. Ved hjelp av nøkkellevetid kan du tvinge frem nøkkelgenerering etter et bestemt intervall. Dette kalles også dynamisk omnøkling eller nøkkelgenerering. Hvis kommunikasjon for eksempel tar 10.000 sekunder og du angir nøkkellevetid på 1.000 sekunder, genereres det 10 nøkler for å fullføre kommunikasjonen. Dette sikrer at til og med en angriper kan dechiffrere deler av kommunikasjon. Resten av kommunikasjonen beskyttes. Nøkkellevetider kan angis både for hoved- og øktsnøkler. Hver gang en nøkkellevetid nås, forhandles også sikkerhetstilordningen på nytt. Nøkkelen blir i tillegg oppdatert eller generert på nytt. Mengden med data som behandles av en enkeltnøkkel bør ikke overskride 100 MB.
Oppdateringsgrense for øktsnøkkel
Det blir brukt en oppdateringsgrense for øktsnøkler fordi gjentatt omnøkling av en øktsnøkkel for hurtigmodus kan skade den delte, hemmelige Diffie-Hellman-nøkkelen.
Anne på datamaskin A sender for eksempel en melding til Bjørn på datamaskin B, og sender deretter en ny melding til Bjørn noen minutter senere. Det samme øktsnøkkelmaterialet kan brukes på nytt, fordi det nylig ble opprettet en sikkerhetstilordning. Hvis du vil begrense antall ganger dette skjer, setter du oppdateringsgrensen for øktsnøkkel til et lavt nummer.
Hvis du har aktivert hovednøkkel-PFS (Perfect Forward Secrecy), brukes ikke oppdateringsgrensen for øktsnøkkel for hurtigmodus. Hvis du setter oppdateringsgrensen for øktsnøkkel til 1, er det det samme som å aktivere hovednøkkel-PFS. Hvis det er angitt både en levetid for hovednøkkel for hovedmodus og en oppdateringsgrense for øktsnøkkel for hurtigmodus, utløses en ny prosess så snart én av disse verdiene nås. Som standard angir ikke en IPSec-policy en oppdateringsgrense for øktsnøkkel.
Diffie-Hellman-grupper
Diffie-Hellman-grupper (DH) brukes for å bestemme lengden på primærnumrene (nøkkelmateriale) for DH-utvekslingen. Styrken for en hvilken som helst nøkkel som avledes fra en DH-utveksling avhenger delvis av styrken for DH-gruppen som primærnumrene er basert på.
Hver DH-gruppe definerer lengden på nøkkelmaterialet som skal brukes. Gruppe 1 beskytter 768 biter nøkkelmateriale, gruppe 2 beskytter 1024 biter og gruppe 3 beskytter 2048 biter. Når det brukes en større gruppe, er nøkkelen som angis fra en DH-utveksling større og vanskeligere å finne ut av for en angriper.
IKE forhandler hvilken gruppe som skal brukes, basert på innstillingene du konfigurerer i dialogboksen IKE-sikkerhetsalgoritmer. Dette sikrer at det ikke oppstår eventuelle forhandlingsfeil som resultat av en ikke-samsvarende DH-gruppe mellom de to maskinene.
Hvis øktsnøkkel-PFS aktiveres, forhandles en ny DH-nøkkel i den første SA-forhandlingen for hurtigmodus. Denne nye DH-nøkkelen fjerner øktsnøkkelens avhengighet av DH-utvekslingen som utføres for hovednøkkelen.
Hvis innlederen bruker øktsnøkkel-PFS, må ikke svareren også bruke øktsnøkkel-PFS. Hvis innlederen imidlertid ikke bruker øktsnøkkel-PFS og svareren bruker øktsnøkkel-PFS, mislykkes forhandlingen.
DH-gruppen er den samme for SA-forhandlinger både for hovedmodus og hurtigmodus. Når øktsnøkkel-PFS aktiveres, påvirker den alle omnøklinger under oppretting av øktsnøkkel for hurtigmodus, selv om DH-gruppen er angitt som en del av SA-forhandlingen for hovedmodus.
PFS (Perfect Forward Secrecy)
I motsetning til nøkkellevetider bestemmer PFS hvordan, og ikke når, en ny nøkkel genereres. PFS sikrer skaden på en enkeltnøkkel bare gir tilgang til data som beskyttes av den, og ikke nødvendigvis til hele kommunikasjonen. Hvis du vil oppnå dette, sikrer PFS at en nøkkel som brukes til å beskytte en overføring, uansett modus, ikke kan brukes til å generere flere nøkler. Hvis nøkkelen som brukes i tillegg ble avledet fra et bestemt nøkkelmateriale, kan ikke dette materialet brukes til å generere andre nøkler.
Hovednøkkel-PFS for hovedmodus krever ny godkjenning og er ressurskrevende. Når den er aktivert, må IKE godkjenne identiteter på nytt, noe som øker hodet for domenekontrollere når Kerberos V5 brukes ved godkjenning. Den krever en ny hovedmodusforhandling for hver hurtigmodusforhandling som forekommer.
Øktsnøkkel-PFS for hurtigmodus kan brukes uten ny godkjenning og er mindre ressurskrevende. Øktsnøkkel-PFS resulterer i en DH-utveksling for å generere nytt nøkkelmateriale. Den krever bare fire meldinger og ingen godkjenning.
PFS må ikke aktiveres på begge maskinene, fordi den ikke er en del av SA-forhandlingen. Hvis svareren krever PFS og senderens sikkerhetstilordning for hurtigmodus utløper, avviser den senderens melding og krever ny forhandling. Senderen stopper sikkerhetstilordningen for hovedmodus og forhandler på nytt. PFS kan angis individuelt både for hovednøkler (hovedmodus) og øktsnøkler (hurtigmodus).
Nøkkelutveksling
Før sikrede data kan utveksles, må det opprettes en kontrakt mellom de to datamaskinene. I denne kontrakten, som kalles en sikkerhetstilordning (SA), er begge datamaskinene enige om hvordan informasjon skal utveksles og beskyttes.
For at du skal kunne bygge denne kontrakten mellom to datamaskiner, har IETF (Internet Engineering Task Force) opprettet en metode for sikkerhetstilordning og nøkkelutvekslingsoppløsning som kalles IKE (Internet Key Exchange), og som:
- Sentraliserer behandling av sikkerhetstilordninger, slik at tilkoblingstiden reduseres
- Genererer og behandler delte, hemmelige nøkler som brukes til å sikre informasjonen
Denne prosessen beskytter ikke bare kommunikasjon mellom datamaskiner, men også eksterne datamaskiner som ber om sikker tilgang til et firmanettverk. I tillegg fungerer denne prosessen hver gang forhandlingen for den endelige målmaskinen utføres av en sikkerhetsgateway.
Sikkerhetstilordning (SA) definert
En sikkerhetstilordning (SA) er en kombinasjon av en forhandlet nøkkel, sikkerhetsprotokoll og sikkerhetsparameterindeks (SPI), som sammen definerer sikkerheten som brukes for å beskytte kommunikasjonen fra sender til mottaker. Sikkerhetsparameterindeksen er en unik, identifiserende verdi i sikkerhetstilordningen som brukes for å skille mellom flere sikkerhetstilordninger som finnes på mottakermaskinen. Det kan for eksempel finnes flere tilordninger hvis en datamaskin kommuniserer med flere datamaskiner samtidig på en sikker måte. Dette skjer som oftest når datamaskinen er en filserver eller en server for ekstern pålogging som betjener flere klienter. I disse situasjonene bruker mottakermaskinen sikkerhetsparameterindeksen for å bestemme hvilken sikkerhetstilordning som skal brukes til å behandle innkommende pakker.
Sikkerhetstilordning for hovedmodus
IKE utfører en operasjon med to faser for å sikre vellykket og sikker kommunikasjon. Konfidensialitet og godkjenning under hver enkelt fase sikres ved å bruke krypterings- og godkjenningsalgoritmer som avtales av to datamaskiner under sikkerhetsforhandlinger. Når oppgavene deles mellom to faser, kan nøkkeloppretting utføres raskt.
I den første fasen oppretter de to datamaskinene en sikker, godkjent kanal. Dette kalles sikkerhetstilordningen for hovedmodus. IKE gir automatisk nødvendig identitetsbeskyttelse under denne utvekslingen.
Under følger en beskrivelse av en hovedmodusforhandling:
- Policyforhandling Følgende fire obligatoriske parametere forhandles som en del av sikkerhetstilordningen for hovedmodus:
- Krypteringsalgoritmen (DES, 3DES)
- Nummeralgoritmen (MD5 eller SHA1)
- Godkjenningsmetoden (Kerberos V5, sertifikat eller forhåndsdelt nøkkelgodkjenning)
- Diffie-Hellman-gruppen (DH) som skal brukes til det grunnleggende nøkkelmaterialet (768 biter Lav (gruppe 1), 1024 biter Middels (gruppe 2) eller 2048 biter Høy (gruppe 3)).
- Hvis sertifikater eller forhåndsdelte nøkler brukes til godkjenning, er datamaskinidentiteten beskyttet. Hvis imidlertid Kerberos V5-godkjenningsprotokollen brukes, er datamaskin-IDen dekryptert til kryptering av hele identitetslasten finner sted under godkjenningen.
- Krypteringsalgoritmen (DES, 3DES)
- DH-utveksling (av fellesverdier). Faktiske nøkler utveksles aldri. Det eneste som utveksles, er informasjonen som DH-nøkkelen krever for å generere den delte, hemmelige nøkkelen. Etter denne utvekslingen genererer IKE-tjenesten på hver enkelt datamaskin hovednøkkelen som brukes til å beskytte godkjenning.
- Godkjenning. Datamaskinene prøver å godkjenne DH-nøkkelutvekslingen. Uten godkjenning av DH-nøkkelutvekslingen kan kommunikasjonen utsettes for et angrep fra en person som trenger seg inn i midten. Kommunikasjonen kan ikke fortsette uten godkjenning. Hovednøkkelen brukes til å godkjenne IDer, sammen med forhandlingsalgoritmene og -metodene. Hele identitetslasten (inkludert identitetstype, port og protokoll) blir nummerert og kryptert ved hjelp av nøklene som genereres fra DH-utvekslingen i trinn to. Identitetslasten beskyttes både mot endring og tolking, uansett hvilken godkjenningsmetode som brukes.
Avsenderen presenterer en liste om en potensiell sikkerhetstilordning for mottakeren. Svareren kan ikke endre listen. Hvis listen endres, forkaster starteren svarerens melding. Svareren sender enten et svar der listen godtas eller et svar med alternativer.
Meldinger som sendes i denne fasen gjentas automatisk fem ganger. Hvis det mottas et svar før gjentakelsessyklusen avsluttes, starter standard SA-forhandlinger. Hvis IPSec-policy tillater det, starter usikret kommunikasjon etter en kort pause. Denne virkemåten kalles å gå tilbake til utgangspunktet. Selv om kommunikasjonen går tilbake til utgangspunktet, prøves sikker kommunikasjonsforhandling i intervaller på fem minutter.
Det er ingen grense for hvor mange utvekslinger som kan forekomme. Antallet sikkerhetstilordninger som opprettes, begrenses bare av systemressurser.
Sikkerhetstilordning for hurtigmodus
I denne fasen forhandles sikkerhetstilordninger på vegne av IPSec-driveren (IP-sikkerhet).
Under følger en beskrivelse av en hurtigmodusforhandling:
- Policyforhandling foregår IPSec-datamaskinene utveksler følgende krav for sikring av dataoverføringen:
- IPSec-protokollen (AH eller ESP)
- Nummeralgoritmen for integritet og godkjenning (MD5 eller SHA1)
- Algoritmen for kryptering hvis nødvendig (DES eller 3DES)
- IPSec-protokollen (AH eller ESP)
- Øktsnøkkelmateriale oppdateres eller utveksles IKE oppdaterer nøkkelmaterialet, og nye delte nøkler genereres for pakkeintegritet, godkjenning og kryptering (hvis forhandlet). Hvis det kreves ny nøkkel, skjer en ny DH-utveksling (som beskrevet i hovedmodusforhandling), eller en oppdatering av den opprinnelige DH-nøkkelen brukes.
- Sikkerhetstilordningene og nøklene sendes til IPSec-driveren, sammen med sikkerhetsparameterindeksen. Hurtigmodusforhandlingen av sikkerhetsinnstillinger og nøkkelmateriale (for å sikre data) beskyttes av sikkerhetstilordningen for hovedmodus. På samme måte som den første fasen gir identitetsbeskyttelse, gir den andre fasen, hurtigmodusfasen, beskyttelse ved å oppdatere nøkkelmaterialet før sending av data. IKE kan inneholde en nøkkelutvekslingslast for en ekstra DH-utveksling hvis ny nøkkel er nødvendig, det vil si at hovednøkkel-PFS (Perfect Forward Secrecy) blir aktivert. Hvis ikke, oppdaterer IKE nøkkelmaterialet fra DH-utvekslingen som fullføres i hovedmodus.
Hurtigmodus resulterer i to sikkerhetstilordninger, hver med sin egen sikkerhetsparameterindeks og nøkkel. Én sikkerhetstilordning brukes for innkommende kommunikasjon og den andre for utgående kommunikasjon.
Gjentakelsesalgoritmen for en melding er lik prosessen som beskrives i hovedmodusforhandling. Hvis imidlertid denne prosessen av en eller annen grunn blir tidsavbrutt under den andre eller høyere forhandlingen for den samme sikkerhetstilordningen for hovedmodus, gjøres det et nytt forsøk på forhandling av sikkerhetstilordning for hovedmodus. Meldinger for denne fasen forkastes hvis de mottas uten en opprettet sikkerhetstilordning for hovedmodus.
Hastigheten til prosessen øker hvis du bruker en enkelt sikkerhetstilordning for hovedmodus for flere SA-forhandlinger for hurtigmodus. Så lenge sikkerhetstilordningen for hovedmodus ikke utløper, er det ikke nødvendig med ny forhandling eller godkjenning. Hvor mange SA-forhandlinger for hurtigmodus som kan utføres, angis i innstillingene for IPSec-policy.
Obs! Mye omnøkling av den samme sikkerhetstilordningen for hovedmodus kan gjøre at den delte, hemmelige nøkkelen kan bli utsatt for angrep i ren tekstformat. Et kjent angrep i ren tekstformat er et sniffer-angrep der angriperen prøver å finne krypteringsnøkkelen fra krypterte data basert på kjent ren tekst.
Levetid for sikkerhetstilordninger
Sikkerhetstilordningen for hovedmodus blir lagt i hurtigbufferen for å tillate flere SA-forhandlinger for hurtigmodus (hvis ikke hovednøkkel-PFS er aktivert). Når levetiden er ute for hoved- eller øktsnøkkelen, forhandles sikkerhetstilordning på nytt. Nøkkelen blir i tillegg oppdatert eller generert på nytt.
Når standard tidsavbruddsperiode går ut for sikkerhetstilordningen for hovedmodus, eller når levetiden for hoved- eller øktsnøkkelen er ute, sendes en slettemelding til svareren. IKE-slettemeldingen ber svareren om å få sikkerhetstilordningen for hovedmodus til å utløpe. Dette hindrer at ny sikkerhetstilordning for hurtigmodus opprettes fra den utløpte sikkerhetstilordningen for hovedmodus. IKE stopper ikke sikkerhetstilordningen for hurtigmodus, fordi bare IPSec-driveren inneholder antall sekunder eller byte som har gått slik at levetiden for nøkkelen er ute.
Vær forsiktig når du angir svært forskjellige levetider for hoved- og øktsnøkler. Hvis du for eksempel setter levetiden for en hovednøkkel for hovedmodus til åtte timer og levetiden for en øktsnøkkel for hurtigmodus til to timer, kan det føre til at du har en sikkerhetstilordning for hurtigmodus i nesten to timer etter at sikkerhetstilordningen for hovedmodus er utløpt. Dette skjer når sikkerhetstilordningen for hurtigmodus genereres like før sikkerhetstilordningen for hovedmodus utløper.