HDD廃棄って恐ろしい

この記事は, Muroran Institute of Technology Advent Calendar 2017 6日目として書きました. 急遽, アドベントカレンダー5日目のykさんからバトンが渡り, ネタを絞り出して書きました.

きっかけ

PCを捨てるとき, そのまま廃棄していませんか? 最近, 近くのPC廃棄場所にHDDがそのまま捨てるなど、セキュリティ意識が低い事案が発生していました. そこで, 自宅にある不要なHDDで通常のデータ削除および復旧作業を試み, 安全なデータ削除方法について紹介します.

対象となったHDD

今回はSATA接続のHDDを対象とした(身近にIDEが無いため). WindowsOSから通常のユーザーがするであろうゴミ箱に入れて, ゴミ箱の中を空にし, ファイル削除をした. さらに, ディスクの管理情報だけを消去した.

修復方法

無料ソフトの修復ソフトを使うと, 時間はかかるが大体のファイルは修復できる. (修復するときは, 削除したファイルに上書きがされないように他のHDD等からOSを起動をし, 修復を試みた方が良い) 通常の削除ではヘッダー部分のみを上書きをしているため, 修復は簡単にできる.

安全なHDD廃棄方法

今回はHDD内のデータを安全に削除する方法を2つ紹介する.

ddコマンドを用いた削除

廃棄するHDDは, OSが起動できない状況であることが多いため, USBでUbuntuを起動して削除する手法を提案する. なお, 宗教上の都合でUbuntuを使うことができない場合は, 他のLinuxOSでも構わない. 今回は, 特別なソフトウェアを使わずにddコマンドで行なった. まず, 完全削除対象のHDDを探すために, dfコマンドを使う

$ df -h

例えばこのように表示される.

Filesystem         Size   Used  Avail Capacity  iused   ifree      
/dev/hda2          186Gi  159Gi   22Gi    80%  1990941  92203   
/dev/hda3          hoge  fuga ...

HDDの容量などを確認して, 対象のHDDを探す. 次にddコマンドを用いて削除を開始する. ddコマンドの使用例は

$ dd if=読み込むファイル of=書き込み場所

であるため,

$ sudo dd if=/dev/urandom of=/dev/hda2
$ sudo dd if=/dev/zero of=/dev/hda2

とし, urandomを書き込んだ後, zeroで書き込む. urandomはランダムファイルを書き出し, zeroはファイルの中身を0で書き出す. 基本的には1度zero書き込みを行うと削除できるが, 念入りに行う場合はurandomを複数回行なった後, zero書き込みを行う. この方法はHDDを再利用することが可能だが, 削除に時間がかかる. また, HDDを認識しない場合はこの手法は使えない.

物理破壊

前者の手法より短時間で行うことができ, HDDが認識しない場合でも効果がある. コントローラ基盤が故障している場合でも, 修復可能な場合があるため, 物理破壊はすべきである. HDDは頑丈であるため, ドリルで穴を開ける手法が手っ取り早いが, 破片が飛ぶことがあるため注意して作業をすること. または, 特殊なドライバー(星型, T8またはT6)を持っている場合は, ネジを外して中身のプラッター(円盤)を破壊すると良いだろう.