ソリッドステートドライブ上の単一のファイルを安全に消去する方法を考えました。この方法は、ドライブが暗号化されている場合にのみ機能し、誰かがドライブの暗号化キーをクラックした場合でも機能します。基本的に2つのステップがあります。
この方法では、現在のキーが危険にさらされている場合でも、たとえばコールドブート攻撃により、攻撃者はこの方法を使用して削除したファイルにアクセスできなくなります。もちろん、ドライブ全体を再暗号化する必要がありますが、これには時間がかかります。この方法は、頻繁に暗号化および復号化するファイルには役立ちません。ただし、たまにしかアクセスしない一連のファイルの周りにセキュリティの層を追加したい場合は、この方法が有効なオプションになることがあります。
それで、あなたはどう思いますか?これは良い方法ですか?または、ソリッドステートドライブの単一ファイルの安全な削除のより良い方法はありますか?
これは必ずしも安全なアイデアではありません。ソリッドステートドライブには、いわゆるオーバープロビジョニングスペースがあります。これは、ハードドライブファームウェア(FTL、またはフラッシュトランスレーションレイヤー)だけがアクセスできる少量のスペースであり、ウェアレベリングに使用されます。つまり、ハードドライブの使用率が100%であっても、未使用の容量がまだ残っています。未使用の特定のセクターは、FTLによってランダムに選択されます。残念ながら、これは、ドライブ全体を再暗号化した後でも、暗号化ヘッダー(LUKSやTrueCryptヘッダーなど)に格納されているマスターキーがワイプされない可能性があることも意味します。その結果、ドライブを何度もワイプする必要があり、その場合でも、特定のセクターが消去される可能性は保証されていません。確率が高くなるだけです。
ソリッドステートドライブは、オペレーティングシステムから制御を隠すことで有名です。新しいオープンチャネルSSDを入手できる場合があります。これは、FTLがない(または非常に限定された)SSDの一種であり、ウェアレベリングなどをカーネルに遅らせます。 SSDにすべてのセクターを消去するように指示できる場合があり、実際にはそれに従います。
最新のSSDの多くはSEDをサポートしています。SEDは、ドライブをすばやく消去できるようにするために使用されるハードウェア暗号化です。 ATA Security Eraseコマンドを発行すると、ドライブ全体をゆっくりとワイプするのではなく、これらのSEDドライブは、暗号化キー(ウェアレベリングの影響を受けないドライブの特別な領域に格納されている)をワイプするだけで、ドライブ上のすべてのデータがレンダリングされます役に立たない)。当然のことながら、キーは保存されているデータのセキュリティを提供しません。キーが他の方法よりも速くデータを消去するためにのみ使用されるためです。 hdparmツールを使用して、SSDがSEDをサポートしているかどうかを確認できます。 「hdparm -I/dev/sdX | grep 'min for'」を実行します。XはSSDのラベルです。表示されるオプションのいずれかで分数が非常に少ない場合(通常は2、だと思います)、ドライブはSEDをサポートしています。
ドライブがSEDをサポートしておらず、SSDを消去するときに直接ワイプできるキーを格納できるハードディスクドライブがない場合は、一種の貧乏人のSEDを実装しようとすることができますNVRAMを使用したハックな方法。ほとんどのマザーボードでは、CMOS RAM(NVRAMとも呼ばれます)は、BIOS構成情報を含む少量の不揮発性メモリ、または場合によってはEEPROMです。 nvramモジュールがロードされると、/ dev/nvramにエクスポートできます。それは通常144バイトのサイズです(正確にそのサイズである場合は、NVRAMです。それより大きい場合は、おそらくEEPROMです)、その大部分は未使用です。一部のツールで可能であるか、または形式を理解することで可能である未使用部分を特定できる場合は、/ dev/nvramに直接書き込むことができます。この領域はCMOSバッテリ(マザーボード上の小さなボタンバッテリでRTCにも電力を供給しています)によってバッテリバックアップされているため、再起動後も持続します。ただし、フラッシュではないため、瞬時に安全に消去できます。そこに128または256ビットのキーを簡単に格納できます。これを独自の暗号化キーに追加して、メインSSDパーティションを暗号化できます。完全に消去する必要がある場合は、/ dev/nvramのキーを消去するだけで、SSD上のデータにアクセスできなくなります。
この話の教訓は次のとおりです。FTLは雌犬です。 SSDを信頼しないでください。SSDは物事をあなたから隠します。