LUKS Header mit LVM Daten überschrieben

Alles rund um sicherheitsrelevante Fragen und Probleme.
Antworten
Benutzeravatar
spiralnebelverdreher
Beiträge: 1296
Registriert: 23.12.2005 22:29:03
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Frankfurt am Main

LUKS Header mit LVM Daten überschrieben

Beitrag von spiralnebelverdreher » 08.08.2017 22:20:21

Hallo,
bei einer Partition habe ich versehentlich einen LUKS Header mit LVM Metadaten überschrieben. Vom ursprünglichen LUKS Header ist dokumentiert:

Code: Alles auswählen

cryptsetup luksDump /dev/sdd1
LUKS header information for /dev/sdd1

Version: 1
Cipher name: aes
Cipher mode: xts-plain64:sha256
Hash spec: sha1
Payload offset: 4096
MK bits: 512
MK digest: xx xx
MK salt: xx xx xx
MK iterations: nnnnn
UUID: abcde-fghij-12345-xyzab
Weiterhin ist mit luksDUMP zu zwei Keylsots folgendes bekannt:

Code: Alles auswählen

Key Slot 0: ENABLED
Iterations: nnnnnn
Salt:  aa bb cc dd
Key material offset: 8
AF stripes: 4000
Key Slot 1: ENABLED
Iterations: mmmmm
Salt: hh ii jj kk 
Key material offset: 512
AF stripes: 4000
Die Passwörter der Keyslots sind auch bekannt.

Gibt es eine Chance, mit diesen Informationen die Partition wieder herzustellen mit einem Zeitaufwand geringer als 8 Stunden? Es sind keine essentiell wichtigen Daten in der Partition, aber das Wiederaufsetzen bspw. von virtuellen Maschinen mit Windows-OSen ist nicht vergüngungssteuerpflichtig. Wenn es also einen kürzeren Weg gibt bin ich für Hinweise dankbar.

Nachtrag:

Code: Alles auswählen

hexdump -C /dev/sdd1 | grep <"4c 55 4b 53 ba be"
hat leider kein Ergebnis aufgeworfen.

Benutzeravatar
spiralnebelverdreher
Beiträge: 1296
Registriert: 23.12.2005 22:29:03
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Frankfurt am Main

Re: LUKS Header mit LVM Daten überschrieben

Beitrag von spiralnebelverdreher » 11.08.2017 14:54:03

Mit etwas Recherche bin ich zur vorläufigen Einschätzung gelangt, dass in meinem Fall die Daten nicht wieder herzustellen sind.
Der LUKS Header ist etwa 2MByte groß, der LVM Header etwa 1 MByte. Damit ist die erste Hälfte des LUKS Headers überschrieben worden. Das für die Wiederherstellung notwendige Schlüsselmaterial kann bei LUKS in 1 bis 8 Slots abgelegt sein; in meinem Fall sind zwei Slots benutzt. Diese liegen aber beide innerhalb des zerstörten Teils des LUKS Headers. Hätte ich fünf Passwörter benutzt und wüsste ich das fünfte auch, sähe es wohl anders aus. )100% sicher bin ich mir da aber nicht, da ich die Verteilfunktion des kurzen Schlüsselmaterials auf die vielen Sektoren nicht genauer betrachtet habe. Schlimmstenfalls ware auch bei acht genutzten Slots nichts mehr zu retten gewesen.)

So habe erstens ich gelernt, das nicht nur "cryptsetup luksDump" mein Freund ist, sondern dass zweitens auch "cryptsetup luksBackup" ein hilfreicher Freund ist - wenn man das rechtzeitig macht! Aber Achtung, das Header Backup kann natürlich (nur) mit zum Backup-Zeitpunkt gültigen Passwörten genutzt werden.

Vielleicht hilft mein Beispiel anderen Nutzern, ähnlichen Schaden zu vermeiden.

Referenz:
https://en.wikipedia.org/wiki/Logical_V ... 28Linux%29
http://tomb.dyne.org/Luks_on_disk_format.pdf

Antworten