Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2019-10-05 13:57:02

  Xhris - Użytkownik

Xhris
Użytkownik
Zarejestrowany: 2019-10-05

[Solved]Jak odzyskać dane z szyfrowanej części nadpisanej partycji?

Heja.

Mialem dualboot Mint, Windows, na dysku 4 partycje: boot, winda, linux i zaszyfrowana na super tajne dane. Postanowiłem pozbyć się windy i przeinstalować system. Uruchomiłem instalke z Live USB i będąc po części zaabsorbowanym tym co się dzieje na ekranie innego peceta zamiast wskazać ręczny podział partycji wybrałem automatyczny z szyfrowaniem - sądząc ze będę pytany o kolejne kroki. Proces instalacji się rozpoczął, ale przerwałem go po kilku sekundach. Z czterech partycji które wyglądały mniej więcej tak:

Kod:

sda      8:0    0 119.2G  0 disk
├─sda1   8:1    0   512M  0 part
├─sda2   8:2    0   40G  0 part
├─sda3   8:3    0   40G  0 part
└─sda4   8:4    0   38G  0 SZYFROWANA (cryptsetup)

Zrobiły się 3, które wyglądają teraz tak:

Kod:

sda      8:0    0 119.2G  0 disk
├─sda1   8:1    0   512M  0 part
├─sda2   8:2    0   732M  0 part
└─sda3   8:3    0   118G  0 part

https://pasteboard.co/IAyyPsR.jpg
https://pasteboard.co/IAyyPsR.jpg

Przy probie montowania sda3 poleceniem:

Kod:

# cryptsetup open /dev/sda3 backup

owszem pojawia się monit o hasło, jednak otrzymuje zwrotnie info:"brak klucza dla tego hasła".
Dodam, ze wpisuje hasło deszyfrujące sprzed zmian. Podczas instalacji nowego sytemu, instalator nie zdążył mnie zapytać o hasło, ponieważ proces przerwałem, naciskając eneter otrzymuje ten sam powyższy komunikat.

Czy mogę się jeszcze dostać do tych danych, czy to tylko walka z wiatrakami ?
Pozdrawiam.

Ostatnio edytowany przez Xhris (2019-10-15 15:49:34)

Offline

 

#2  2019-10-05 15:06:22

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: [Solved]Jak odzyskać dane z szyfrowanej części nadpisanej partycji?

Pokaż z root'a:

Kod:

# lsblk -o "NAME,SIZE,FSTYPE,TYPE,LABEL,MOUNTPOINT,UUID"

Jak znasz dokładne miejsce gdzie się zaczynała zaszyfrowana partycja, to możesz tam przy pomocy fdisk/gdisk stworzyć pustą partycję. Wtedy cruptsetup powinien znaleźć tam nagłówek luks i być może będzie on w nietkniętym stanie i pozwoli zdeszyfrować partycję. Jako, że utworzyłeś nowy system plików na tej dużej partycji już, to kopie superbloku zostały zapisane w pewnych konkretnych sektorach, wgrywając się też pewnie w miejsce tej zaszyfrowanej partycji i zapewne poleciał też system plików tej partycji po odszyfrowaniu, więc będzie trzeba go przeskanować by go naprawić -- pewnie jakieś dane polecą, być może niewiele, albo też żadne -- kwestia szczęścia.

A to jest SSD czy HDD? Bo jak ten pierwszy, to raczej już tego nagłówka nie znajdziesz. :]

Ostatnio edytowany przez morfik (2019-10-05 15:07:47)

Offline

 

#3  2019-10-05 23:26:17

  loms - Zbanowany

loms
Zbanowany
Skąd: Tarnowskie Góry
Zarejestrowany: 2007-07-20
Serwis

Re: [Solved]Jak odzyskać dane z szyfrowanej części nadpisanej partycji?

Nic nie odzyskasz.
Poza tym mi to wygląda na nowe konto morfika i nawet sam sobie odpisał.


Windows 10 Pro, Debian Buster

Offline

 

#4  2019-10-07 16:42:14

  Xhris - Użytkownik

Xhris
Użytkownik
Zarejestrowany: 2019-10-05

Re: [Solved]Jak odzyskać dane z szyfrowanej części nadpisanej partycji?

Dzięki @morfik.
Tak to jest dysk SSD i nie byłem w stanie zapamiętać dokładnego układu partycji. Polecenie lsblk wyświetlało niestety już układ partycji zapisanych za pomocą GPT,  wcześniej był MBR. Próbowałem coś wskórać testdiskiem, niestety bezskutecznie. Napisałem wyświetlało, ponieważ już na dysku znajduje się nowy system, a dane poszły w zapomnienie :(

A zmieniając temat, nadal używasz SPA i fwknopa czy czegoś innego?

Pozdrawiam.

Offline

 

#5  2019-10-07 17:30:33

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: [Solved]Jak odzyskać dane z szyfrowanej części nadpisanej partycji?

To można odzyskać, przynajmniej przy założeniu pewnych rzeczy.

- jeśli nagłówek LUKS wciąż tam jest i discard/trim go w żaden sposób nie ruszył.
- nagłówek nie został nadpisany w żaden sposób przez późniejsze operacje zapisu na dysku
- to, że teraz jest GPT, to bez znaczenia -- można by stworzyć nową tablicę partycji MBR i odtworzyć stary układ partycji, choć w sumie to wymagane jest tylko znalezienie początku tej zaszyfrowanej partycji i oznaczenie go w tablicy partycji.
- można oszacować gdzie zaczyna się ta zaszyfrowana partycja, nawet nie znając dokładnego sektora. Bo jak tam masz rozmiary partycji 512M, 40G i 40G, to zakładając, że masz również równanie do 1MiB, to początek zaszyfrowanej partycji znajduje się na 1M+512M+40G+40G i w tym miejscu można by stworzyć nową partycję i rozciągnąć ją do końca dysku, bo wątpię, że te 38G to dokładnie 38G. xD
- system plików po odszyfrowaniu tej partycji będzie zapewne uszkodzony ale fsck powinien sobie poradzić, najwyżej wywali uszkodzone pliki ale reszta danych będzie cała.

Ostatnio edytowany przez morfik (2019-10-07 17:32:04)

Offline

 

#6  2019-10-08 22:21:32

  Xhris - Użytkownik

Xhris
Użytkownik
Zarejestrowany: 2019-10-05

Re: [Solved]Jak odzyskać dane z szyfrowanej części nadpisanej partycji?

Już nie można kolego morfik, tam już jest pojechane zerami i jest nowa zaszyfrowana partycja, ale dziękuję za konstruktywne podejście do tematu.

Pozdrawiam.

Offline

 

#7  2019-10-13 13:43:33

  Xhris - Użytkownik

Xhris
Użytkownik
Zarejestrowany: 2019-10-05

Re: [Solved]Jak odzyskać dane z szyfrowanej części nadpisanej partycji?

Heja.

Niestety na partycji były newralgiczne dane, wiec kolejna rozpaczliwa próba. Przywróciłem obraz dysku (Clonezilla), wynik polecenia lsblk, (z sdb jest uruchomione disrto LIVE):

Kod:

# lsblk -o "NAME,SIZE,FSTYPE,TYPE,LABEL,MOUNTPOINT,UUID"

NAME     SIZE FSTYPE      TYPE LABEL                       MOUNTPOINT UUID
loop0    1.9G iso9660     loop Linux Mint                  /cdrom     2019-07-29-13-05-07-00
loop1    1.8G squashfs    loop                             /rofs      
sda    119.2G             disk                                        
├─sda1   512M vfat        part                                        C420-2C96
├─sda2   732M ext4        part                                        cfr567y3-ht56-67yu-67yh-cfdfr345efca
└─sda3   118G crypto_LUKS part                                        84frt56y-56hf-drtg-56tg-dfghygfd5f2d
sdb     57.3G             disk                                        
├─sdb1  57.3G ntfs        part PENDRIVE                    /isodevice 45G6Y7U8FC229E60
└─sdb4   5.1G ext2        part casper-rw                              7dfr4693-56y6-yuif-gthy-fgtyhu789cb5
sr0     1024M             rom

Poniżej log narzędzia Testdisk:

Kod:

TestDisk 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org
OS: Linux, kernel 4.15.0-54-generic (#58-Ubuntu SMP Mon Jun 24 10:55:24 UTC 2019) x86_64
Compiler: GCC 7.2
ext2fs lib: 1.44.1, ntfs lib: libntfs-3g, reiserfs lib: none, ewf lib: none, curses lib: ncurses 6.0
/dev/sda: LBA, HPA, LBA48 support
/dev/sda: size       250069680 sectors
/dev/sda: user_max   250069680 sectors
/dev/sda: native_max 250069680 sectors
/dev/sda: dco        250069680 sectors

Warning: can't get size for Disk /dev/mapper/control - 0 B - 0 sectors, sector size=512
Hard disk list

Disk /dev/sda - 128 GB / 119 GiB - CHS 15566 255 63, sector size=512 - TS1289JUHDEF, S/N:C34345DFS ,FW:345E312
Disk /dev/sdb - 61 GB / 57 GiB - CHS 58656 64 32, sector size=512 - SanDisk Ultra, FW:1.00

Partition table type (auto): EFI GPT
Disk /dev/sda - 128 GB / 119 GiB - TS1289JUHDEF
Partition table type: EFI GPT

Analyse Disk /dev/sda - 128 GB / 119 GiB - CHS 15566 255 63
hdr_size=92
hdr_lba_self=1
hdr_lba_alt=250069679 (expected 250069679)
hdr_lba_start=34
hdr_lba_end=250069646
hdr_lba_table=2
hdr_entries=128
hdr_entsz=128

Current partition structure:
 1 P EFI System                  2048    1050623    1048576 [EFI System Partition]
 2 P Unknown                  1050624    2549759    1499136
 3 P Unknown                  2549760  250068991  2475192323

Po szybkim skanowaniu, Testdisk odnajduje kilka dodatkowych partycji, gdzie pierwsza i dwie ostatnie są na zielono z parametrem P (zgodnie z legenda  > Primary, reszta z literka D > deleted):

Kod:

Disk /dev/sda - 128 GB / 119 GiB - CHS 15566 255 63
     Partition               Start        End    Size in sectors
>P MS Data                     2048    1050623    1048576 [NO NAME]
 D MS Data                  1050624    2549759    1499136
 D MS Data                  2000894   70381565   68380672
 D MS Data                  2549760    2553855       4096
 P MS Data                 70381568  162179071   91797504
 P MS Data                162179072  162183167       4096

Animowany GIF pokazuje jak to wygląda:
https://www.fotosik.pl/zdjecie/14a42c554fb132b7
https://www.fotosik.pl/zdjecie/14a42c554fb132b7
https://pasteboard.co/IBLPGKf.gif
https://pasteboard.co/IBLPGKf.gif

Partycje 4 i 6 (licząc od góry) testdisk pokazuje  jako LUKS 1, ale każdej rozmiar to około 2MB, (może sa jest to miejsce gdzie były , są trzymane nagłówki - dwie szyfrowane partycje stara oraz nagłówek nowej, przynajmniej jeszcze niezaszyfrowanej).

Partycja 5 to NTFS czyli winda (z tej po zapisaniu struktury i wykonaniu ponownego rozruchu udało mi się przywrócić ok. 10GB danych).

Obstawiałbym, ze partycja 3 była zaszyfrowana (napis Backup na dole - właśnie tak była labelowana) jednak nawet po zmianie jej typu na MBR i ustawieniu Linux LUKS, nie
mogę nadal się do danych dostać.(poniższy gif obrazuje sytuacje):
https://www.fotosik.pl/zdjecie/7e6cb6bf604513b0
https://www.fotosik.pl/zdjecie/7e6cb6bf604513b0
https://pasteboard.co/IBLQyI9.gif
https://pasteboard.co/IBLQyI9.gif

Podczas prób montowania kolejno komunikaty:

Kod:

root@mint:/home/mint# mount /dev/sda1 /tmp/sda1
mount: /tmp/sda1: wrong fs type, bad option, bad superblock on /dev/sda1, missing codepage or helper program, or other error.

root@mint:/home/mint# mount /dev/sda2 /tmp/sda2
mount: /tmp/sda2: unknown filesystem type 'crypto_LUKS'.

/home/mint# cryptsetup open /dev/sda2 bck2
Enter passphrase for /dev/sda2: 
Requested offset is beyond real size of device /dev/sda2.

Polecenia lsbk -o "SIZE, TYPE..."

Kod:

sda  119.2G        disk                     
├─sda1
│     32.6G        part                     
└─sda2
         2M crypto part

Gdy wybieram inna partycje LUKS 2 wraz z ta trzecia i zmieniam z  D na P, otrzymuje komunikat "Bad structure" (poniższy gif obrazuje sytuacje).
https://www.fotosik.pl/zdjecie/8efba02a01b1a21f
https://www.fotosik.pl/zdjecie/8efba02a01b1a21f
https://pasteboard.co/IBLQXp4.gif
https://pasteboard.co/IBLQXp4.gif

Nie wiem co mogę jeszcze zrobić. Jest szansa na dostanie się do tych danych?

Z góry dzięki, pozdrawiam.

Ostatnio edytowany przez Xhris (2019-10-15 06:56:33)

Offline

 

#8  2019-10-13 20:52:23

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: [Solved]Jak odzyskać dane z szyfrowanej części nadpisanej partycji?

Te dwa wpisy:
D MS Data                  2549760    2553855       4096
P MS Data                162179072  162183167       4096

Rozmiar wskazuje na sam nagłówek LUKS (4096*512=2M). Pierwszy się zaczyna na 1245M, czyli
1M (offset) 512M (sda1) + 732M (sda2) = 1245M. To jest ten nagłówek, który powstał w instalatorze. Więc jego olać.

Ten drugi wpis mówi, że nagłówek (prawdopodobnie tego starego kontenera) znajduje się na 162179072×512/1024/1024, czyli 79,189M -- coś za wcześnie.  Według tego twojego starego układu partycji, ten zaszyfrowany kontener zaczynał się na 1M+512M+40G+40G, czyli 80,513M. Można by sprawdzić czy linux wykryje zaszyfrowany kontener, gdyby utworzyć pustą partycję w miejscu 80,513M i rozciągnąć ją do końca dysku  -- jeśli tak, to można by potem spróbować ją otworzyć.

Fotki mi nie działają.

Ostatnio edytowany przez morfik (2019-10-13 20:56:27)

Offline

 

#9  2019-10-13 21:48:34

  Xhris - Użytkownik

Xhris
Użytkownik
Zarejestrowany: 2019-10-05

Re: [Solved]Jak odzyskać dane z szyfrowanej części nadpisanej partycji?

@morfik, dzięki!

Zaktualizowałem zrzuty na fotosie.pl (powyżej), dodałem linki (na czystym FF działają z pasteboard.com [firefox -p] < to dla tych co mają ochotę zajrzeć).

Do końca nie jest tak z rozmiarem tych partycji.Tak jak wspomniałem wcześniej, ten układ jest mniej więcej !
Tam była partycja "boot" MBR, 256MB na Minta, jakaś rozruchowa na Wwndę (nie wiem ile), nie wiem w jakich proporcjach.
Jestem w stanie zaryzykować każde rozwiązanie, skoro mam obraz (dzięki @mario_7).

Pozdrawiam.

Offline

 

#10  2019-10-13 21:56:17

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: [Solved]Jak odzyskać dane z szyfrowanej części nadpisanej partycji?

No jak mniej więcej to zostaje jedynie utworzyć partycje w fdisk/gdisk rozpoczynając od 162179072 sektora i kończąc na końcu dysku.

Jak będą problemy z otworzeniem kontenera -- nie będzie przyjmował hasła, to znaczy, że pozamiatane.

Ostatnio edytowany przez morfik (2019-10-13 21:57:02)

Offline

 

#11  2019-10-15 14:05:57

  Xhris - Użytkownik

Xhris
Użytkownik
Zarejestrowany: 2019-10-05

Re: [Solved]Jak odzyskać dane z szyfrowanej części nadpisanej partycji?

Na początku próbowałem powiększyć partycje za pomoca gparted, jednak nie moglem wykorzystać całej dostępnej przestrzeni wiec zmniejszyłem ja o 1MB:
Animowany gif:
https://ubuntu.pl/forum/download/file.php?id=4387

Przy probie montowania otrzymywałem komunikat:

Kod:

Error mounting /dev/dm-0 at /media/mint/BCK: wrong fs type, bad option, bad superblock on /dev/mapper/BCK, missing codepage or helper program, or other error

Próbowałem dalej:

Kod:

# fsck -p /dev/mapper/BCK 

BCK: The filesystem size (according to the superblock) is 10985728 blocks
The physical size of the device is 10985472 blocks
Either the superblock or the partition table is likely to be corrupt!

BCK: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
    (i.e., without -a or -p options)

Jak widać powyżej rozmiar partycji utworzonej jest mniejszy niż zapisany w nagłówku, wiec zacząłem się zastanawiać czy to wina uszkodzonego nagłówka czy to przez ten zmniejszony 1MB.
Po chwili zabawy z parted, probie wyszukania opcji w stylu "uzyj calego dostępnego miejsca do rozciągnięcia partycji", zrezygnowałem i uzylem cfdisk aby, powiększyć partycje wykorzystując cala pozostałą przestrzen, reboot, ponowne montowanie  i.. Thunar wyświetlił katalogi, pliki zaszyfrowanej partycji.

:) SUPER !!!

Dzięki za pomoc.

Pozdrawiam.

Offline

 

#12  2019-10-15 16:15:38

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: [Solved]Jak odzyskać dane z szyfrowanej części nadpisanej partycji?

Xhris napisał(-a):

Na początku próbowałem powiększyć partycje za pomoca gparted, jednak nie moglem wykorzystać całej dostępnej przestrzeni wiec zmniejszyłem ja o 1MB:

Te bardziej zaawansowane narzędzia do partycjowania wymagają chyba, by ilość sektorów była podzielna przez pewną liczbę, np. 8 albo 1MiB, dlatego one zawsze na końcu zostawiają pare-paręset KiB wolnego miejsca.

Xhris napisał(-a):

Kod:

# fsck -p /dev/mapper/BCK 

BCK: The filesystem size (according to the superblock) is 10985728 blocks
The physical size of the device is 10985472 blocks
Either the superblock or the partition table is likely to be corrupt!

BCK: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
    (i.e., without -a or -p options)

Jak widać powyżej rozmiar partycji utworzonej jest mniejszy niż zapisany w nagłówku, wiec zacząłem się zastanawiać czy to wina uszkodzonego nagłówka czy to przez ten zmniejszony 1MB.

W tych pierwszych 2MiB na zaszyfrowanej partycji jest nagłówek LUKS — tam nie ma żadnych danych dotyczących systemu plików — tam jest zawarta jedynie informacja na temat tego jak kernel linux'a ma traktować ten wycinek dysku. Dopiero w sektorze za tymi 2MiB jest ulokowany superblock — i tu się zaczyna faktycznie system plików, którego długość była o 256 bloków (512 bajtowych) za krótka, czyli trzeba by rozciągnąć tę partycję w gdisk/fdisk/gparted o te dodatkowe 128 KiB i ten błąd by znikł.

Xhris napisał(-a):

Po chwili zabawy z parted, probie wyszukania opcji w stylu "uzyj calego dostępnego miejsca do rozciągnięcia partycji", zrezygnowałem i uzylem cfdisk aby, powiększyć partycje wykorzystując cala pozostałą przestrzen, reboot, ponowne montowanie  i.. Thunar wyświetlił katalogi, pliki zaszyfrowanej partycji.

Jak nie było żadnych innych błędów zwracanych przez superblock przy montowaniu/fsck, to dane pozostały nietknięte, także masz szczęście. xD

Ostatnio edytowany przez morfik (2019-10-15 16:25:28)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)