SSDを安全に消去するにはどうすればよいですか?[複製]


40

クライアントの1人がSSDのDOD-7 Pass Erase方式を求めています。

Tabernus lan経由でSSD 256 GB(Samsung Make)を消去しようとしましたが、時間がかかりすぎています。

Tabernus lan 7.3.1バージョンからSSDを消去する方法を教えてください。

ここに画像の説明を入力してください


5
NSAが後を追わない場合、通常1パスで十分です。しかし、SSDには、実際にデータを削除しないとデータにアクセスできない(書き込みサイクルを節約する)TRIMコマンドの形式がありませんか?
ポールステリアン16

5
Samsungの「Magician」ソフトウェア(「secure erase」コマンドを実行できる起動可能ディスク)を確認する必要があります。さて、TRIMまたはSSDの「Secure Erase」がDoDコンプライアンスを満たしているかどうかは別のことです...知りません。
-Kinnectus

5
@PaulStelian-これはOPが話しているSSDであることを忘れないでください-SSDの消去は、従来の機械式HDDとは完全に異なるものです。
Kinnectus

16
最も安全な(しかし、より高価な)火でそれを溶融することです
Sargeのボルシチ

7
DoDは、その古代の標準さえも使用しません。SSDで実行した場合、まったく無関係で破壊的です。
マイケルハンプトン

回答:


62

簡単な説明:

複数(7)パスの上書き消去は、SSDで期待することを行いません。必要に応じて、それを実装し、クライアントに実行したことを伝えることができますが、すべてのデータを消去するとは思わないでください

バックグラウンド:

従来のハードディスクからデータを消去するには、次の解決策がありました。

  • インデックスを消去します(例:diskpart clean)。簡単に回復できます。
  • ディスク全体を上書きします。これにより、通常のユーザー用に消去されます。政府のみがアクセスできるような非常に機密性の高いハードウェアにアクセスできる場合は、一部のデータを回復できる可能性があります。鉛筆で書いたメモを消去し、新しいテキストを書くと考えてください。影が残ります。
  • さまざまなパターンでディスクを数回上書きし、最も有能な攻撃者さえも打ち負かします。

SSDの動作は異なります。グループ化されたブロックがいくつかあります。書き込みはグループに対してのみ発生します。ページにしか書けない本と考えてください。文を追加する場合、SSDのコントローラーはページ全体を読み取り、別の場所に(余分な文を含む)新しいページを書き込みます。次に、古いページを空としてマークし、古いページ番号を新しいページに割り当てます。

これは、OSがセクター(ページ)であると認識するものとディスク上にあるものとの間に直接のマッピングがないことを意味します。

ディスク全体を新しいファイル(ゼロのみを含むファイルなど)で埋めることができ、予約スペースは変更されません。そのため、まだ回復可能なデータがあります。これを7回実行しても、同じデータを回復できます。

良いニュース

幸いなことに、SSDにはディスク暗号化が搭載されていることがよくあります。暗号化キーを捨てると、データは価値がなくなります。

さらに良いニュースは、このデータ暗号化を常に使用できることです。暗号化を明示的に有効にしなかった場合でも。その場合、ディスクは引き続き、SSDのどこかにキーが保存された暗号化データを書き込みます。このキーを破棄し、新しいキーと交換するように指示すると、完了です。高速で安全です。

これを行うコマンドもあります(ATAセキュア消去)。

これが唯一の正しい技術的解決策です。7パスの上書きを要求している場合でも、それを実行します(後者を行うのは、要求に準拠するためだけであり、最初はそれらの要求の意図のためです)。

悪い方法の遅さ

私はtabernus lanの経験がありません。しかし、ほとんどすべてのSSDが100MB /秒を超える持続書き込みを受け入れます。その速度で、非常に遅いSSDでも1時間以内に終了するはずです。中速のSSDは、その時間の5分の1で終了するはずです。

そのパフォーマンスに近づかない場合、ソリューションがセクターごとの書き込みを行っていると思われます。それは悪いです。32のキューの深さで、できるだけ速くセクターをフラッシュする必要があります。それなしでは、上からページの類推が得られます。

8つの文章が書かれたフルページから始めます。

  • 文をワイプ1。

    • ページ全体を読みます。
    • 最初の文を削除
    • 7文のページ全体を別のブロック/ページに書き込みます
  • 文をワイプ2。

    • ページ全体を読みます。
    • 2番目の文を削除
    • 6文のページ全体を別のブロック/ページに書き込みます
  • 文をワイプ3。

    • ページ全体を読みます。
    • 3番目の文を削除
    • 5文のページ全体を別のブロック/ページに書き込みます
  • 文をワイプ4。

    • ページ全体を読みます。
    • 4番目の文を削除
    • 5文のページ全体を別のブロック/ページに書き込みます
  • 文をワイプ5。

    • ページ全体を読みます。
    • 5番目の文を削除
    • 3文のページ全体を別のブロック/ページに書き込みます
  • 文をワイプ6。

    • ページ全体を読みます。
    • 6番目の文を削除
    • 別のブロック/ページに2文でページ全体を書きます
  • 文をワイプ7。

    • ページ全体を読みます。
    • 7番目の文を削除
    • 1文のページ全体を別のブロック/ページに書き込みます
  • 文をワイプ8。

    • ページに削除済みのマークを付けます(ただし、さらにスペースが必要になるまで実際に消去しないでください)

そのテキストがどれくらいの長さだったかに気づきましたか SSDの速度も同じです。


コメントは詳細なディスカッション用ではありません。この会話はチャットに移動さました
サティアジスバート

1
これを行うコマンドもあります(ATAセキュア消去)。これが唯一の正しい技術ソリューションです。」ATA SEは一部のSSDを安全に消去できないことに注意してください:usenix.org/events/fast11/tech/full_papers/Wei.pdf
マイルズウルベ

9

使用したソフトウェアは明らかに正しく動作していません。スクリーンショットの1つに、速度として97MB / sが示されています。その速度では、256GBドライブで7パスのフルディスク上書きが約5時間かかります。簡単な計算。

代わりにBlancco 5を試してください。ご覧のとおり、Tabernus Erase LANのリンクはそのサイトにリダイレクトされます。また、Blanncoの無料バージョンと思われる最新のDBANを検討することもできます。

正直に言うと、上記のソフトウェアを使用したことはありません。単純なランダムな上書きよりも本当に良い仕事をしているとは思えません。

個人的には、GNU coreutilsでシュレッドを使用しています:

shred -v -n 7 /dev/sdX

私は実際には使用しません-n 7。せいぜいデフォルトのままにしておきます。3パスで、最後に追加のシングルパスゼロフィリングを追加します(-z)。

または、openssl:

openssl enc -aes-256-ctr -in /dev/zero -out /dev/sdX -pass file:/dev/urandom -nosalt

単純なbashループを作成して、複数のパスを実行させることができます。shredただし、進捗状況は報告しません。

ちなみに、インターネット上のランダムなソース(Googleのみ)によると、米国防総省はすでにデータサニタイズの仕様を廃止しているようです。今では、物理的な破壊のみを認識しているようです。

考えられる理由の1つは、単純な上書きが、いわゆるオーバープロビジョニング(ファームウェアで行われる)および/または不良セクタの再割り当てのために、SSDの背後にある予約済みスペースすべてに「到達」しない可能性があることです。 。残念ながら、複数のパスランダムなデータ充填は、おそらくあなたのSSDは、ハードウェア暗号化をサポートしていない場合は、できる最善のことです。


データを安全に消去する必要がある場合は、ATA DSM / TRIMに頼らないでください。TRIMはSSDを完全に消去(つまり、hexdump)することはできませんが、実際には上書きされるような背後のデータを実際には破壊しません。

ATA Secure Erase 1も本当に信頼すべきではありません。ACS規格は、(シングルパス)パターン塗りつぶしを実行することのみを要求します。通常モードではパターンとして0または1を使用する必要がありますが、拡張モードではベンダー固有のパターンを使用する必要があります(ただし、それでもパターンは埋められます)。また、「再配置ユーザーデータ」も消去します。

ただし、ATA SANITIZE DEVICEが導入されていなかった場合、ベンダーはこの機能セットを非標準のものとして長い間悪用してきました3。そのため、ATA Secure Eraseの動作は、特にSSD上で、完全にベンダー固有である可能性があります。

SSDでは、ATA Secure EraseはATA SANITIZE DEVICEのBLOCK ERASEと同じものとして実装されることが多く、これはフルディスクATA TRIM(RZAT 2 SSD上)とほぼ同等です。

SSDの「スマート」コントローラーは圧縮を行い、そのような繰り返しの上書きを無視することもあるため、固定パターンの埋め込み(SSDを考慮しない「DOD消去」の実装に組み込まれる可能性があります)は、実際に行う価値はありません。

何らかの理由で本当にやりたい場合は、ATA SANITIZE DEVICEのOVERWRITEを使用するのが最善の方法だと思います。(願わくば、ベンダーは、ユーザーがドライブにコントローラーを発行したときに、コントローラーが「スマートに」動作しないことを確認します。)


ハードウェア暗号化と呼ばれるHDD / SSDでは ATAセキュア消去の拡張モードは、ATA SANITIZE DEVICEのCRYPTO SCRAMBLEと同じものとして実装されることが多く、暗号化キーなどの再生成をトリガーします。ドライブをいわゆる安全に消去したい場合に使用するのに最適な「迅速な」方法かもしれません、それはそれらの非Opalハードウェア暗号化のほぼ全体のポイントだからです(人々は通常、その主なポイントはATAパスワード)。

FWIW、ATAセキュリティ機能セット(つまり、「ユーザーパスワード」)を消去する前に常に有効にする必要があります。ドライブがATA SANITIZE DEVICEをサポートしている場合、実際に優先されるはずです。残念ながら、hdparmでサポートされているATAセキュリティとは異なり、最新の機能セットをサポートするユーティリティはまだないようです。せいぜい手動でSCSI ATA PASS-THROUGHコマンドを作成sg_rawsg3_utilsで送信できます。


注意:

1 ATA Secure Eraseの標準コマンド名はSECURITY ERASE UNITです。これは、ATAセキュリティ機能セットの必須コマンドです

2トリム後にゼロデータを返します。正確な定義については、ACS標準を参照してください

3 Intel 530 SATA SSDの仕様。「5.3セキュリティモード機能セット」を参照してください。ATAセキュリティ機能セットを「乱用する」大手ベンダーの例


...または、プレーンdm-cryptマッピングを設定し、ddrescueを使用して/ dev / zeroからマッピングに上書きして、進行状況ランダムと区別できない暗号品質を実現できます。
からCVn

1
SSDはパフォーマンスのためにフードの下で非常に多くのブロック移動を実装し、過剰にプロビジョニングされる可能性があるため(上​​記の操作を実行できるように、宣伝されているよりも多くのスペース)、SSDへのデータの書き込みが実際にすべてのデータを削除すると想定することはできません。ベンダーリセットは、セルを実際にクリアする唯一の方法です(そして、セルをワイプし、それらを回復する方法はありません)。これは、攻撃者が読み取ることができる磁気残留物が存在する可能性のあるハードドライブとは異なります(最近のドライブのデータ密度では、最近は1回の書き込みでも十分です)。
アランシュトコ16

1
@AlanShutkoは、ドライブにハードウェア暗号化がある場合のみ。それ以外の場合、SANITIZE BLOCK ERASE / ATA Secure EraseはTRIMのようにしか機能しません(または少なくとも、これまでのところ、これまで見てきたすべてのSSDがそのように実装されています)。ATAコマンドを使用してドライブを「安全に」消去することの注意点は、「ベンダーを信頼する」ことと同じです。
トム・ヤン

1
shred SSD上および各種類のファイルシステムのデータが確実に消去されるとは思えません 。その男からCAUTION: Note that shred relies on a very important assumption: that the file system overwrites data in place. あなたは、フルパーティションで動作するときのシュレッドの動作方法(コマンドが送信する)に関する参照を追加していただけますか?
ハスター

1
@Hastur shredshred、パーティション/ディスクではなく、ファイルシステム上のファイルのことを言っています。
トム・ヤン

5

ATAの安全な消去ページに続くSSDメモリセルのクリアに関するこのarchlinuxページから、

  1. 手順1-ドライブのセキュリティが凍結していないことを確認します
  2. 手順2-ユーザーパスワードを設定してセキュリティを有効にする
  3. ステップ3-ATA Secure Eraseコマンドを発行する

詳細

  • 手順1では、ドライブがフリーズしていないことを確認できます

    hdparm -I /dev/sdX
    

    コマンド出力に「凍結」と表示されている場合、次のステップに進むことはできません。一部のBIOSは、オペレーティングシステムを起動する前にドライブを「フリーズ」する「SECURITY FREEZE」コマンドを発行して、ATA Secure Eraseコマンドをブロックします。

  • ステップ2については、Lenovoコンピューターに関連する警告について[ 1 ]をお読みください。

    hdparm --user-master u --security-set-pass PasSWorD /dev/sdX security_password="PasSWorD"
    

    そして、それは次のように答えるべきです

    /dev/sdX:
    Issuing SECURITY_SET_PASS command, password="PasSWorD", user=user, mode=high
    

    もう一度確認する

    hdparm -I /dev/sdX
    
  • ステップ3の場合:

    hdparm --user-master u --security-erase PasSWorD /dev/sdX
    

    これ--security-erase-enhanced は、拡張セキュリティ消去のパラメーターです。[ 1 ]は「短時間(2分など)にデバイスが自己暗号化され、そのbios機能がすべてのデータセルを上書きする代わりに内部暗号化キーを消去することを示す」と報告されています。暗号化されていないデバイス。

    暗号化されたデバイスでは、--security-eraseand --security-erase-enhancedオプションに対して同じ予想時間が報告されます。この場合、同じアルゴリズム[ 3 ]が使用されると思われます。通常のHDDの場合、強化されたパラメーターは、他の違いの中でも特に、ある時点でI / Oエラーをトリガーして再マップされたために使用されなくなったセクターも上書きすることに注意してください。このブロックの数が1分を超える時間差に反映されるのに十分な大きさではない場合でも、SSDでも同じように動作すると想定する必要があります。Security SEに関するこの回答の詳細をご覧ください。

    ただし、SSDメモリセルのクリアページの例では、Intel X25-M 80GB SSDの場合、40秒の時間が報告されます。

    コマンドが完了するまで待ちます。この出力例は、Intel X25-M 80GB SSDで約40秒かかったことを示しています。

注:3つのステップの後、ドライブは消去され、ドライブのセキュリティは自動的に無効に設定されます(したがって、アクセスにパスワードは必要ありません)。


更新

ATA安全な消去ページ

この手順では、hdparmコマンドを使用してSecure Erase ATA命令をターゲットストレージデバイスに発行する方法について説明します。SSDドライブに対してSecure Eraseが発行されると、そのセルはすべて空としてマークされ、工場出荷時のデフォルトの書き込みパフォーマンスに復元されます。

免責事項:これにより、すべてのデータが消去され、データ回復サービスでさえ回復できなくなります。


On occasion, users may wish to completely reset an SSD's cells to the same virgin state they were manufactured, thus restoring it to its factory default write performance.それだけです。ここでの「バージン状態」とは、データが安全に消去されることを意味しません。
トム・ヤン

見逃しました--security-eraseか?
ハスター

あなたが意味すると思います--security-erase-enhanced。あなたは何を知っている、私は正確な例のディスクを持っています(いまいましい良いX25-M gen1 / 50nm 80GB)。ハードウェア暗号化、またはTRIMはサポートしていません。セキュリティ消去の通常モードと拡張モードの両方をサポートしているようです。どちらも同じ推定所要時間(2分)を持っています。今、彼らは何か違うことをしていると思いますか?:P
トム・ヤン・

1
@TomYanあなたがの答え読み取ることができるserverfaultのモデレータ上記の解答をベースとされているのと同じATAの仕様を参照。DISCLAIMER: This will erase all your data, and will not be recoverable by even data recovery services.
ハスター

1
@MichaelHamptonこれは、同じarchlinuxページから報告された文です。キーが2秒であることに同意します。たとえ2分間であれば、たとえ内部コマンドであってもすべてのブロックを消去するには短すぎるように思えます(最大書き込み速度70 MB / s * 120秒〜8.4G = 1 80GBの/ 10)。さらに、セキュリティSEサイトの回答では、「ディスク全体を上書きするには2分では足りません。そのため、そのディスクが実際の「安全な消去」を実装する場合は、暗号化メカニズムを使用する必要があります」_それについての参照を追加してください、それは役立ちます。
ハスター

1

SSDは、データのパスの数を気にしないため(より速く消耗する場合を除く)、完全なパスの後にデータを回復することはできません(プロビジョニングされたスペースにデータを入れない限り)。完全に1の場合、既存のデータはすべて削除されます。

あなたが直面している問題は、ウェアレベリングを行うために使用される過剰なスペース、キャッシュ、システム、OS、またはそのようなものを識別するデータを保持する可能性のあるNVRAMなど、ユーザーがアクセスできないストレージにほとんどあります。

SSDを安全に消去するには、それを明示的にサポートする必要がありますが、現在はまだコントローラーおよびファームウェア固有です。磁気メディア用に設計された安全な消去ソフトウェアを使用しても、データを安全に消去する方法は基本的にソリッドステートストレージと磁気ストレージの間に関係がないため、ここでは意味がありません。磁気ストレージを使用すると、ビットの以前の状態を理論的に回復できますが、フラッシュメモリを使用すると、ビットが実際に検出できる「以前の」状態を持つことはできません。これは、以前に保持していた値に応じて強度が変化する磁極ではなく、0または1を保持します。

PCBを産業用ブレンダーに入れてから、フラッシュチップダイを粉状にします。それからデータを取得することはできません。使用済みのSSDを再販することは、HDDほどの既知の寿命/使用パターンをまだ持っていないため、実際にはありません。せいぜい「摩耗状態」のSMARTデータしか持っていません。


1

これが回復されるべきではない本当に重要なデータである場合、ディスクを使用することは安全ではありません。

他の人が言ったように、上書きはSSDでは機能せず、メーカーが暗号化を間違えた場合(お金を節約するためにコーナーを切って、無能など)、キーを削除しても役に立ちません。

すぐに有効になり、DSSは、機密処理に使用されるISストレージデバイス(ハードドライブなど)のサニタイズまたはダウングレード(下位レベルの機密情報管理へのリリースなど)の上書き手順を承認しなくなります。

機密データ(特に政府関連データ)を扱う場合は、もう少し安全なものが必要です。トーチをお勧めします:

ソース、CNET

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.