Linux disk encryption and self-encrypting drives -- A case study on Opal2 drives security
Dit artikel presenteert een black-box casestudy van 38 commerciële Opal2 zelfversleutelende schijven op Linux, waarbij firmwarebeveiligingsproblemen en incompatibiliteiten werden geïdentificeerd die verantwoord zijn gemeld aan leveranciers, wat uiteindelijk leidde tot verbeteringen in Linux-schijfversleutelingstools en de release van een open-source testsuite voor onafhankelijke evaluatie.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Stel je voor dat de harde schijf van je computer een hoogtechnologische bankkluis is. Jarenlang hebben we het geld binnenin (je gegevens) beschermd door een zeer zorgvuldige bewaker (softwareversleuteling) in te huren die elke tas controleert voordat deze naar binnen of buiten gaat. Maar onlangs zijn de fabrikanten van de kluizen begonnen met het inbouwen van de bewakers in de kluisdeur zelf. Dit zijn zogenaamde Self-Encrypting Drives (SEDs), specifiek de Opal2-variant. Het idee was simpel: als de kluis zichzelf vergrendelt, zou het sneller en veiliger moeten zijn, toch?
Nou, een team van nieuwsgierige detectives van de Masaryk Universiteit besloot deze theorie te testen. Ze vertrouwden niet alleen op het woord van de fabrikanten; ze pakten 38 verschillende "kant-en-klare" kluizen van diverse merken, sommige nieuw en sommige tweedehands, en onderwierpen deze aan een rigoureuze black-box stress-test. Ze wisten niet hoe de kluizen van binnen waren gebouwd; ze stuurden simpelweg commando's en observeerden wat er gebeurde.
Hier is wat ze ontdekten, en waarom het een beetje een achtbaanrit is.
De "Magische Sleutel" die niet zo magisch was
De grootste verrassing? Sommige van deze "slimme" kluizen speelden de encryptie eigenlijk in de mal omdat ze de boel bedrogen.
Denk aan encryptie als een geheime code waarbij elke letter die je schrijft wordt gehusseld. Om ervoor te zorgen dat de code echt veilig is, moet de versleutelaar een unieke "draai" gebruiken voor elke pagina van je dagboek. Als je dezelfde zin op pagina 1 en pagina 100 schrijft, zou de gehusselde versie er totaal anders uit moeten zien.
De onderzoekers ontdekten dat op verschillende schijven (zoals sommige van Lenovo en Samsung) de kluizen lui werden. Ze gebruikten de dezelfde draai voor meerdere pagina's. Het is alsof een spion bij elke agent die hij ontmoet, dezelfde geheime handdruk gebruikt. Als een aanvaller twee keer hetzelfde patroon ziet, kan hij de geheime boodschap raden, zelfs zonder de sleutel. In sommige gevallen gebruikten de schijven intern een "blokgrootte" van 4096 bytes maar deden ze alsof deze kleiner was, waardoor de "draai" in de tweede helft van het blok werd hergebruikt. Het was geen totale ramp, maar het betekende dat als je je wachtwoord wijzigde, sommige oude patronen nog steeds zichtbaar konden zijn in de gehusselde data.
De "Willekeurige Getallen" Generator die niet willekeurig was
Om de kluis te vergrendelen, heb je een echt willekeurige sleutel nodig. Stel je voor dat je een winnend lotnummer probeert te kiezen. Als de machine die de nummers kiest kapot is en altijd "7, 14, 21" kiest, zit je in de problemen.
De Opal2-standaard vraat de schijf om te fungeren als een willekeurige getallengenerator. De onderzoekers testten dit door de schijven te vragen om 1 MB aan willekeurige data uit te spugen en te controleren of de nummers echt door elkaar gehusseld waren.
- Het resultaat: Verschillende schijven faalden jammerlijk. Sommige schijven (zoals bepaalde Lenovo- en Samsung-modellen) waren zo voorspelbaar dat ze eigenlijk gewoon telden: "1, 2, 3... 32, 1, 2, 3..."
- Het oordeel: Het paper suggereert dat als je vertrouwt op de willekeurige generator van de schijf, je misschien een sleutel gebruikt die een aanvaller kan raden. Vanwege deze reden besloten de onderzoekers de willekeurige generator van de schijf niet te gebruiken voor Linux-encryptie. In plaats daarvan houden ze vast aan de eigen willekeurige generator van de computer, die veel betrouwbaarder is.
De "Super User" Functie die kapot was
Er is een speciale functie genaamd SUM (Single-User Mode). Denk aan dit als een "Manager" en een "User" sleutel. De Manager kan de kluis instellen, maar alleen de User kan hem openen. De Manager zou niet in de spullen van de User mogen kijken.
De onderzoekers probeerden dit op de schijven in te stellen. Ze ontdekten dat hoewel veel schijven beweerden dit te ondersteunen, de werkelijke implementatie vaak defect was. Op sommige schijven kon de "Manager" nog steeds de data van de "User" ontsluiten, of de overgang tussen de modi was zo wankel dat een aanvaller het proces kon onderbreken en de data kon stelen. Vanwege deze foutjes ontdekten de onderzoekers dat van de 24 schijven die beweerden deze "Super User" modus te ondersteunen, er slechts 14 goed genoeg werkten om te worden vertrouwd.
Het "Resetknop" Probleem
Elke kluis heeft een master resetknop genaamd PSID (Physical Security Identification). Dit is een code die op een sticker op de schijf staat. Als je je wachtwoord vergeet, kun je deze code gebruiken om de schijf te wissen en opnieuw te beginnen.
De onderzoekers ontdekten een paar problemen hier:
- Voorspelbare Codes: Op sommige schijven (specifiek een batch van Western Digital) waren de resetcodes niet echt willekeurig. Ze volgden een patroon. Als je de code voor de ene schijf kende, kon je de code voor een andere schijf uit dezelfde batch raden door slechts een paar nummers te proberen.
- Vergeten Geheimen: Veel gebruikers beseffen niet dat deze stickercode een geheim is. Mensen plaatsen foto's van hun schijven online waarbij de code duidelijk zichtbaar is. Als een hacker die foto ziet en toegang heeft tot je vergrendelde schijf, kan hij je data direct wissen.
- Lieve Controleurs: Sommige schijven (zoals bepaalde Micron-modellen) waren te aardig. Ze accepteerden de resetcode zelfs als je er extra letters aan het einde aan toevoegde. Het is alsof een uitsmijter je binnenlaat, zelfs als je zegt dat je naam "John Smith" is terwijl op de lijst alleen "John" staat. Het is geen directe hack, maar het laat zien dat de beveiligingstechniek slordig was.
De "Pyrite" Impostor
Voordat ze zelfs maar aan de tests begonnen, moesten de onderzoekers 12 schijven weggooien. Waarom? Omdat ze als "Opal2" (de hoogbeveiligde versie) werden gelabeld, maar eigenlijk Pyrite2 waren. Pyrite2 is als een "Lite" versie van de kluis—het heeft een slot, maar het versleutelt de data binnenin niet echt. Het is een deur die "Verboden Toegang" zegt, zonder dat er daadwerkelijk muren zijn. De onderzoekers moesten deze eruit filteren om er zeker van te zijn dat ze echte encryptie testten.
Het Goede Nieuws: Een Nieuwe Tool voor Linux
Ondanks al deze wankele kluizen, zeiden de onderzoekers niet simpelweg "het is kapot" en liepen ze weg. Ze bouwden een nieuwe set tools voor Linux (het besturingssysteem dat door veel servers en privacy-georiënteerde computers wordt gebruikt).
Ze creëerden een manier om automatisch te controleren of een schijf correct functioneert voordat je deze mag gebruiken. Als een schijf probeert een slechte willekeurige getallengenerator te gebruiken of een defecte "Super User" modus heeft, zal de nieuwe software dit opmerken en automatisch overschakelen naar een veiligere, standaard modus. Ze hebben ook hun "Opal Test Suite" als open-source tool uitgebracht, zodat iedereen zijn eigen schijven kan controleren.
De Kern van het Verhaal
Het paper concludeert dat hoewel hardwareversleuteling (SEDs) een geweldig idee is, de huidige realiteit rommelig is. Fabrikanten besparen vaak op kosten, implementeren functies onjuist of laten beveiligingslekken achter.
- Wat ze uitsloten: Ze bewezen dat je de willekeurige getallengenerator van de schijf of de "Super User" modus niet blindelings kunt vertrouwen zonder eerst te controleren.
- Wat ze bewezen: Ze maten specifieke fouten in 38 schijven, waarmee ze lieten zien dat firmwarebugs echt en algemeen voorkomen.
- De les: Hardwareversleuteling is nog geen magisch schild. Het is een nuttige laag, maar het moet worden gecombineerd met slimme software (zoals de nieuwe Linux-tools die ze bouwden) om de fouten van de hardware op te vangen. Totdat fabrikanten deze firmwareproblemen oplossen, is de veiligste keuze om de hardware te behanden als een helper, niet als de enige bewaker van je geheimen.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.