Wie man Katastrophen abwendet, heute: Löschen von LUKS-Schlüsseln
Ich bin deutlich zu experimentierfreudig.
Ich habe vor einiger Zeit meinem Laptop beigebracht, die verschlüsselte LUKS-Partition nicht nur über eine Passphrase, sondern auch über eine (andere) Passphrase, gepaart mit meinem Yubikey zu entschlüsseln.
Das hat sich heute gerächt, weil ich den Yubikey für andere Zwecke umkonfiguriert hatte. Ich dachte dann, diesen Slot in LUKS löschst Du mal.
Dafür muss man immer noch ein funktionierendes Passwort angeben.
Dumm nur: Es wurde das Passwort gelöscht welches ich eingegeben hatte. Ganz dumme Geschichte - damit wäre beim nächsten hochfahren das System nicht mehr hochgekommen, weil kein Entschlüsselungs-Schlüssel mehr bereit gewesen wäre; den initialen hatte ich gerade gelöscht und der Yubikey hatte andere Werte.
Was tun fragte ich mich, besonders weil eine Suchmaschinen-Suche auf diese Fragestellung keine eindeutige Antwort gab. Ich sah mich schon alles Backuppen, formatieren und restoren (oder - wenn ich gut drauf gewesen wäre - neues Device mit luks anlegen, dd if.. of ... von A nach B schieben).
Mein Glück ist, dass das Laufwerk ja noch online und damit geöffnet ist. Auch der Master-Key ist (für root) auslesbar.
Zugschlus ist gerade auf der DebConf und hat Margarita Manterolagegenüber sitzen. Und sie kennt luks sehr gut. Ich weiss nicht ob sie aus Erfahrung spricht, aber sie hat den richtigen Tip gehabt:
Mit anderen Worten: hole via "dmsetup table --showkeys" den Master-Key aus dem noch geöffneten Volume; bereite die Ausgabe ein wenig auf und gibt sie cryptsetup um einen neuen (initialen) Key für das LUKS-Device zu geben. Mit Hilfe des Master-keys kann man also auch ohne einen (bekannten) Schlüssel einen neuen Schlüssel zu einem LUKS-Device hinzufügen.
Das war für mich jetzt die Rettung. Und ich werde mir diese Kombination definitiv merken, danke marga!!
(Update: der Befehl geht länger... jetzt wird er nicht mehr abgeschnitten!)
Ich habe vor einiger Zeit meinem Laptop beigebracht, die verschlüsselte LUKS-Partition nicht nur über eine Passphrase, sondern auch über eine (andere) Passphrase, gepaart mit meinem Yubikey zu entschlüsseln.
Das hat sich heute gerächt, weil ich den Yubikey für andere Zwecke umkonfiguriert hatte. Ich dachte dann, diesen Slot in LUKS löschst Du mal.
Dafür muss man immer noch ein funktionierendes Passwort angeben.
Dumm nur: Es wurde das Passwort gelöscht welches ich eingegeben hatte. Ganz dumme Geschichte - damit wäre beim nächsten hochfahren das System nicht mehr hochgekommen, weil kein Entschlüsselungs-Schlüssel mehr bereit gewesen wäre; den initialen hatte ich gerade gelöscht und der Yubikey hatte andere Werte.
Was tun fragte ich mich, besonders weil eine Suchmaschinen-Suche auf diese Fragestellung keine eindeutige Antwort gab. Ich sah mich schon alles Backuppen, formatieren und restoren (oder - wenn ich gut drauf gewesen wäre - neues Device mit luks anlegen, dd if.. of ... von A nach B schieben).
Mein Glück ist, dass das Laufwerk ja noch online und damit geöffnet ist. Auch der Master-Key ist (für root) auslesbar.
Zugschlus ist gerade auf der DebConf und hat Margarita Manterolagegenüber sitzen. Und sie kennt luks sehr gut. Ich weiss nicht ob sie aus Erfahrung spricht, aber sie hat den richtigen Tip gehabt:
# cryptsetup luksAddKey $device_name --master-key-file <(dmsetup table --showkeys $volume_name | awk '{print $5 }' | xxd -r -p)
Mit anderen Worten: hole via "dmsetup table --showkeys" den Master-Key aus dem noch geöffneten Volume; bereite die Ausgabe ein wenig auf und gibt sie cryptsetup um einen neuen (initialen) Key für das LUKS-Device zu geben. Mit Hilfe des Master-keys kann man also auch ohne einen (bekannten) Schlüssel einen neuen Schlüssel zu einem LUKS-Device hinzufügen.
Das war für mich jetzt die Rettung. Und ich werde mir diese Kombination definitiv merken, danke marga!!
(Update: der Befehl geht länger... jetzt wird er nicht mehr abgeschnitten!)
Comments
Display comments as Linear | Threaded
mutax on :
Luks hat den master key ungecrypted und auslesbar im Speicher und ein tool um ihn auszulesen. Als Angreifer der irgendwie temporär root bekommt reicht also ein kommando um offline die platte zu decrypten, wenn der Rechner ausgeschaltet wurde.
Marc 'Zugschlus' Haber on :
Marc 'Zugschlus' Haber on :