Kapittel 8 · Sikkerhet

Sikkerhet i datanettverk

Hvordan kryptografi, digitale signaturer, TLS, IPsec og brannmurer samarbeider for å beskytte data som reiser gjennom et nettverk fullt av potensielle angripere.

Overblikk

Det store bildet

Nettverkssikkerhet handler om å beskytte data som reiser gjennom et nettverk fullt av potensielle angripere — med fire verktøy som hver løser ett bestemt problem.

I læreboken (kap. 8.1) møter du ofte CIA-triaden som rammeverk: Confidentiality (konfidensialitet — bare autoriserte kan lese innholdet), Integrity (integritet — innholdet er autentisk og uendret), og Availability (tilgjengelighet — tjenester er tilgjengelige for legitime brukere). De fire egenskapene vi bruker i dette kapittelet (konfidensialitet, autentisering, meldingsintegritet, tilgjengelighet) overlapper med CIA: autentisering og integritet støtter særlig I-delen, mens tjenestenekt (DoS) er et typisk angrep på A-delen.

Tenk deg at du skal sende en verdifull diamant gjennom et postsystem fullt av tyver. Du trenger: (1) en låst boks som bare mottakeren kan åpne (kryptering), (2) en forsegling som viser om noen har åpnet boksen underveis (integritet / MAC), (3) en måte å bevise at det virkelig er du som sendte den (autentisering / digitale signaturer), og (4) vakter ved døren som sjekker hver eneste pakke (brannmurer). Hvert sikkerhetsverktøy løser ett spesifikt problem.

Alice avsender Bob mottaker Konfidensialitet Integritet Autentisering kryptert melding Trudy angriper avlytting manipulering Brannmur
Alice sender en kryptert, integritetssikret og autentisert melding til Bob. Trudy (angriperen) sitter i midten og forsøker å avlytte eller manipulere, men kryptering, MAC og digitale signaturer beskytter meldingen. En brannmur hos Bob filtrerer uønsket trafikk.
Eksempel fra virkeligheten

Når du ser hengelåsen i nettleseren din på ntnu.no, betyr det at TLS er aktiv. Nettleseren og serveren har gjennomført et handshake der de ble enige om krypteringsnøkler — og nå er alt du sender kryptert slik at ingen på WiFi-nettverket kan lese det.

Verktøykassen — fire lag med sikkerhet

Symmetrisk kryptering (f.eks. AES) — rask, men krever at begge parter har samme hemmelige nøkkel.

Offentlig nøkkelkryptografi — løser nøkkelfordeling og digitale signaturer; pensum utelater detaljert utledning av RSA, men prinsippet om nøkkelpar er sentralt i TLS og sikker e-post.

Meldingsintegritet og digitale signaturer (bl.a. HMAC og hash + signatur) — garanterer at innholdet ikke er endret og at avsenderen kan verifiseres.

Brannmurer (kap. 8.9.1) — tilstandsløs og tilstandsfull pakkefiltrering, applikasjons-gateway og ACL-regler som styrer hvilken trafikk som slipper gjennom.

Flashcards

Rask repetisjon

Åpne spørsmål i tilfeldig rekkefølge. Klikk kortet for å snu — bruk ← / → for å bla, mellomrom for å snu, R for å shuffle.

Spørsmål

 

Klikk eller mellomrom for å vise svar
Svar
 
1 / 1

Test deg selv

Sjekk om du har forstått de viktigste konseptene fra dette kapittelet.

Spørsmål 1 · Lett
Hva er CIA-triaden?
CIA-triaden er de tre grunnmålene i informasjonssikkerhet: Konfidensialitet (kun autoriserte kan lese data), Integritet (data kan ikke endres uten oppdagelse) og Tilgjengelighet (systemer skal være tilgjengelige når de trengs). Alle sikkerhetstiltak kan knyttes til ett eller flere av disse målene.
Spørsmål 2 · Middels
Hva er symmetrisk kryptering, og når brukes den?
I symmetrisk kryptografi bruker sender og mottaker den samme hemmelige nøkkelen KS til både kryptering og dekryptering: m = KS(KS(m)). Den er rask — ofte tusen ganger raskere enn offentlig-nøkkel — og brukes derfor til å kryptere selve dataene i TLS, IPsec, WiFi og sikker e-post. AES er den dominerende algoritmen i dag. Ulempen: begge parter må bli enige om nøkkelen på forhånd, noe som er vanskelig hvis de aldri har møttes — derfor kombineres symmetrisk med offentlig-nøkkel-kryptografi i hybridoppsett.
Spørsmål 3 · Vanskelig
Hva er asymmetrisk kryptering, og hva brukes det til?
Asymmetrisk kryptografi bruker et nøkkelpar: offentlig nøkkel (kan deles fritt) og privat nøkkel (holdes hemmelig). Det er nyttig for nøkkeldeling (krypter sesjonsnøkkel med mottakers offentlige nøkkel) og digitale signaturer (signer med privat nøkkel, verifiser med offentlig). Ulempen er at det er mye tregere enn symmetrisk kryptering.
Spørsmål 4 · Middels
Hva er hybrid kryptering?
Hybrid kryptering kombinerer offentlig-nøkkel og symmetrisk kryptografi for å få det beste fra begge. Avsender (1) genererer en tilfeldig symmetrisk sesjonsnøkkel KS, (2) krypterer selve meldingen raskt med KS (f.eks. AES), og (3) krypterer KS med mottakerens offentlige nøkkel. Mottakeren dekrypterer KS med sin private nøkkel og bruker deretter KS til å dekryptere meldingen. Slik unngår man den dyre offentlig-nøkkel-operasjonen for store data, samtidig som man slipper å forhåndsdele en nøkkel. Mønsteret brukes i sikker e-post, TLS og IPsec.
Spørsmål 5 · Lett
Hva er AES, og hvorfor erstattet den DES?
AES (Advanced Encryption Standard) er en symmetrisk blokkchiffer-algoritme som ble NIST-standard i 2001. Den opererer på 128-bits blokker og støtter nøkkellengder på 128, 192 eller 256 bit. AES erstattet DES fordi DES' 56-bits nøkkel var for kort: i DES Challenge ble en DES-nøkkel knekt med brute force på under ett døgn. Til sammenligning ville brute force på AES-128 ta omtrent 149 billioner år. AES er i dag den dominerende symmetriske algoritmen i TLS, WiFi (WPA2/WPA3), IPsec og 4G/5G.
Spørsmål 6 · Vanskelig
Hva er forskjellen mellom offentlig og privat nøkkel i offentlig nøkkelkryptografi?
Bob har et nøkkelpar: offentlig nøkkel KB+ som han publiserer åpent, og privat nøkkel KB- som han holder strengt hemmelig. Det Alice krypterer med KB+ kan bare KB- dekryptere — og omvendt. Dette løser to problemer: (1) nøkkelutveksling uten forhåndsdelt hemmelighet, og (2) digitale signaturer der Bob signerer med KB- og hvem som helst kan verifisere med KB+. Avgjørende egenskap: gitt KB+ er det beregningsmessig umulig å finne KB-.
Spørsmål 7 · Middels
Hva er en kryptografisk hashfunksjon, og hvilke egenskaper må den ha?
En kryptografisk hashfunksjon H tar input av vilkårlig lengde og produserer et «fingeravtrykk» H(m) av fast lengde. Den må ha tre egenskaper: (1) enveis — gitt H(m) er det beregningsmessig umulig å finne m, (2) kollisjonsresistent — det skal være praktisk umulig å finne to forskjellige meldinger m₁, m₂ med H(m₁) = H(m₂), og (3) små endringer i input gir helt forskjellig output. SHA-256 er dagens anbefaling. MD5 og SHA-1 regnes som foreldet — kollisjoner er demonstrert. Hashfunksjoner brukes i digitale signaturer (signer hashen, ikke meldingen), MAC/HMAC og passordlagring.
Spørsmål 8 · Vanskelig
Hva er en MAC (Message Authentication Code)?
En MAC gir integritet og autentisering mellom parter som deler en hemmelig nøkkel. Senderen beregner MAC = hash(melding + hemmelig nøkkel) og sender begge. Mottakeren beregner selv MAC og sammenligner — avvik avslører enten manipulering eller feil avsender. I motsetning til digital signatur krever MAC ingen PKI, men begge parter må ha den samme hemmelige nøkkelen.
Spørsmål 9 · Lett
Hva er digitale signaturer?
Digitale signaturer gir verifiserbar avsenderautentisering og ikke-benektbarhet. Senderen hasher meldingen og krypterer hashen med sin private nøkkel — dette er signaturen. Mottakeren dekrypterer signaturen med avsenderens offentlige nøkkel og sammenligner med sin egen hash av meldingen. Siden kun avsenderen har den private nøkkelen, kan han ikke benekte å ha signert.
Spørsmål 10 · Vanskelig
Hva er et digitalt sertifikat, og hva er en CA?
Et sertifikat binder identitet (f.eks. domenenavn) til en offentlig nøkkel via en signatur fra en betrodd Certificate Authority (CA). Nettleseren stoler på CA-er som er forhåndsinstallert. Sertifikater følger X.509-standarden og inneholder blant annet eier, offentlig nøkkel, utstedende CA og utløpsdato. Sertifikatkjeden tillater hierarki av CA-er.
Spørsmål 11 · Middels
Hva skjer under en TLS-handshake?
TLS-handshake etablerer kryptoparametre og felles sesjonsnøkler. Klienten sender ClientHello (støttede cipher suites), serveren svarer med ServerHello og sertifikat, klienten verifiserer sertifikatet mot CA. Deretter kjøres nøkkelutveksling (f.eks. ECDHE) og begge deriverer sesjonsnøkler. Først etter handshake sendes kryptert applikasjonsdata.
Spørsmål 12 · Vanskelig
Hva er sesjonsnøkler, og hvorfor brukes de?
En sesjonsnøkkel er en kortvarig symmetrisk nøkkel som genereres for én enkelt forbindelse (f.eks. én TLS-økt eller én e-post). Den brukes til å kryptere selve dataene raskt med AES, mens den dyre offentlig-nøkkel-operasjonen bare brukes én gang for å utveksle sesjonsnøkkelen trygt. Dette hybrid-mønsteret går igjen i sikker e-post, TLS og IPsec. Fordelen er ytelse, og at en kompromittert sesjonsnøkkel bare avslører én økts data.
Spørsmål 13 · Middels
Hva er en initialization vector (IV), og hvorfor trengs den i CBC?
Uten CBC ville to like klartekstblokker gitt to like chiffertekstblokker — angriperen ser dermed at de er like uten å kjenne innholdet. CBC løser dette ved å XOR-e hver blokk med forrige chiffertekstblokk før kryptering. Den første blokken har ingen «forrige» — derfor genererer avsender en tilfeldig IV (initialization vector) som XOR-es med blokk 1. IV-en sendes med meldingen i klartekst, men må være ny for hver melding slik at samme klartekst kryptert to ganger gir helt forskjellig chiffertekst.
Spørsmål 14 · Vanskelig
Hvorfor inkluderes et sekvensnummer i MAC-beregningen i hver TLS-record?
Uten sekvensnummer kunne Trudy (a) fange opp en gyldig record og spille den av igjen senere (replay-angrep), eller (b) bytte rekkefølge på records uten at mottakeren oppdaget det. Sekvensnummeret sendes ikke eksplisitt i recorden, men begge parter holder en intern teller og inkluderer den i MAC-beregningen. Enhver replay eller omrokering vil derfor få MAC-verifiseringen til å feile, fordi forventet sekvensnummer hos mottakeren ikke matcher det som ble brukt da MAC-en ble laget.
Spørsmål 15 · Vanskelig
Hva er stateless pakkefiltrering, og hvilken svakhet har den?
En tilstandsløs (stateless) brannmur ser på hver pakke isolert og bestemmer ut fra headerfelt (kilde-/dest-IP, port, protokoll, TCP-flagg) om den slippes gjennom. Reglene uttrykkes i en ACL som sjekkes ovenfra og ned. Svakheten: den vet ikke om en innkommende pakke faktisk hører til en aktiv forbindelse. En angriper kan f.eks. sende en TCP-pakke med ACK-flagg satt — den ser ut som et svar på en eksisterende forbindelse, og slipper gjennom selv om ingen forbindelse ble opprettet.
Spørsmål 16 · Middels
Hva er en stateful brannmur, og hvordan løser den svakheten i stateless filtrering?
En tilstandsfull (stateful) brannmur holder en forbindelsestabell over alle aktive TCP-forbindelser. Den sporer SYN-oppsett, FIN-nedrigging og timeout for inaktive forbindelser. En innkommende pakke slippes bare gjennom hvis den hører til en forbindelse som allerede er registrert — eller hvis ACL eksplisitt tillater nye innkommende forbindelser. Dermed avvises en «fabrikkert» ACK-pakke som ikke matcher noen kjent forbindelse, noe en stateless brannmur ville sluppet inn.
Spørsmål 17 · Middels
Hva er forskjellen mellom IPsec transport-modus og tunnel-modus?
Transport-modus krypterer bare payloaden i IP-datagrammet — den opprinnelige IP-headeren er fortsatt synlig. Brukes mellom to endepunkter (host-to-host). Tunnel-modus krypterer hele det opprinnelige IP-datagrammet (inkludert headeren) og pakker det inn i et nytt IP-datagram med ny ytre header. Brukes typisk mellom to gateways og er fundamentet for VPN: trafikken mellom Oslo- og Trondheim-kontoret pakkes inn i krypterte datagrammer som tunneleres over det offentlige Internett.
Spørsmål 18 · Vanskelig
Hvorfor sender Alice sesjonsnøkkelen KS kryptert med Bobs offentlige nøkkel i sikker e-post — i stedet for å kryptere hele meldingen med den?
Offentlig-nøkkel-kryptering er mye tregere enn symmetrisk kryptering — for en lang e-post ville det vært upraktisk. Hybridløsningen utnytter det beste fra begge: Alice (1) genererer en tilfeldig symmetrisk KS, (2) krypterer meldingen raskt med KS (AES), og (3) krypterer bare den korte KS med Bobs offentlige nøkkel. Bob dekrypterer KS med sin private nøkkel og bruker den til å dekryptere selve meldingen. Dette mønsteret går igjen i TLS, sikker e-post og IPsec.
Spørsmål 19 · Middels
Hvordan oppnår WPA3 at passordet aldri sendes over lufta?
I WPA3-håndtrykket (SAE) utveksler mobilenheten og AS bare nonce-verdier (engangsbrukstall) og en HMAC-verifiseringsverdi. Begge parter utleder lokalt den samme symmetriske sesjonsnøkkelen KM-AP fra det forhåndsdelte passordet, begge nonce-ene og MAC-adressene. Hver part beregner og verifiserer en HMAC over disse ingrediensene. Hvis HMAC-en stemmer på begge sider, vet de at den andre kjenner passordet — uten at passordet selv noensinne ble sendt.
Spørsmål 20 · Vanskelig
Hva er et man-in-the-middle-angrep, og hvordan motvirker sertifikater det?
I et MITM-angrep plasserer Trudy seg mellom Alice og Bob, og kan avlytte, endre eller injisere meldinger — særlig farlig under nøkkelutveksling, der hun kan utgi seg for å være Bob overfor Alice og motsatt. Sertifikater motvirker dette: Bobs offentlige nøkkel er signert av en betrodd CA, og Alice har CA-ens rotnøkkel forhåndsinstallert. Når Alice mottar Bobs sertifikat, verifiserer hun CA-signaturen og vet dermed at den offentlige nøkkelen virkelig tilhører Bob — Trudy kan ikke forfalske dette uten CA-ens private nøkkel.
Spørsmål 21 · Middels
Hva er et replay-angrep, og hvilke mekanismer beskytter mot det?
I et replay-angrep fanger Trudy opp en gyldig melding (f.eks. en autentisert «overfør 1000 kr»-kommando) og spiller den av på nytt senere — meldingen er ekte og verifiseres som autentisk, men handlingen utføres flere ganger. Beskyttelse: nonces (engangsbrukstall som mottakeren krever er nye), tidsstempler (avviser meldinger som er for gamle), eller sekvensnummer i MAC-beregningen (som i TLS-records). Felles for alle: hver melding gjøres «fersk» slik at en gammel kopi avvises.
Spørsmål 22 · Vanskelig
Hva er den viktigste sikkerhetsforbedringen fra 4G til 5G?
I 4G LTE sendes IMSI (mobilenhetens unike identifikator på SIM-kortet) i klartekst ved nettverkstilkobling — det muliggjør IMSI-catchers (falske basestasjoner som fanger opp og sporer mobil-identiteter). I 5G krypteres IMSI med public-key-kryptografi før den sendes, slik at bare hjemmenettverket kan dekryptere den. I tillegg flyttes selve autentiseringsbeslutningen fra besøkt nett (MME i 4G) til hjemmenettverket i 5G, noe som gir bedre tillit og mindre sårbarhet for kompromitterte besøkte operatører.
Spørsmål 23 · Middels
Hvorfor utleder TLS fire separate nøkler fra master secret i stedet for å bruke én?
God kryptografisk praksis er å aldri bruke samme nøkkel til to ulike formål. TLS utleder derfor: EA (kryptering A→B), EB (kryptering B→A), MA (MAC A→B) og MB (MAC B→A). Forskjellige nøkler per retning gjør det vanskeligere for en angriper å «reflektere» en melding tilbake; forskjellige nøkler for kryptering vs MAC isolerer skadeomfanget hvis én algoritme skulle bli svekket.
Spørsmål 24 · Lett
Hva er et DDoS-angrep, og hvilken sikkerhetsegenskap angriper det?
Distributed Denial-of-Service (DDoS) bruker mange distribuerte kilder (f.eks. et botnet med kompromitterte enheter) til å oversvømme et mål med trafikk slik at legitime brukere ikke får svar. DDoS angriper tilgjengeligheten (A i CIA-triaden) — ikke konfidensialitet eller integritet. Det er vanskelig å filtrere fordi trafikken kommer fra mange ekte IP-adresser samtidig. SYN-flooding er et klassisk eksempel: angriperen åpner halvveis-TCP-forbindelser raskere enn serveren rekker å rydde dem.
Spørsmål 25 · Vanskelig
Hvorfor er Internett-checksum (TCP-checksum) ikke god nok som integritetsbeskyttelse?
TCP-checksum er designet for å oppdage tilfeldige bitfeil — ikke ondsinnet manipulasjon. Det er trivielt å konstruere to forskjellige meldinger med samme 16-bits checksum: f.eks. har «IOU 100.99 BOB» og «IOU 900.19 BOB» identisk checksum. En angriper kan dermed endre meldingens innhold uten at checksum avslører det. En kryptografisk hashfunksjon (SHA-256) er kollisjonsresistent — det er beregningsmessig umulig å finne to meldinger med samme hash, og enhver liten endring gir helt forskjellig hash.