image

Onderzoekers onthullen aanval op Linux-schijfversleuteling

donderdag 24 december 2015, 11:43 door Redactie, 14 reacties

Onderzoekers hebben een aanval gedemonstreerd waarmee het mogelijk is om het encryptiewachtwoord van versleutelde Linuxsystemen in handen te krijgen. De aanval vereist wel dat de aanvaller fysieke toegang tot het systeem heeft. In dit geval kan er code worden toegevoegd om het wachtwoord te onderscheppen.

In 2009 demonstreerde onderzoekster Joanna Rutkowska de Evil Maid-aanval, waarbij een aanvaller met fysieke toegang het encryptiewachtwoord van met TrueCrypt-versleutelde systemen kon achterhalen. Dergelijke aanvallen kunnen volgens onderzoekers van beveiligingsbedrijf Gotham Digital Science op elk besturingssysteem worden uitgevoerd. Onderzoekers van het bedrijf besloten voor hun onderzoek naar de Linux Unified Key Setup (LUKS) te kijken, de schijfversleuteling voor Linux. Ze hebben hun aanval omgedoopt tot 'EvilAbigail', waarbij Abigail een Amerikaanse term voor bediende is.

Bij een Linuxdistributie die met volledige schijfversleuteling wordt geïnstalleerd is er een kleine partitie die onversleuteld is om de decryptie en bootstrapping van de versleutelde harde schijf mogelijk te maken. Deze partitie wordt gemount en bevat de kernel en de initiële ramdisk (initrd). De initrd bestaat uit een minimale verzameling van tools voor het ontsleutelen en mouten van het root-bestandssysteem. Een aanvaller met fysieke toegang kan de initrd van kwaadaardige code voorzien, zodat het encryptiewachtwoord van de gebruiker, zodra die het de volgende keer invoert, wordt opgeslagen.

Maatregelen

Volgens de onderzoekers kunnen gebruikers verschillende maatregelen nemen om zich tegen dit soort aanvallen te beschermen. De eerste oplossing is om de bootloader, kernel en de initrd op een externe usb-stick op te slaan en het systeem daar vanaf te starten. Hoewel dit mogelijk de veiligste oplossing is, is het ook de meest onhandige, aangezien de gebruiker altijd de usb-stick moet loskoppelen en meenemen als hij zijn laptop onbeheerd achterlaat. Een andere oplossing is het uitschakelen van de mogelijkheid om vanaf externe media op te starten.

Dit kan geheel geautomatiseerde aanvallen voorkomen, maar biedt nog steeds ruimte voor een aanvaller die het systeem handmatig mount en de initrd vanuit de initrd zelf aanpast. Een andere oplossing is het instellen van een BIOS-wachtwoord, zodat het systeem niet zonder BIOS-wachtwoord kan worden opgestart. Deze laatste twee opties bieden echter geen bescherming tegen een aanvaller die voldoende tijd heeft om de harde schijf uit de laptop te halen en op een eigen systeem aan te sluiten en zo aan te passen.

De veiligste oplossing volgens de onderzoekers is de initrd aan SecureBoot toe te voegen. Op deze manier wordt het gehele opstartproces gecontroleerd en kan aangepaste code worden gedetecteerd. Toch is er nog steeds een aanvalsvector als een aanvaller de BIOS/UEFI kan flashen om zo SecureBoot uit te schakelen. "De beste manier om jezelf tegen dit soort aanvallen te beschermen is om je systeem nooit in handen van de aanvallers te laten vallen. Onze proof-of-concept-aanval kon alle doelen in iets meer dan 2 minuten backdooren", zo waarschuwen de onderzoekers.

Reacties (14)
24-12-2015, 11:52 door [Account Verwijderd] - Bijgewerkt: 24-12-2015, 11:52
[Verwijderd]
24-12-2015, 12:30 door Anoniem
Compleet oninteressant.
Iedere zichzelf respecterende Linuxbeheerder met versleutelde systemen houdt er rekening mee dat de onversleutelde gedeeltes aangepast kunnen worden. Gewoon de LUKS-ondersteuning in Grub2 gebruiken zodat kernel en initrd meeversleuteld kunnen worden, en altijd tijdens het booten automatisch laten checken of Grub2 of diens config niet aangepast is.
24-12-2015, 12:41 door Anoniem
Niets is veilig tegen fysieke toegang.
24-12-2015, 12:53 door Anoniem
Ik heb een paar vragen:

- Kan men deze aanval ook uitvoeren als het systeem uit staat, de aanvaller het systeem in handen krijgt en het kan opstarten maar er wel volledige encryptie met LUKS is geinstalleerd? Wat ik bedoel is, stel dat iemand mijn laptop steelt (die uit staat en in mn tas zit), kunnen ze dan alsnog de aanval uitvoeren en mijn schijf decrypteren?

- Is het ook mogelijk om deze aanval uit te voeren (de programmatuur die nodig is voor het afvangen van je wachtwoord) op afstand? Dus bijvoorbeeld inbreken op je machine en op die manier de backdoor installeren en alsnog je wachtwoord afvangen als je de volgende keer inlogd?
24-12-2015, 14:04 door Anoniem
Klinkt als een nogal omslachtige manier om de encryption keys te achterhalen.

Het keyboard swappen door hetzelfde model met een keylogger erin geeft je ook de keys en is nog een stuk moelijker achteraf te controleren.
24-12-2015, 14:06 door Anoniem
Als ik het goed begrijp:

1. aanvaller zet laptop aan, voegt backdoor toe en vertrekt
2. gebruiker komt terug en tikt wachtwoord van laptop in
3. aanvaller heeft weer toegang tot laptop en leest wachtwoord uit
24-12-2015, 15:34 door Anoniem
Door Anoniem: Ik heb een paar vragen:

- Kan men deze aanval ook uitvoeren als het systeem uit staat, de aanvaller het systeem in handen krijgt en het kan opstarten maar er wel volledige encryptie met LUKS is geinstalleerd? Wat ik bedoel is, stel dat iemand mijn laptop steelt (die uit staat en in mn tas zit), kunnen ze dan alsnog de aanval uitvoeren en mijn schijf decrypteren?

- Is het ook mogelijk om deze aanval uit te voeren (de programmatuur die nodig is voor het afvangen van je wachtwoord) op afstand? Dus bijvoorbeeld inbreken op je machine en op die manier de backdoor installeren en alsnog je wachtwoord afvangen als je de volgende keer inlogd?

Eerste vraag: Nee dat kan niet. Het gaat erom dat ze alleen kunnen decrypten door je wachtwoord te stelen. Als je laptop uitstaat en ze alleen kopie hebben van je versleutelde data kan dat dus niet. Ze zouden echt je laptop moeten aanvallen, jou het wachtwoord laten intypen, en dit dan op een later moment er weer af moeten halen. In feite heb je dus twee keer een moment fysiek toegang nodig, en één moment tussenin waarop jij je systeem boot en dat wachtwoord ingeeft.

Tweede vraag: Specifiek deze aanval werkt door een usb stick te gebruiken als boot device, en daarmee die bootpartitie aan te passen op het systeem. In theorie is het natuurlijk mogelijk om een systeem te hacken een soortgelijke aanpassing te doen. Echter, als men als weet in te breken op een systeem met versleutelde disk: als men eenmaal in user space zit waarbij jou data dus ontsleuteld is, dan heeft deze aanval weinig nut meer, omdat men dan immers al bij de data kan die men in de eerste plaats zocht.
24-12-2015, 15:57 door stuffy
Ik weet niet hoor.....

Dit klinkt me meer als een broodje aap verhaal, en heeft helemaal niks met Linux op zich te maken!
Op deze manier kan ELK systeem gecomprimeerd worden. En daar komt bij, dat zoals eerder genoemd, het wel heel erg omslachtig is. Een aangepast keyboard bv zou beter werken, en minder snel gedetecteerd worden.

Prettige feestdagen!
24-12-2015, 17:51 door Anoniem
Ik zeg : Tails

Interne harddisks zijn zooo 2015

Tails, dat zeg ik.
24-12-2015, 18:10 door Anoniem
Je kunt ook de harddisk vanuit het BIOS op slot zetten, als het BIOS dit toelaat. Dan is de hd afgesloten, ook al haal je hem eruit en sluit 'm aan op een ander systeem: hij blijft op slot.
24-12-2015, 19:49 door Rarsus
Wederom: UEFI + SecureBoot ter voorkoming/bemoeilijking van tampering van bootloader. Dit kan natuurlijk pas vanaf 2009 dus waar hebben we het over.
25-12-2015, 07:08 door Anoniem
PXE booten vanuit de cloud ... ;)
25-12-2015, 07:22 door beaukey
Opgelost: Trusted Grub 2 + Trusted Platform Module. https://beaukey.blogspot.nl/2015/12/trusted-boot-for-linux.html
28-12-2015, 11:55 door Eric-Jan H te D
Water boarden werkt een stuk eenvoudiger.
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.