J'essaie de récupérer les données à partir d'un défaut/usine crypté Samsung Galaxy S7 Edge coincé dans un boucle de démarrage (par exemple : redémarrage sans fin lors du démarrage du système). Il utilise la rom stock. Seul le recovery (twrp) et le mode téléchargement fonctionnent. J'ai besoin soit de réparer le bootloop ou de décrypter à au moins le partition de données dans twrp (je connais le schéma de verrouillage). Note : I Je sais que le bootloop peut être résolu par une réinitialisation d'usine, mais cela entraînerait perte de données.
Informations générales :
Model: SM-G935F
Codename: hero2lte
Android version: Stock 7.1.x (almost sure)
TWRP: 3.2.3-0
Installer
J'ai suivi le Guide adb et le guide de montage (seulement jusqu'à et y compris l'installation de twrp ; LineageOS n'a pas été installé).
Après avoir installé adb y heimdall sur le pc, c'est ce qui a été fait sur le téléphone :
- Entrer en mode téléchargement
heimdall flash --RECOVERY twrp-3.2.3-0-hero2lte.img
- Redémarrer en mode de récupération
Il a continué à dire qu'il ne pouvait pas monter /système ni /données mais il jamais demandé à (et ne le fait toujours pas) pour le mot de passe de cryptage ou autre. Quand essayant de faire une sauvegarde nandroid, le stockage interne s'est affiché comme 0 MB et il a erré out.
Le démarrage du système a fonctionné sans problème.
Ensuite, j'ai essayé d'installer (LineageOS' ) su pour pouvoir sauvegarder les choses correctement en utilisant quelque chose comme oandbackup ou TitaniumBackup :
- Démarrer en mode de récupération
adb push addonsu-15.1-arm64-signed.zip
- Installer -> addonsu-15.1-arm64-signed.zip
Je pensais que l'une des choses suivantes allait se produire :
- L'écriture fonctionnerait, et su serait disponible.
- L'écriture fonctionnerait, et la mémoire vive l'ignorerait.
- L'écriture échouerait, rien ne se passerait
Il a montré quelques erreurs sur les partitions à nouveau (jusqu'à ce point, je pensais que seulement les données a été chiffrée, pas celle du système).
J'ai essayé de redémarrer -> système, et ce qui s'est passé c'est que :
- L'appareil était (et est toujours) coincé dans une boucle de démarrage
J'ai donc essayé d'utiliser le système LineageOS su-démontage :
- Démarrer en mode de récupération
adb push addonsu-remove-15.1-arm64-signed.zip
- Installer -> addonsu-remove-15.1-arm64-signed.zip
Pourtant, rien ne semble avoir changé. Journal à l'écran de TWRP :
Could not mount /data and unable to find crypto footer.
Failed to mount '/data' (Invalid argument)
Updating partition details...
Failed to mount /data (Invaild argument)
...done
Unable to mount storage
Failed to mount /data (Invaild argument)
Full SELinux support is present.
Unable to mount /data/media/TWRP/.twrps
MTP Enabled
Regarder /cache/recovery/log
il ne montre pas /system comme vide :
/system | /dev/block/sda14 | Size: 4132MB Used: 3987MB Free: 145MB Backup Size: 3987MB
Flags: Can_Be_Mounted Can_Be_Wiped Can_Be_Backed_Up Wipe_Available_in_GUI IsPresent Mount_Read_Only
Primary_Block_Device: /dev/block/sda14
Display_Name: System
Storage_Name: System
Backup_Path: /system
Backup_Name: system
Backup_Display_Name: System
Storage_Path: /system
Current_File_System: ext4
Fstab_File_System: ext4
Backup_Method: files
/data | /dev/block/sda18 | Size: 0MB Used: 0MB Free: 0MB Backup Size: 0MB
Flags: Can_Be_Mounted Can_Be_Wiped Can_Be_Backed_Up Wipe_During_Factory_Reset Wipe_Available_in_GUI IsPresent Can_Be_Encrypted Has_Data_Media Can_Encrypt_Backup Use_Userdata_Encryption Is_Storage Is_Settings_Storage
Symlink_Path: /data/media
Symlink_Mount_Point: /sdcard
Primary_Block_Device: /dev/block/sda18
Length: -20480
Display_Name: Data
Storage_Name: Internal Storage
Backup_Path: /data
Backup_Name: data
Backup_Display_Name: Data
Storage_Path: /data/media
Current_File_System: ext4
Fstab_File_System: ext4
Backup_Method: files
MTP_Storage_ID: 65537
Mais rien n'apparaît lorsqu'on essaie d'y accéder :
~ # ls -lah /system
__bionic_open_tzdata: couldn't find any tzdata when looking for localtime!
__bionic_open_tzdata: couldn't find any tzdata when looking for GMT!
__bionic_open_tzdata: couldn't find any tzdata when looking for posixrules!
drwxr-xr-x 2 root root 40 Jan 1 1970 .
drwxrwxrwt 24 root root 840 Sep 10 02:15 ..
Également dans /cache/recovery/log
:
I:Done processing fstab files
I:Setting up '/data' as data/media emulated storage.
I:Created '/sdcard' folder.
I:Can't probe device /dev/block/sda18
I:Unable to mount '/data'
I:Actual block device: '/dev/block/sda18', current file system: 'ext4'
I:Can't probe device /dev/block/sda18
I:Unable to mount '/data'
I:Actual block device: '/dev/block/sda18', current file system: 'ext4'
get_crypt_ftr_info crypto key location: 'footer'
Bad magic for real block device /dev/block/sda18
Could not mount /data and unable to find crypto footer.
I:Setting up '/data' as data/media emulated storage.
I:Can't probe device /dev/block/sda18
I:Unable to mount '/data'
# ...
Questions :
-
S'il n'a même pas pu monter la partition, comment a-t-il pu se bloquer ?
-
Est-ce que "Install" écrit quelque chose ailleurs (à l'exception des entrées de journal, etc.) ?
-
Peut-il réellement écraser/endommager la partition (ou le périphérique de bloc directement) ? même s'il ne peut pas la monter ?
-
Y a-t-il un moyen de déboguer le bootloop
-
Comment réparer le bootloop ?
Décryptage
J'ai donc essayé de décrypter les partitions de données pour voir si je pouvais au moins y accéder. depuis twrp, en utilisant ces étapes .
C'est le modèle :
[_ 1 6]
[2 7 5]
[3 4 _]
Ce qui signifie que le code utilisé par twrp (de 1 à 9) devrait être le suivant : 2478635. J'ai donc essayé :
~ # twrp decrypt 2478635
Attempting to decrypt data partition via command line.
Failed to decrypt data.
J'ai également essayé d'utiliser le code "natif" (de 0 à 8), sans succès :
~ # twrp decrypt 1367524
Attempting to decrypt data partition via command line.
Failed to decrypt data.
Recherche aux partitions :
~ # ls -l /dev/block/platform/155a0000.ufs/by-name/
__bionic_open_tzdata: couldn't find any tzdata when looking for localtime!
__bionic_open_tzdata: couldn't find any tzdata when looking for GMT!
__bionic_open_tzdata: couldn't find any tzdata when looking for posixrules!
lrwxrwxrwx 1 root root 15 Sep 10 02:15 BOOT -> /dev/block/sda5
lrwxrwxrwx 1 root root 15 Sep 10 02:15 BOTA0 -> /dev/block/sda1
lrwxrwxrwx 1 root root 15 Sep 10 02:15 BOTA1 -> /dev/block/sda2
lrwxrwxrwx 1 root root 16 Sep 10 02:15 CACHE -> /dev/block/sda15
lrwxrwxrwx 1 root root 15 Sep 10 02:15 CPEFS -> /dev/block/sdd1
lrwxrwxrwx 1 root root 16 Sep 10 02:15 CP_DEBUG -> /dev/block/sda17
lrwxrwxrwx 1 root root 16 Sep 10 02:15 DNT -> /dev/block/sda10
lrwxrwxrwx 1 root root 15 Sep 10 02:15 EFS -> /dev/block/sda3
lrwxrwxrwx 1 root root 16 Sep 10 02:15 HIDDEN -> /dev/block/sda16
lrwxrwxrwx 1 root root 15 Sep 10 02:15 OTA -> /dev/block/sda7
lrwxrwxrwx 1 root root 15 Sep 10 02:15 PARAM -> /dev/block/sda4
lrwxrwxrwx 1 root root 16 Sep 10 02:15 PERSDATA -> /dev/block/sda13
lrwxrwxrwx 1 root root 16 Sep 10 02:15 PERSISTENT -> /dev/block/sda11
lrwxrwxrwx 1 root root 15 Sep 10 02:15 RADIO -> /dev/block/sda8
lrwxrwxrwx 1 root root 15 Sep 10 02:15 RECOVERY -> /dev/block/sda6
lrwxrwxrwx 1 root root 16 Sep 10 02:15 STEADY -> /dev/block/sda12
lrwxrwxrwx 1 root root 16 Sep 10 02:15 SYSTEM -> /dev/block/sda14
lrwxrwxrwx 1 root root 15 Sep 10 02:15 TOMBSTONES -> /dev/block/sda9
lrwxrwxrwx 1 root root 16 Sep 10 02:15 USERDATA -> /dev/block/sda18
Montre que sda14 est le système et que sda18 est la partition données partition. Donc j'ai réussi à tirer /dev/block/sda14
y /dev/block/sda18
:
adb pull /dev/block/sda14 sda14.img
# ...
adb pull /dev/block/sda18 sda18.img
/dev/block/sda18: 1 file pulled. 3.7 MB/s (26843545600 bytes in 6961.803s)
J'ai vérifié que les hachages SHA-1 du périphérique de bloc et du .img correspondent, mais je ne sais pas comment les décrypter sur le PC.
Question :
Comment pourrais-je les décrypter sur Android/Linux/Windows ?
Note : Si cette question est trop spécifique pour ce site, veuillez indiquer le forum approprié. forum approprié. Je connais le xda spécifique aux téléphones, mais cela semble trop générique. Toute aide est appréciée.