BitLockerで暗号化されたストレージをLinuxでマウントするためのdislocker

OS: Windows 10 Pro ver 1709
OS: Ubuntu Desktop 16.04 日本語 Remix
回復キー

起動しなくなったWindows10のマシンを寄越されて中のデータを取り出せるか問われたことがあるけれどもBitLockerで暗号化されているからLinuxで気軽にマウントしてアクセスする、というわけにいかない。然し乍らLinuxからでも、回復キーさえあればデータを復号してアクセスできるようなツールを拵えた人がいるようでほんとうにすごいと関心したものである。

先ずはUbuntu Desktop 16.04 日本語 Remixを焼き付けたUSBの起動ディスクで以ってUbuntuを起動する。

図1.Ubuntuを起動

そうしたら必要なパッケージをどんどこインストールしてゆく。なお、libmbedtls-devがないとdislockerをcmakeする際に「– Could NOT find POLARSSL」というエラーで止まってしまった。またlibfuse-devがないと「– Could NOT find FUSE」というメッセージが出る。

此れが無くともcmakeの処理自体は恙無く終わったように見えるけれども、makeを実施するとfuse.hが無いと言う咎で処理が止まるので結局は必要なのである。あとはdislockerをインストールするばかりである。

$ sudo apt install git cmake libmbedtls-dev libfuse-dev
$ git clone git://github.com/Aorimn/dislocker.git
Cloning into 'dislocker'...
remote: Counting objects: 3368, done.
remote: Total 3368 (delta 0), reused 0 (delta 0), pack-reused 3368
Receiving objects: 100% (3368/3368), 859.56 KiB | 484.00 KiB/s, done.
Resolving deltas: 100% (2336/2336), done.
Checking connectivity... done.

$ cd dislocker
$ cmake .
$ make
$ sudo make install

次は下準備としてディレクトリを2つ作成する。それから回復キーも予め用意しておく。回復キーが無いともはや為す術がない。

$ sudo mkdir /media/bitlocker /media/win10
図2. 回復キーの内容の一例

それからdmesgやlsblkなどでWindows10がインストールされていると思しきデバイスファイルを探る。今回のケースでは/dev/sdaがそれであった。/dev/sdaをfdiskで詳らかに見てゆくとこういう具合である。BitLockerのロックを解除したいパーティションは4番目にあることがわかった。

$ sudo fdisk -l /dev/sda
(snip)
デバイス     Start 最後から セクタ  Size タイプ
/dev/sda1     2048   1023999   1021952  499M Windows recovery environment
/dev/sda2  1024000   1226751    202752   99M EFI System
/dev/sda3  1226752   1259519     32768   16M Microsoft reserved
/dev/sda4  1259520 125827071 124567552 59.4G Microsoft basic data

あとはdislockerで以って/dev/sda4のロックを解除する。操作中にヘマをするといけないから-rオプションでリードオンリーにしておくと安心感がある。それから-Vオプションでデバイスを指定し、-pオプションでは回復キーを指定する。

なお誤って関係の無いパーティションのロックを解除しようとすると「[ERROR] The signature of the volume (NTFS ) doesn’t match the BitLocker’s ones (-FVE-FS- or MSWIN4.1). Abort.」というようなメッセージを頂戴する。

処理が終わると/media/bitlockerの直下にdislocker-fileという一つのイメージファイルが生まれるので、これをループバックデバイスとしてマウントする。するとBitLockerによって暗号化されていたストレージの内容がとうとう明らかになった。

$ sudo dislocker -r -V /dev/sda4 -p153659-674410-262823-201102-193336-410465-209352-219032 -- /media/bitlocker
$ sudo ls -lh /media/bitlocker/dislocker-file
-r--r--r-- 1 root root 60G  1月  1  1970 /media/bitlocker/dislocker-file

$ sudo mount -r -o loop /media/bitlocker/dislocker-file /media/win10/
図3. 復号されたストレージ

あとは好き放題データをコピーするなり内容を検めることができる。飽きたらアンマウントするのが良かろうとおもう。

$ sudo umount /media/win10

コメントする

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください