Kwetsbaarheid in cryptsetup maakt het mogelijk om de encryptie in LUKS2-partities uit te schakelen.

In het pakket Cryptsetup, gebruikt voor het versleutelen van schijfpartities in Linux, is een kwetsbaarheid (CVE-2021-4122) ontdekt die het mogelijk maakt om door het wijzigen van metadata de versleuteling in LUKS2 (Linux Unified Key Setup) partities uit te schakelen. Om de kwetsbaarheid te exploiteren, moet de aanvaller fysieke toegang hebben tot het versleutelde medium, wat betekent dat deze methode vooral zinvol is voor aanvallen op versleutelde externe opslagmedia, zoals flash-drives, waartoe de aanvaller toegang heeft, maar waarvan hij het wachtwoord voor decryptie niet kent.

De aanval is alleen van toepassing op het LUKS2-formaat en houdt verband met de manipulatie van metadata die verantwoordelijk zijn voor het activeren van de 'online reencryption'-uitbreiding, waarmee het mogelijk is om het proces van gegevensherversleuteling ononderbroken te starten wanneer het nodig is om de toegangssleutel te veranderen. Aangezien het decryptie- en encryptieproces met een nieuwe sleutel veel tijd kost, biedt 'online reencryption' de mogelijkheid om door te gaan met het gebruik van de partitie en de herversleuteling op de achtergrond uit te voeren, waarbij de gegevens geleidelijk van de ene sleutel naar de andere worden herschreven. Het is ook mogelijk om een lege doelkey te kiezen, waarmee de partitie in een niet-versleutelde staat kan worden gezet.

Een aanvaller kan wijzigingen in de LUKS2-metadata aanbrengen die een noodgeval simuleren waarbij de decryptie-operatie wordt onderbroken als gevolg van een storing, en kan delen van de partitie ontsleutelen na activatie en gebruik van het gemodificeerde medium door de eigenaar. In dit geval ontvangt de gebruiker die het gemodificeerde medium heeft aangesloten en het correct heeft ontgrendeld met het juiste wachtwoord, geen waarschuwing over het herstelproces van de onderbroken herversleuteling en kan hij alleen de voortgang van deze operatie achterhalen met het commando 'luks Dump'. De hoeveelheid gegevens die de aanvaller kan ontsleutelen, hangt af van de grootte van de LUKS2-header, maar bij de standaardgrootte (16 MiB) kan deze meer dan 3 GB overschrijden.

Het probleem wordt veroorzaakt doordat, hoewel her-encryptie de berekening en controle van de hashes van de nieuwe en oude sleutels vereist, de hash niet vereist is voor het begin van de decryptie als de nieuwe toestand een gebrek aan een encryptiesleutel (plaintext) impliceert. Bovendien zijn de metadata van LUKS2, waarin het encryptie-algoritme is vastgelegd, niet beschermd tegen wijziging als ze in handen van een aanvaller komen. Om deze kwetsbaarheid te verhelpen, hebben de ontwikkelaars extra bescherming voor de metadata in LUKS2 toegevoegd, waarvoor nu een extra hash wordt gecontroleerd, berekend op basis van bekende sleutels en de inhoud van de metadata, dat wil zeggen dat een aanvaller de metadata nu niet ongemerkt kan wijzigen zonder het wachtwoord voor decryptie te kennen.

Een typische aanvalsscenario vereist dat de aanvaller meerdere keren de opslagmedia in handen krijgt. In het begin maakt de aanvaller, die het toegangswachtwoord niet kent, wijzigingen in het metadata-gebied die de decryptie van een deel van de gegevens bij de volgende activering van de opslag initieert. Vervolgens wordt de opslag terug op zijn plek gezet en wacht de aanvaller tot de gebruiker deze aansluit en het wachtwoord invoert. Tijdens de activatie van het apparaat door de gebruiker wordt een achtergrondproces gestart voor her-encryptie, waarbij een deel van de versleutelde gegevens wordt vervangen door ontsleutelde gegevens. Als de aanvaller dan weer toegang tot het apparaat kan krijgen, zal een deel van de gegevens op de opslag in ontsleutelde vorm zijn.

Het probleem is vastgesteld door de maintainer van het cryptsetup-project en opgelost in de updates cryptsetup 2.4.3 en 2.3.7. De status van updates met de oplossing voor het probleem in de distributies kan worden gevolgd op de volgende pagina's: Debian, RHEL, SUSE, Fedora, Ubuntu, Arch. De kwetsbaarheid doet zich alleen voor met de release van cryptsetup 2.2.0, waarin ondersteuning voor de "online reencryption"-bewerking is toegevoegd. Als tijdelijke bescherming kan de optie "--disable-luks2-reencryption" tijdens de start worden gebruikt.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster