データ消去でロックがかかったSanDiskの外付けSSDをUbuntuでロック解除した

デジタルガジェット

ひどい目にあったのと、Linuxすげーと思ったので日記代わりに残しておきます。

記事中のLinuxのコマンドは筆者もたいして理解できていないので、試す場合は他のソースも参照のうえ自己責任でお願いします(ディスクレーマー)

データ消去ソフトでSanDiskの外付けSSDがロックされる

2020年に購入したSanDiskの外付けSSDを端末間のデータの移動に使っていた。

自分が使っていたのはこの1TBのモデル。最大転送速度550MB/秒で上位モデルと比べると控えめな性能。

Western Digital Support | Western Digital
Western Digital Support

便利なのだが自分の用途には持て余し気味だったので売却しようと思い、本品にデータ消去ソフトによるゼロライト(ゼロ書き込み)をかけることにした。

本来はSSDならゼロライトではなくSecureEraseやサニタイズで簡単かつ安全にデータ消去ができるのだが、本品は外付け用にチューンされているからなのか、メーカーのユーティリティソフト(Western Digital, SanDisk共通のDashboard)でもマザーボードのUEFIの機能からもSecureEraseができなかったのだ。

SecureEraseができない中でどこまでデータ消去すべきか自分は答えを持っていないが、データを空にしてTrimしたうえでゼロライトをかけることに決めた。
「SSDはウェアレベリングが働くのでゼロライトやランダムライトのような消去方法は無意味」というのが通説なので、実際にSSDにゼロライトをしてから復元ソフトでどのくらい拾えるのか試してみたいという好奇心もあった。

ゼロライトには玄人志向のHDDスタンドにバンドルしていたこちらのソフトを使うことにした

「ターミネータ10plusデータ完全抹消BIOS/UEFI版」

量販店でも販売されている定番のソフトで、これまでにHDDのデータ消去では使ったことがあった。1TBのSSDへのゼロライトは40分ほどで終わった。だが、終了後にSSDを確認しようとすると、ロックされた状態になっていた。

SSDがロックされたとわかるまで

最初は初期化が完了しない不具合に見えた

実はロックされたこともすぐには分からず、以下のような試行錯誤と破壊の末に判明した。

まずおかしかったのはデータ削除終了後のSSDの挙動である。

・タスクマネージャーとデバイスマネージャー上は認識されているがエクスプローラ上ではSSDが見えない

・Windwosの「ハードディスクのパーティション作成とフォーマット」上では、当該SSDは「初期化がされていません」の状態。

・「ハードディスクのパーティション作成とフォーマット」を開くと、当該SSDをMBRかGPTでフォーマットするよう促すダイアログが開くが、どちらを選んでも「ファンクションが間違っています」と表示されフォーマットが完了しない。

・そもそも「ハードディスクのパーティション作成とフォーマット」や、Dashboard、CrystalDiskInfoのようなドライブ情報を取得するソフトが開くまでに滅茶苦茶時間がかかる

そこで、データ削除後の初期化がうまくいってないようだと考え「ハードディスクのパーティション作成とフォーマット」ではなく以下の方法をとってみたがことごとく駄目だった。

・「ハードディスクのパーティション作成とフォーマット」ではなく、コマンドプロンプトのDiskPartから属性の消去とフォーマットを試みる→×

・専用のディスク管理ソフトならどうかとAOMEI Partition Assistant等でフォーマットとボリューム作成を試みる→×

破壊の後に糸口が見つかる

ここまででもう廃棄せざるを得ないようだと諦めていたため、分解して中のSSDを取り出してみることにする。

YouTubeの熊五郎お兄さんの分解動画を見ながら格闘すること30分、中身のSSDにはたどりついたが、強力な両面テープに敗北し、M.2ソケットの受け口を破壊してしまった。

熊五郎お兄さんはIPA(アルコール)で器用に両面テープを剥離していたが我が家にそんなもんあるわけねぇ。

落ち込みながら取り出したSSDをマザーボードのM.2端子に直差しする。現在では希少なM.2 SATAのSSDだったので、マザーボード上で対応しているスロットが限られていた。

M.2スロットが4つもあるH670マザーを使っているが、M.2 SATAに対応しているのは1つだけだった。残り3つはすべてPCIE専用である。ビデオカードを外さなくては当該スロットにはアクセスできず、めんどくささに嗚咽を漏らす。

マザーボードに直差しで電源投入すると、起動時にEnter User PasswordとEnter Master Passwordというダイアログが表示された。

最初にユーザーパスワードが求めれ、そこに3回失敗するかescを押すとマスターパスワードを求められる。

ダメ元でWindowsのログインパスワードや”sandisk” “password”などを入れてみるがやっぱりだめで、USERとMASTERで合計5回失敗すると「SSDがロックされました」という表示が出てからWindowsが起動する。

直挿しした状態でもフォーマットは行えなかったが、外付けでは表示されなかったこの起動時のダイアログが出てきたおかげで、どうやらこのSSDがロックされていることが(やっと)分かった

ロックされたSSDとの戦い

ロックされたことがわかってもできることはあまり多くない。とりあえず以下の対処はいずれも効かなかった

・SecureEraseを試みる。マザーボードの機能とフリーソフトのTXBenchから試すがどちらも無効。ロックされたSSDには効かないのか、外付けの状態で駄目だったからSSDがそもそも非対応なのかは分からずじまい

・実はサンディスクのサポートにSecureErase後にドライブパスワードが求められることがあるのでその時は”sandisk123″を入れろという情報があったので入れてみる。一番いけそうだと思ったが、このパスワードでは本件はロック解除できなかった。他に、英語のサポートコミュニティで見つけた”ssd123″と”test”を試すがやっぱり駄目。

最終的に解決に繋がったのは価格ドットコムだった。

本ページの掲載は終了しました - 価格.com

もう10年近く前のスレッドだが「SecureEraseの途中中断でHDDがロックされた」という状況に、Linuxからロックの無効化ができたというもの。

具体的にはLinuxのターミナルから

sudo hdparm –user-master u –security-erase NULL /dev/sda

というコマンドでロックを解除できたという。

sudoは管理者権限、hdparmはディスク管理のコマンド、dev/sdaが対象のドライブである。真ん中の–user-master u –security-erase NULLはドライブのセキュリティパスワードをNULLにしてSecureEraseを実行する、という処理のよう。参照元の掲示板では詳細な言及はなかったが、データが入っていた場合はSecureEraseで復元不可能に消去されるので、データが入っているドライブがロックされてしまった状況では使えない方法だと思う。

Ubuntuでコマンドでロック解除

これを試すために、Ubuntuの起動USBを作成してLinuxのターミナルを使うことにした。Linux使うのはこれが初めて。以下のサイトを参考にUbuntu Deskop 日本語RemixをRufusでUSBメモリに書き込んで作成した。

https://kijonojiron.com/ubuntu_usb_boot_media_create

Ubuntu起動後にターミナル(日本語版では”端末”表記)を立ち上げ、SanDiskのSSDがシステム上なんと認識されているか調べる。先のコマンドのsdaの部分を対象のドライブにしなければいけない。自分はメインPCでそのまま起動したが、本当ならロック解除したいドライブ以外は外すべき。対象を間違えたら恐ろしいことが起こる。

WindowsのLIST DISKに相当するようなコマンドがないかググったところ、lsblkでドライブとパーティションの一覧が表示されるとあった。

Linux ハードディスク一覧の確認 - とみぞーノート

ターミナルで打ってみると確かに一覧が表示され、容量等の情報から自分のマシンではsdbとして認識されていることが分かった。たぶんSataのDriveのb(2)番目という意味。この時、問題のSandiskのSSDは別のSSDケースに入れてUSBで接続していたが問題なく一覧に表示された。ちなみにpcie接続のSSDはnvme0n1、nvme1n1、として認識されていた。

これで前述のコマンドのsdaをsdbに変えて

sudo hdparm –user-master u –security-erase NULL /dev/sdb

と打つ。

エラーが出ていないことを確認してUbuntuを終了。Windowsからディスクのフォーマットを試みると、これまでとは打って変わって一瞬でフォーマットが完了し、ボリュームの作成も問題なく行えた。「Linuxってすげー」と唸ると共に、価格ドットコムの先達に深く感謝した。

総括

・市販のデータ消去ソフトでSanDiskの外付けSSDのデータ消去をしたらSSDがロックされた。毎回こうなるのかは分からないが特に理由がなければしない方がいい。もちろん理由があってする人がほとんどだと思うけど。

・おそらくLinuxからのロック解除は分解せずに外付けSSDの状態でも有効だったと思う。自分は無駄な分解をしてケースと基盤を破壊したが、マザー直挿しで起動時のパスワードダイアログが出なければロックだと気がつけなかったので、コラテラル・ダメージだと思うしかない。なお、もうこの状態では売れないので、メインPCのデータ置き場にでもしようと思う。SanDisk Extreme Portable SSDが内蔵ドライブになっているという奇妙な状態は悪くない。

・もっと身も蓋もないことも言うと、最初のデータ消去の時点で、DashboardやマザーボードのUEFIでできなくてもLinuxからなら当該SSDのSecureEraseができた可能性がある。最初からUbuntuのターミナルからのSecureEraseを試してみればよかった。悔しい

・Linuxがマシンの不調時の原因の切り分けやメンテナンスに重宝される理由がわかった気がする。少なくとも本件ではWindowsよりも深くデバイスの設定に踏み込むことができた。

コメント

タイトルとURLをコピーしました