Tror du dataene på PC-en din er sikre fordi du har sørget for å kryptere hele disken? I så fall må du tro om igjen. På Usenix Security Symposium i San Jose denne uken har en gruppe forskere fra Princeton University, Electronic Frontier Foundation og Wind River demonstrert hvordan de går fram for å fange opp krypteringsnøkler brukt av verktøy som Microsoft BitLocker, Apple FileVault, åpen kildekodeløsningen TrueCrypt samt Linux-løsningene dm-crypt og Loop-AES.
Metoden hviler på en underkjent svakhet ved minnebrikker, såkalt DRAM.
Systemer for diskkryptering må nødvendigvis lagre sine krypto-nøkler i minne. Siden DRAM-brikker er avhengig av spenning for å holde på data, skulle det ikke være noen fare: Napper man minnebrikken ut av PC-en, fordufter samtidig nøklene for å dekryptere disken. Poenget er at dette er en sannhet med modifikasjoner: Dataene forsvinner ikke straks spenningen blir borte. De fordufter gradvis, i en prosess som tar lenger tid jo kaldere brikken er.
– DRAM blir mindre pålitelig når brikkene ikke friskes opp, men innholdet slettes ikke umiddelbart. Det består lenge nok til at man i ondsinnet hensikt eller som etterforsker kan fange opp alt som er lagret i minnet, heter det i rapporten.
Når man fjerner spenningen fra en DRAM-brikke, tar det i romtemperatur fra to til fem sekunder før dataene begynner å forsvinne. Deretter går utviskingen forholdsvis raskt, men bare opp til en terskel der i overkant av 95 prosent av innholdet er borte.
Bildeserien nedenfor illustrerer hva som skjer:
Bildet helt til venstre er ikke originalen, men er fanget opp fem sekunder etter at DRAM-brikken har mistet spenningen. I forhold til originalen er det knapt noen endring. Det neste bildet er fanget opp etter 30 sekunder, det tredje etter 60 sekunder, og det siste etter fem minutter.
Ved å kjøle ned DRAM til under vanlig romtemperatur, holder brikken betydelig lenger på innholdet.
Det er ikke spesielt vanskelig å få til tilstrekkelig kjøling. Forskerne brukte alminnelig kjølespray på boks. Ved å holde boksen opp ned i det de tømte den over DRAM-brikken mens den fortsatt sto i PC-en, ble brikkens temperatur redusert til minus 50 grader celsius. Da kunne brikkene fjernes fra PC-en: Etter 60 sekunder uten spenning var 99,9 prosent av innholdet intakt.
En mer ekstrem metode er å senke den nedkjølte brikken i flytende nitrogen straks den nappes ut av PC-en. Forskerne lot brikken ligge i nitrogenbadet i 60 minutter før de la den tilbake i maskinen: 99,83 prosent av innholdet var intakt.
La oss si at du har kryptert disken på din bærbare PC. Du trenger en pause, og setter maskinen i enten hvilemodus eller dvalemodus, trygg på at ingen uten gyldig brukernavn eller passord – eller smartkort eller passordgenerator eller rett fingeravtrykk – er i stand til å lese disken.
Du tar feil. Krypto-nøklene er i minnet, og det kreves ikke brukertilgang for å fange dem opp.
To metoder er mulig: Man åpner PC-en, kjøler ned minnekortet, napper det ut og legger det straks inn i en annen maskin. Alternativet er å la minnekortet bli stående, slå av maskinen og så straks boote den fra en ekstern disk eller USB-enhet. Forskerne fant at en iPod var fullt ut egnet til denne oppgaven.
Å reboote maskinen innebærer at BIOS overskriver en del av minnet. Forskerne fant at denne delen er så liten at den i praksis ikke hindret dem fra å rekonstruere det ondsinnede datajegere kunne tenkes å være opptatt av.
Når uvedkommende med en av disse metodene har skaffet seg tilgang til minnet, er neste skritt å bruke en serie med spesielle verktøy som forskerne utviklet for å lokalisere krypto-nøklene og rekonstruere dem i tilfelle noen biter i dem var blitt korrumpert.
Algoritmene som forskerne utviklet, lot dem lokalisere og rekonstruere også 256 biters nøkler av typen DES, AES og RSA, både symmetriske og private.
Denne typen angrep mot krypterte disker er kun avhengig av at krypto-nøklene lagres i minnet, og av fysisk tilgang til maskinen.
Forskerne understreker at PC-er med TPM – «Trusted Platform Module» – ikke verner mot deres metode. En TPM kan hindre en krypto-nøkkel fra å lastes til minne, men da kan nøkkelen heller ikke brukes. Med andre ord: Krypterer man disken med for eksempel BitLocker, vil det ikke spille noen rolle om man har TPM eller ikke.
Av tiltak som kan hindre denne typen angrep, nevner forskerne kryptering av selve minnet, eller at diskkrypteringen håndteres i selve diskkontrolleren, slik for eksempel Seagate gjør i sin «Drive Trust»-løsning. En tredje mulighet er systemarkitekturer som betrakter DRAM som usikkert område og sørger for at krypto-nøkler og annen følsom informasjon aldri lagres der.
Ellers må diskkryptering betraktes som bedre enn ingenting, men akk så utilstrekkelig, konkluderer forskerne.
Hele rapporten er lagt ut, sammen med en video som demonstrerer metoden: Lest We Remember: Cold Boot Attacks on Encryption Keys.