Cold boot-aanvallen: wat RAM onthoudt nadat de stroom is weggevallen
Een computer uitzetten voelt als een harde grens. Is het niet. Het DRAM dat het werkgeheugen van een draaiend systeem bevat is een raster van minuscule condensatoren, en condensatoren ontladen zich geleidelijk. Seconden, soms minuten nadat de stroom verdwenen is, houden de chips nog het grootste deel vast van wat erin geschreven is, inclusief de volumesleutels die schijfversleuteling bij het opstarten laadt. Een aanvaller die zo'n machine herstart met een minimale bootloader en de resten eruit kopieert, loopt met die sleutels weg. Dat is een cold boot-aanval, en die is sinds 2008 gedemonstreerd tegen echte, veelgebruikte versleutelingsproducten.
Het Princeton-werk dat het probleem benoemde
De kanonieke demonstratie kwam van onderzoekers van het Center for Information Technology Policy van Princeton University en hun medewerkers. Hun artikel, 'Lest We Remember: Cold Boot Attacks on Encryption Keys', werd in juli 2008 gepresenteerd op het USENIX Security-symposium in San Jose. De afstand tussen toen en nu is het zeggen waard: de techniek is oud, en de waarschuwing ook. De auteurs lieten zien dat DRAM zijn inhoud seconden tot minuten na stroomverlies vasthoudt, zelfs bij bedrijfstemperatuur en zelfs nadat de modules uit het moederbord zijn getrokken, en dat eenvoudige koeling, die het team met spuitbuskoelmiddel toepaste, dat venster dramatisch verlengt. Zonder speciale apparaten of materialen haalden ze schijfversleutelingssleutels uit geheugendumps en kwamen ze BitLocker, FileVault, dm-crypt en TrueCrypt te boven in cold reboots. Ze beschreven ook algoritmen om sleutels te vinden in gedeeltelijk gedegenereerd geheugen en de bitfouten te corrigeren.Waarom de sleutels overleven
AES-key-schedules zijn het zwakke punt. De uitgebreide sleutel wordt met sterke interne redundantie in het geheugen opgeslagen, zodat zelfs een ruisige dump tot de echte sleutel gecorrigeerd kan worden. En moderne hardware sluit het gat niet. Een academische analyse uit 2017, 'Cold Boot Attacks are Still Hot: Security Analysis of Memory Scramblers in Modern Processors', onderzocht de scrambling-logica die hedendaagse processoren op DRAM toepassen, een maatregel waarvan vaak aangenomen wordt dat ze zulke aanvallen dempt, en vond die onwerkzaam: de scrambling-masker is af te leiden uit de dump zelf. De auteurs bouwden een proof of concept die een AES-schijfversleutelingssleutel uit het geheugen van een moderne processor terugwint, en hun aanval steunt op een korte stroomonderbreking in plaats van op het koelen van de modules.Waarom uitschakelen geen veiligheid is
Als sleutels bij het uitschakelen betrouwbaar gewist zouden worden, zou het venster klein zijn. Maar verschillende gangbare energietoestanden wissen nooit iets. Suspend-to-RAM houdt de DRAM onder spanning en ververst haar: elke sleutel die het systeem vasthield blijft op zijn plek, achter een vergrendelscherm dat direct aan te vallen is. Hibernate schrijft de RAM-image in plaats daarvan naar de schijf, en dat is net zo veilig als de versleuteling van het swap- of hibernate-volume, want een momentopname van draaiend geheugen op onversleutelde opslag is een geschenk. Zelfs een warme herstart haalt de modules niet lang van de stroom. Het Tails-project, dat deze dreiging voor zijn gebruikers documenteert, brengt de blootstelling ronduit onder woorden:... kan tot enkele minuten na het uitschakelen in RAM blijven staan ...Die waarschuwing richt zich op gewone laptops. Een machine die in alledaagse zin uit staat, klep dicht, donker scherm, vaag energiestado, kan nog alles bevatten wat een aanvaller wil, en grijpen kost seconden.
Welke mitigerende maatregelen er echt zijn
Tails is de meest zichtbare verdediging in dagelijks gebruik. Bij het afsluiten overschrijft het systeem het grootste deel van zijn RAM met willekeurige data, en dezelfde wissing start wanneer het opstartmedium tijdens het gebruik fysiek wordt verwijderd, een noodroute gebouwd voor precies het moment waarop iemand de machine grijpt. Onder de motorkap leunt het op de init-on-free-functie van de kernel plus een watchdog die het USB-medium in de gaten houdt, en de ontwerpnotities voegen toe dat bestanden die het wisproces nodig heeft vanaf de boot in het geheugen worden vergrendeld, zodat de wissing niet kan worden weggedrukt terwijl ze draait. De gewoontes die daarbij horen zijn onopvallend maar concreet:- Schakel volledig uit in plaats van te pauzeren, vooral voordat je een apparaat aan iemand anders geeft.
- Leer het snelste afsluitpad van je systeem, want de wissing heeft tijd nodig om te draaien.
- Laat een draaiende of gepauzeerde laptop nooit fysiek onbeheerd achter.
- Als hardware uit je zicht verdwijnt in een hoog-risico-omgeving, behandel haar als mogelijk gemanipuleerd, niet slechts als uitgeschakeld.










