Clé USB BitLocker retirée pendant l'accès, le système de fichiers est corrompu, peut-on le réparer ?

(Similaire à : Drive removed while accessing, filesystem is corrupt, can it be fixed?, mais avec la complexité supplémentaire que la clé avait BitLocker activé…)

Bonjour, je fais face au problème suivant avec une clé USB 8 Go PNY Attaché USB 2.0 qui avait le chiffrement BitLocker activé.

La semaine dernière, j’étais pressé de quitter le travail et d’attraper mon train, j’ai donc essayé de « Retirer le périphérique en toute sécurité » sur un portable Windows 7 alors que j’accédais encore à la clé mentionnée avec DjVu. Si je me souviens bien, j’ai fermé l’application après avoir vu l’avertissement me déconseillant de retirer la clé USB, et pendant que j’éteignais le portable du travail, j’ai retiré la clé. Apparemment, voici ce qui s’est passé (d’après les entrées du journal de l’observateur d’événements) :

Windows detected your registry file is still in use by other applications or services. The file will be unloaded now. The applications or services that hold your registry file may not function properly afterwards.

DETAIL -
8 user registry handles leaked from \Registry\User\:
Process 4224 (\Device\HarddiskVolume2\Windows\System32\wbem\WmiPrvSE.exe) has opened key \REGISTRY\USER\Software\Xerox\PrinterDriver\V5.0\NamedSettings\UNIV
Process 4224 (\Device\HarddiskVolume2\Windows\System32\wbem\WmiPrvSE.exe) has opened key \REGISTRY\USER\Software\Xerox\PrinterDriver\V5.0\ApplicationDefaults
Process 4224 (\Device\HarddiskVolume2\Windows\System32\wbem\WmiPrvSE.exe) has opened key \REGISTRY\USER\Software\Xerox\PrinterDriver\V5.0\ApplicationDefaults
Process 1268 (\Device\HarddiskVolume2\Windows\System32\svchost.exe) has opened key \REGISTRY\USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
Process 1268 (\Device\HarddiskVolume2\Windows\System32\svchost.exe) has opened key \REGISTRY\USER\Software\Policies\Microsoft\Windows\CurrentVersion\Internet Settings
Process 4224 (\Device\HarddiskVolume2\Windows\System32\wbem\WmiPrvSE.exe) has opened key \REGISTRY\USER\Software\Xerox\PrinterDriver\V5.0\NamedSettings
Process 4224 (\Device\HarddiskVolume2\Windows\System32\wbem\WmiPrvSE.exe) has opened key \REGISTRY\USER\Software\Xerox\PrinterDriver\V5.0\NamedSettings
Process 4224 (\Device\HarddiskVolume2\Windows\System32\wbem\WmiPrvSE.exe) has opened key \REGISTRY\USER\Software\Xerox\PrinterDriver\V5.0\ApplicationDefaults\UNIV
Device action request for device 'USB\VID_154B&PID_0048\AAAB025100000314' was vetoed by 'STORAGE\Volume\_??_USBSTOR#Disk&Ven_PNY&Prod_USB_2.0_FD&Rev_8192#AAAB025100000314&0#{53f56307-b6bf-11d0-94f2-00a0c91efb8b}' with veto type 5.

Le lendemain matin, je voulais copier quelques fichiers de la clé et j’ai essayé de l’utiliser sur mon portable Windows 8.1 à la maison ; il a fallu longtemps pour afficher la fenêtre m’informant qu’il s’agissait d’une clé USB chiffrée BitLocker, donc, encore une fois, je l’ai (bêtement) retirée.

Les entrées de l’observateur d’événements étaient les suivantes :

The driver detected a controller error on \Device\Harddisk1\DR2.
The driver \Driver\WUDFRd failed to load for the device WpdBusEnumRoot\UMB\2&37c186b&0&STORAGE#VOLUME#_??_USBSTOR#DISK&VEN_PNY&PROD_USB_2.0_FD&REV_8192#AAAB025100000314&0#.

Pendant que je faisais cela, la fenêtre est finalement apparue pendant un bref instant. Quand je l’ai réinsérée, j’ai obtenu la redoutable fenêtre « Vous devez formater… » que l’on connaît trop bien.

Quand j’ai cliqué sur « Annuler », on m’a informé que « L’emplacement n’est pas disponible » :
La Gestion des disques n’a pas aidé non plus — la clé USB est maintenant « RAW »

J’ai utilisé repair-bde et voici ce que j’ai obtenu :

Microsoft Windows [Version 6.3.9600]
(c) 2013 Microsoft Corporation. All rights reserved.

C:\WINDOWS\system32>repair-bde G: F: -pw -F
BitLocker Drive Encryption: Repair Tool version 6.3.9600
Copyright (C) 2013 Microsoft Corporation. All rights reserved.

Enter the password to unlock this volume:
Beginning scan for BitLocker metadata.

Scanning boot sectors for pointer to metadata: 100%
Scanning sector boundaries for metadata: 100%
Finished scanning for BitLocker metadata.
LOG INFO: 0x0000002a
Valid metadata at offset 35762176 found at scan level 4.
LOG INFO: 0x0000002b
Successfully created repair context.
Beginning decryption.
Decrypting: 100% Complete.
Finished decryption.

ACTION REQUIRED: Run 'chkdsk F: /f' before viewing decrypted data.

C:\WINDOWS\system32>chkdsk F: /f
The type of the file system is NTFS.
The first NTFS boot sector is unreadable or corrupt.
Reading second NTFS boot sector instead.
Unable to determine volume version and state. CHKDSK aborted.

Fait intéressant, quand j’essaie d’utiliser un « mauvais » mot de passe, il s’en plaint (quelque chose en rapport avec le LOG INFO…). Utiliser repair-bde avec un fichier « .img » n’a pas fonctionné non plus — bien que je n’aie vu aucun message d’avertissement ou d’erreur :

Microsoft Windows [Version 6.3.9600]
(c) 2013 Microsoft Corporation. All rights reserved.

C:\WINDOWS\system32>repair-bde G: F:\recover.img -pw -force
BitLocker Drive Encryption: Repair Tool version 6.3.9600
Copyright (C) 2013 Microsoft Corporation. All rights reserved.

Enter the password to unlock this volume:
Beginning scan for BitLocker metadata.

Scanning boot sectors for pointer to metadata: 100%
Scanning sector boundaries for metadata: 100%
Finished scanning for BitLocker metadata.
LOG INFO: 0x0000002a
Valid metadata at offset 35729920 found at scan level 4.
LOG INFO: 0x0000002b
Successfully created repair context.
Beginning decryption.
Decrypting: 100% Complete.
Finished decryption.

La taille du fichier *.img résultant est de 7,46 Go (8 011 390 464 octets), mais comme vous l’avez probablement deviné, il ne s’ouvre ni avec 7-Zip, ni WinRar, ni bien sûr avec l’Explorateur Windows ; c’est une archive corrompue.

J’ai même essayé de récupérer le contenu du disque en utilisant ddrescue sur une machine Ubuntu 14.04 (selon les instructions de (iBoyd) » Recovering Data from a Failing Bitlocker Hard Drive — sans succès non plus, bien qu’encore une fois, il n’y ait eu aucun message d’erreur :

user@laptop:~$ sudo ddrescue /dev/sdc /dev/sdb ~/Downloads/rescue.log -r -1 -a 10000 -d --force
[sudo] password for user:

GNU ddrescue 1.17
Press Ctrl-C to interrupt
rescued: 8019 MB, errsize: 0 B, current rate: 21522 kB/s
ipos: 7356 MB, errors: 0, average rate: 4450 kB/s
opos: 7356 MB, time since last successful read: 0 s
Finished

J’ai ensuite essayé TestDisk mais, encore une fois, rien n’est apparu :

Sat May 3 00:28:38 2014
Command line: TestDisk

TestDisk 6.14, Data Recovery Utility, July 2013
Christophe GRENIER <[email protected]>
CGSecurity - Data recovery: TestDisk & PhotoRec
OS: Linux, kernel 3.13.0-24-generic (#46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014) x86_64
Compiler: GCC 4.8
Compilation date: 2013-10-29T01:29:29
ext2fs lib: 1.42.9, ntfs lib: libntfs-3g, reiserfs lib: none, ewf lib: none
/dev/sda: LBA, HPA, LBA48, DCO support
/dev/sda: size 976773168 sectors
/dev/sda: user_max 976773168 sectors
/dev/sda: native_max 976773168 sectors
/dev/sda: dco 976773168 sectors
Warning: can't get size for Disk /dev/mapper/control - 0 B - 1 sectors, sector size=512
Hard disk list
Disk /dev/sda - 500 GB / 465 GiB - CHS 60801 255 63, sector size=512 - Hitachi HTS725050A9A364,
Disk /dev/sdb - 8019 MB / 7648 MiB - CHS 974 255 63, sector size=512 - PNY USB 2.0 FD, FW:8192

Partition table type (auto): Intel
Disk /dev/sdb - 8019 MB / 7648 MiB - PNY USB 2.0 FD
Partition table type: Intel

Analyse Disk /dev/sdb - 8019 MB / 7648 MiB - CHS 974 255 63
Geometry from i386 MBR: head=255 sector=63
check_part_i386 failed for partition type 07
get_geometry_from_list_part_aux head=255 nbr=2
get_geometry_from_list_part_aux head=8 nbr=1
get_geometry_from_list_part_aux head=16 nbr=1
get_geometry_from_list_part_aux head=32 nbr=1
get_geometry_from_list_part_aux head=64 nbr=1
get_geometry_from_list_part_aux head=128 nbr=1
get_geometry_from_list_part_aux head=240 nbr=1
get_geometry_from_list_part_aux head=255 nbr=2
Current partition structure:
Invalid NTFS or EXFAT boot
1 * HPFS - NTFS 0 1 1 973 254 63 15647247
1 * HPFS - NTFS 0 1 1 973 254 63 15647247

search_part()
Disk /dev/sdb - 8019 MB / 7648 MiB - CHS 974 255 63

Results
Can't open backup.log file: No such file or directory
interface_load
Change partition type:
HPFS - NTFS 0 0 1 973 254 63 15647310

interface_write()

No partition found or selected for recovery
NTFS signature is missing.
NTFS signature is missing.
simulate write!

write_mbr_i386: starting...
write_all_log_i386: starting...
No extended partition

Interface Advanced
Geometry from i386 MBR: head=255 sector=63
check_part_i386 failed for partition type 07
get_geometry_from_list_part_aux head=255 nbr=2
get_geometry_from_list_part_aux head=8 nbr=1
get_geometry_from_list_part_aux head=16 nbr=1
get_geometry_from_list_part_aux head=32 nbr=1
get_geometry_from_list_part_aux head=64 nbr=1
get_geometry_from_list_part_aux head=128 nbr=1
get_geometry_from_list_part_aux head=240 nbr=1
get_geometry_from_list_part_aux head=255 nbr=2
1 * HPFS - NTFS 0 1 1 973 254 63 15647247

1 * HPFS - NTFS 0 1 1 973 254 63 15647247
Can't open filesystem. Filesystem seems damaged.
New options :
Dump : Yes
Align partition: Yes
Expert mode : Yes

TestDisk exited normally.

J’ai essayé un certain nombre de versions démo/d’essai de logiciels commerciaux mais sans succès. J’ai aussi regardé WinHex — dont la sortie ne semblait pas très prometteuse comparée à une clé USB BitLocker « saine ».

Y a-t-il une chance que je puisse récupérer ce disque ?
Merci d’avance pour votre aide !


Source : Super User,)*

Je suppose que ce n’est pas vraiment une réponse. Cependant, j’espère que cela sera néanmoins utile à d’autres.

Malheureusement, je pense que vous avez appris une leçon assez dure concernant l’utilisation de disques chiffrés, surtout les disques amovibles.

Tous les disques chiffrés, qu’ils soient amovibles ou non, sont plus sensibles aux problèmes de corruption. Cela rend encore plus important de s’assurer que les données sont sauvegardées. Bien entendu, la sauvegarde doit aussi être chiffrée, ce qui signifie que vous devriez conserver plusieurs copies de sauvegardes. Le minimum réaliste pour les sauvegardes est de TROIS. Elles doivent être conservées dans des emplacements différents.

Pour un usage domestique, je conserve les données sur les PC locaux, copiées sur le NAS (les données du NAS sont dupliquées au sein du NAS, ce n’est pas vraiment une sauvegarde robuste mais c’est pratique si un disque local tombe en panne) et copiées vers une sauvegarde cloud sécurisée comme CrashPlan.

Aucune forme de support amovible ne peut être considérée comme robuste. Les clés USB à mémoire flash sont tout aussi susceptibles de tomber en panne que tout autre support amovible. Je ne connais pas les statistiques exactes, mais mon expérience personnelle est qu’une clé USB est aussi susceptible de tomber en panne qu’un disque dur, un peu moins qu’une bonne vieille disquette. Les CD et DVD sont très variables en termes de fiabilité, certains tombant en panne après quelques années de stockage, d’autres durant une décennie ou plus.

Désolé pour l’absence de véritable réponse, mais je pense que cela vaut toujours la peine d’être rappelé afin que plus de gens comprennent la nécessité de bons processus de sauvegarde.