ubuntuusers.de

Verschlüsselte Installation, alle anderen Festplatten gelöscht, Recovery von LUKS und Truecrypt

Status: Gelöst | Ubuntu-Version: Ubuntu 12.10 (Quantal Quetzal)
Antworten |

gnomicha

(Themenstarter)
Avatar von gnomicha

Anmeldungsdatum:
27. September 2010

Beiträge: 107

Kämpfe mich grad mit loopdevices ab...

Möchte das DD- Image von /sdb windows500gb.img in Ubuntu einhängen, um es wie ein Laufwerk behandeln zu können. Testdisk konnte ich -erfolglos- direkt auf das Image ansetzen, jetzt möchte ich die TestCrypt- Geschichte von weiter oben probieren. Mangels ausreichend Hardware (man kann offenbar nie genügend Rechner haben) möchte ich das DD- Image zu einer Win7- VM zuordnen.

Mein Problem ist, dass ich das DD- Image nicht gemountet bekomme.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
# Mountpoint anlegen
mb@mbpclx:~$ sudo mkdir /mnt/winhd500

#Versuch zu mounten
mb@mbpclx:~$ sudo mount -o loop /media/truecrypt1/winhd500.img /mnt/winhd500/
mount: Sie müssen den Dateisystemtyp angeben

#Versuch mit bestehendem Loopdevice ;)
mb@mbpclx:~$ sudo losetup /dev/loop3 /media/truecrypt1/winhd500.img 

#Mounten die zweite
mb@mbpclx:~$ sudo mount -o loop /media/truecrypt1/winhd500.img /mnt/winhd500/
mount: Sie müssen den Dateisystemtyp angeben

#Angabe des FS- Typs
mb@mbpclx:~$ sudo mount -t ext4 /dev/loop3 /mnt/winhd500/
mount: wrong fs type, bad option, bad superblock on /dev/loop3,
       missing codepage or helper program, or other error
       Manchmal liefert das Syslog wertvolle Informationen  versuchen
       Sie  dmesg | tail  oder so

Habe ich Tomaten vor dem Kopf?

gnomicha

(Themenstarter)
Avatar von gnomicha

Anmeldungsdatum:
27. September 2010

Beiträge: 107

Raybuntu schrieb:

Wie gesagt, ich war in der selben Situation und Testdisk konnte auch nichts finden. Du hast doch ein image der Platte gezogen? Ich würde mit dem Image mal versuchen die Partions Tabelle manuell wieder herzustellen mit fdisk. Suche dir vorher den LuksHeader nach der Methode des Debian Forumeintrags das ich dir geschickt habe.

1
2
sudo losetup /dev/loop0 /pfad/zum/image.img
sudo fdisk /dev/loop0

Bei mir hatte es geklappt weil ich noch ungefähr wusste wie groß die Partition ist.

Btw.: Nur mit dem Backup spielen!

Okay, "Erfolg" dahingehend, dass mir 4 Einträge in der Partitionstabelle angezeigt werden:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
mb@mbpclx:~$ sudo fdisk /dev/

  p   Die Partitionstabelle anzeigen

Befehl (m für Hilfe): p

Disk /dev/loop3: 500.1 GB, 500107862016 bytes
255 Köpfe, 63 Sektoren/Spur, 60801 Zylinder, zusammen 976773168 Sektoren
Einheiten = Sektoren von 1 × 512 = 512 Bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Festplattenidentifikation: 0x38c704e6

      Gerät  boot.     Anfang        Ende     Blöcke   Id  System


### Aber im Expertenmenü ###

Expertenkommando (m für Hilfe): p

Festplatte /dev/loop3: 255 Köpfe, 63 Sektoren, 60801 Zylinder

Nr AF  Kp Sek  Zyl  Kp Sek  Zyl     Anfang     Größe ID
 1 00   0   0    0   0   0    0          0          0 00
 2 00   0   0    0   0   0    0          0          0 00
 3 00   0   0    0   0   0    0          0          0 00
 4 00   0   0    0   0   0    0          0          0 00

Jetzt meinst Du, ich sollte eine leere Partitionstabelle erstellen? Oder nur eine neue Partition...

1
2
 n   Eine neue Partition anlegen
 o   Eine neue leere DOS Partitionstabelle anlegen

Bin vllt. schon etwas begriffsstutzig, sorry 😉

Raybuntu

Avatar von Raybuntu

Anmeldungsdatum:
18. August 2007

Beiträge: 795

Wohnort: Raccoon City

Moment! Schön langsam vorgehen. Du willst erstmal an die Daten. Dafür brauchst du nicht unbedingt eine Partitionstabelle. Du sagst du weißt wo dein Truecrypt Header ist!? Das heißt du weißt ab wieviel Byte bzw nach sovielen 512Byte Sectoren kommt deine Truecrypt Platte. Damit kannst du mit

1
sudo losetup -o HIER_OFFSET /dev/loop0 /pfad/zum/device

den begin deiner ersten Partition angeben. Wir wissen nicht genau wann diese endet deshalb lassen wir sie größer. Das heißt wir gehen erstmal davon aus das nur 1 Partition mit maximaler größer besteht.

Danach hast du ein device das deine Partition wiederspiegelt (wie z.B /dev/sda1). In diesem Moment würde ich mit Truecrypt versuchen das device zu entschlüsseln (wie das auch immer geht). Mit cryptsetup würde man:

1
sudo cryptsetup luksOpen /dev/loop0 IRGENDEINNAME

machen. Dadurch bekommst du ein geöffnetes mapper device. Dieses kannst du dann direkt mounten mit:

1
sudo mount /dev/mapper/IRGENDEINNAME /mnt/irgeneinmountpoint

Dann solltest du an deine Daten der ersten Partition kommen. Solltest du noch weitere Partitionen danach hast musst du den nächsten Header suchen und analog mit offset arbeiten.

Grüße

gnomicha

(Themenstarter)
Avatar von gnomicha

Anmeldungsdatum:
27. September 2010

Beiträge: 107

Raybuntu schrieb:

Moment! Schön langsam vorgehen. Du willst erstmal an die Daten. Dafür brauchst du nicht unbedingt eine Partitionstabelle. Du sagst du weißt wo dein Truecrypt Header ist!? Das heißt du weißt ab wieviel Byte bzw nach sovielen 512Byte Sectoren kommt deine Truecrypt Platte. Damit kannst du mit

1
sudo losetup -o HIER_OFFSET /dev/loop0 /pfad/zum/device

den begin deiner ersten Partition angeben. Wir wissen nicht genau wann diese endet deshalb lassen wir sie größer. Das heißt wir gehen erstmal davon aus das nur 1 Partition mit maximaler größer besteht.

Danach hast du ein device das deine Partition wiederspiegelt (wie z.B /dev/sda1). In diesem Moment würde ich mit Truecrypt versuchen das device zu entschlüsseln (wie das auch immer geht). Mit cryptsetup würde man:

1
sudo cryptsetup luksOpen /dev/loop0 IRGENDEINNAME

machen. Dadurch bekommst du ein geöffnetes mapper device. Dieses kannst du dann direkt mounten mit:

1
sudo mount /dev/mapper/IRGENDEINNAME /mnt/irgeneinmountpoint

Dann solltest du an deine Daten der ersten Partition kommen. Solltest du noch weitere Partitionen danach hast musst du den nächsten Header suchen und analog mit offset arbeiten.

Grüße

Ich bin mir nicht sicher, wo genau der Truecrypt- Header beginnt, sprich welchen offset ich angeben muss. Ich weiß, dass die Partition 349GB groß war (und am Ende der Festplatte lag), und die Platte eine 500GB- Platte (netto 465GB) ist.

Bei der Berechnung des Startsektors wollte ich GB in Sektoren umwandeln, laut hier ist ein Sektor immer 512 Byte groß.

Über Tante Google habe ich 500 GB in Byte umgerechnet:

Ungefähr 4.520.000 Ergebnisse (0,23 Sekunden) 

	 	500 gigabyte = 536 870 912 000 byte

und dieses Ergebnis durch 512 dividiert (Bild 1 im Anhang) und damit die Anzahl der Sektoren mit 1.048.576.000 erhalten.

Nutze ich aber die Werte von Testdisk, die im Menü "Geometry" angezeigt werden

Disk /media/truecrypt1/winhd500.img - 500 GB / 465 GiB - CHS 60802 255 63, sector size=512

erhalte ich die Gesamtzahl von 976.784.130 Sektoren (Zylinder * Köpfe * Sektoren)...

Wie treffe ich denn jetzt den richtigen Einstiegspunkt? Ich lese mich grad dazu ein: hier und hier...

Schönen freien Tag! Micha

Bilder

gnomicha

(Themenstarter)
Avatar von gnomicha

Anmeldungsdatum:
27. September 2010

Beiträge: 107

Wenn ich bei der Umrechnung GB in Byte statt mit 500GB mit 465GB rechne, komme ich in die Nähe der Sektorenanzahl, die ich bei der Multiplikation der Werte aus Testdisk erhalte:

465GB in Byte:

	 	465 gigabytes = 499 289 948 160 bytes

dividiert durch 512

499289948160/512 = 976768065 Sektoren) 

60802 Zylinder * 255 Köpfe * 63 Sektoren (siehe hier:

 Disk /media/truecrypt1/winhd500.img - 500 GB / 465 GiB - CHS 60802 255 63, sector size=512 

)

ergibt 975175680 Sektoren.

Ist zwar näher als vorher, aber noch ein Unterschied von gut anderthalb Millionen Sektoren (1592385) Bissl viel zum Probieren, oder denke ich zu kompliziert? 😮

Raybuntu

Avatar von Raybuntu

Anmeldungsdatum:
18. August 2007

Beiträge: 795

Wohnort: Raccoon City

Hallo,

Du musst den Anfangspunkt nicht raten. Dafür benutzt man hexdump!! Schau dir diesen Debian Forum Eintrag an: https://debianforum.de/forum/viewtopic.php?f=29&p=831153#p831828

gnomicha

(Themenstarter)
Avatar von gnomicha

Anmeldungsdatum:
27. September 2010

Beiträge: 107

Raybuntu schrieb:

Hallo,

Du musst den Anfangspunkt nicht raten. Dafür benutzt man hexdump!! Schau dir diesen Debian Forum Eintrag an: https://debianforum.de/forum/viewtopic.php?f=29&p=831153#p831828

Okay, aber das klappt afaik nur, wenn ich eine Headersignatur habe, nach der ich suchen kann.

hexdump -C /dev/hdd | grep "4c 55 4b 53 ba be"

Sowas habe ich nicht, deshalb tastete ich mich von der Größe ausgehend heran, was so ungenau ist, dass ich es vermutlich lassen kann. Und ich habe aufgrund mangelnder Erfahrung Truecrypt zur Verschlüsselung der Datenpartitionen gewählt weil ich dachte, dass die Wiederherstellung leichter fallen würde. Nun, das Gegenteil ist der Fall und meine nächsten Backups sind LUKS - verschlüsselt.

Heute reichts mir - morgen versuche ich TestCrypt (muss dafür noch ein Windows organisieren und mein Image von /sdb auf eine windowslesbare Platte kopieren). Nach Beschreibung im Forum von [www.cgsecurity.org ] grast Testcrypt die Platte nach einem Truecrypt - Sektor automatisiert ab.

Raybuntu

Avatar von Raybuntu

Anmeldungsdatum:
18. August 2007

Beiträge: 795

Wohnort: Raccoon City

Ich habe gerade nachgeschaut und erfahren das Truecrypt keine Strings im Header hat sondern nur aus Zufallsdaten besteht. Das einzige was mir noch einfällt ist das eingrenzen den Größe und die blöcke dann per brute force aufprobieren (ein script kann helfen). Ansonsten kannst du mit einem Hex-Editor den Bereich genauer anschauen. Vllt. hast du Glück und der Bereich vorher ist mit NULL gefüllt.

Viel Glück

http://forums.anandtech.com/showthread.php?t=2248315

gnomicha

(Themenstarter)
Avatar von gnomicha

Anmeldungsdatum:
27. September 2010

Beiträge: 107

Raybuntu schrieb:

Ich habe gerade nachgeschaut und erfahren das Truecrypt keine Strings im Header hat sondern nur aus Zufallsdaten besteht. Das einzige was mir noch einfällt ist das eingrenzen den Größe und die blöcke dann per brute force aufprobieren (ein script kann helfen). Ansonsten kannst du mit einem Hex-Editor den Bereich genauer anschauen. Vllt. hast du Glück und der Bereich vorher ist mit NULL gefüllt.

Viel Glück

http://forums.anandtech.com/showthread.php?t=2248315

Servus,

das Daumendrücken hat geholfen 😎 und ich bin glimpflich davon gekommen. In det Kurzfassung habe ich mit Testcrypt, welches einzelne Sektoren dahingehend testet, ob die sich mit dem vorher angegeben Passwort öffnen lassen, einen Backupheader, der sich offensichtlich ab Truecrypt 6 am Ende des verschlüsselten Bereiches befindet, öffnen können. Die Daten sind sicher ☺

Falls jemand mal ein ähnliches Problem bekommt: Testcrypt ist ausführlich in der Sektion Daten Rettung auf Computerbase.de behandelt, der Autor des Tools gibt hier auch Support.

Ganz lieben Dank euch für das Mitdenken und eure Zeit. Am Ende hats geholfen *Strike!*

habt Dank, Micha

Antworten |