Estoy tratando de recuperar los datos de un defecto/fábrica encriptado Samsung Galaxy S7 Edge atascado en un bucle de arranque (es decir, que se reinicie sin cesar al al arrancar el sistema). Está utilizando la rom de stock. Sólo el recovery (twrp) y el modo de descarga están trabajando. Necesito arreglar el bootloop o descifrar al menos el al menos el partición de datos en twrp (conozco el patrón de bloqueo). Nota : I Sé que el bootloop podría arreglarse con un restablecimiento de fábrica, pero eso provocaría en la pérdida de datos.
Información general:
Model: SM-G935F
Codename: hero2lte
Android version: Stock 7.1.x (almost sure)
TWRP: 3.2.3-0
Instalar
He seguido la guía adb y el guía de instalación (sólo hasta y incluyendo la instalación de twrp; LineageOS no fue instalado).
Después de instalar adb y heimdall en el pc, esto es lo que se hizo en el teléfono:
- Entrar en el modo de descarga
heimdall flash --RECOVERY twrp-3.2.3-0-hero2lte.img
- Reiniciar en la recuperación
Sigue diciendo que no puede montar /sistema ni /datos pero nunca preguntó (y todavía no lo hace) para la contraseña de encriptación ni nada. Cuando tratando de hacer una copia de seguridad nandroid, el almacenamiento interno mostró como 0 MB y dio un error y se ha producido un error.
El arranque del sistema funcionó sin problemas.
Entonces, intenté instalar (LineageOS') su para poder hacer una copia de seguridad de las cosas correctamente usando algo como oandbackup o TitaniumBackup:
- Iniciar la recuperación
adb push addonsu-15.1-arm64-signed.zip
- Instalar -> addonsu-15.1-arm64-signed.zip
Pensaba que iba a ocurrir una de las siguientes cosas:
- La escritura funcionaría, y su estaría disponible
- La escritura funcionaría, y la rom de stock la ignoraría
- La escritura fallaría, no pasaría nada
Volvió a mostrar algunos errores sobre las particiones (hasta este punto, pensé que sólo la datos partición estaba encriptada, no la del sistema).
Probé a reiniciar -> Sistema, y lo que ocurrió fue:
- El dispositivo estaba (y sigue estando) atascado en un bucle de arranque
Así que traté de usar la versión de LineageOS su-remoción :
- Arrancar en la recuperación
adb push addonsu-remove-15.1-arm64-signed.zip
- Instalar -> addonsu-remove-15.1-arm64-signed.zip
Sin embargo, nada parece haber cambiado. Registro en pantalla 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
Mirando /cache/recovery/log
no muestra /system como vacío:
/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
Pero no muestra nada al intentar acceder a ella:
~ # 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 ..
También en /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'
# ...
Preguntas :
-
Si ni siquiera podía montar el parition, ¿cómo se convirtió en soft bricked?
-
¿"Instalar" escribe algo en algún otro lugar (excluyendo las entradas de registro, etc.)?
-
¿Puede realmente sobrescribir/dañar la partición (o el dispositivo de bloque directamente) incluso cuando no puede montarlo?
-
¿Hay alguna manera de depurar el bootloop
-
¿Cómo se puede arreglar el bucle de arranque?
Descifrar
Así que probé a desencriptar las particiones de datos para ver si al menos podía acceder a ellas desde twrp, usando estos pasos .
Este es el patrón:
[_ 1 6]
[2 7 5]
[3 4 _]
Lo que significa que el código que utiliza twrp (del 1 al 9) debería ser este: 2478635. Así que he probé:
~ # twrp decrypt 2478635
Attempting to decrypt data partition via command line.
Failed to decrypt data.
También he intentado utilizar el código "nativo" (de 0 a 8), sin éxito:
~ # twrp decrypt 1367524
Attempting to decrypt data partition via command line.
Failed to decrypt data.
Mirando a en los tabiques:
~ # 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
Muestra que sda14 es el sistema y que sda18 es la partición datos partición. Así que me las arreglé para sacar /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)
He verificado que los hashes SHA-1 del dispositivo de bloque y del .img coinciden, pero Estoy en una pérdida acerca de cómo descifrarlos en el PC.
Pregunta :
¿Cómo puedo desencriptarlos en Android/Linux/Windows?
Nota : Si esto es demasiado específico para este sitio, por favor comente dónde estaría el foro apropiado. Sé de la xda específica para el teléfono, pero eso parece para ser demasiado genérico. Se agradece cualquier ayuda.
0 votos
Si
/system
está vacío, probablemente significa que no está montado. Pruebe conmount /system
. Aunque no es que vaya a ayudarte con la desencriptación...0 votos
¿Alguna vez lo has resuelto?
0 votos
@gf_ Lamentablemente no. Intentaba hacer una copia de seguridad de todo antes de instalar LineageOS en el teléfono de otra persona, pero nunca había tratado con teléfonos encriptados y no lo tuve en cuenta (pensé que twrp me salvaría si pasaba algo malo). Después de no tener éxito (durante una semana IIRC), decidieron simplemente restablecerlo de fábrica y perder los datos, con el fin de ser capaz de utilizar el teléfono. Conclusión: Haz siempre una copia de seguridad de todo a través de medios más "nativos" (por ejemplo:
adb backup
/adb pull
) primero y asegúrese de que los datos/copias de seguridad son accesibles desde twrp o desde otro ordenador.0 votos
Este proceso es muy poco eficiente. ¿Por qué eligió este tipo de flash?
0 votos
¿Responde esto a su pregunta? Instalación limpia de LineageOS 17.1 y dispositivo vacío - no puedo averiguar cómo montar la partición de datos en TWRP?