SSDドライブを安全に消去する方法は?


36

私はSSDテクノロジーにかなり慣れていないので、ドライブを安全に消去することになると、ハードドライブと比較する方法がわかりません。ディスクユーティリティを実行して、オプション「ゼロで上書き」でドライブを消去するだけで十分ですか、それともハードドライブ用に設計されていますか?他に取るべき措置はありますか?

ただし、NSAグレードのセキュリティを探しているわけではありません。Macを返品または販売している場合に行うワイプのようなものです。


データを消去する必要がありますか、またはデータが消去されたことを他の人に説得する必要がありますか?データがなくなったことを確信する必要がある場合は、ATAコマンドSecure Eraseを試してください。他の人を説得する必要がある場合は、ディスクシュレッディングサービスを使用する必要があります。
ダンビール

回答:


45

それはあなたの妄想レベルに依存します。SSDがデータの書き込みを処理する方法のため、SSDでゼロワンスを行うことは、ハードドライブで行うよりも良くありません。

HDに特定のデータページを書き込むと、新しいデータが古いデータに上書きされ、置き換えられます。ディスク全体にゼロを書き込むと、古いデータはすべて失われます。一方、SSDは個々のページを単純に上書きすることはできません。ページ上のデータを置き換えるには、古いデータを最初に消去する必要があり、SSDは個々のページを消去できません。多くのページで構成されるブロック全体を消去する必要があります。

したがって、SSDにページ5を上書きするように要求すると、SSDはページ5のデータをそのまま残しますが、無効としてマークし、別の現在空白のページ(たとえば#2305)を割り当て、書き込みます新しいデータをページ#2305に追加し、次にOSがページ#5を要求したときに、代わりに#2305を取得する必要があることに注意してください。元のページ#5のデータは、ドライブがより多くのスペースを必要とし、残りの有効なページをブロックから遠ざけて消去するまでしばらくそこにあります。SSDは、コンピューターに公開するよりも多くの物理メモリ容量を持っているため、実際に何かを消去する前に、このようなブロックをしばらく操作することができます(実際に何かを消去すると、残りのデータのブロックを予測する良い方法がありません消去のために選択されます)。このAnandTechレビューを見る 方法の詳細については(警告:それはかなり長く、関連するものが広まっています)。

最終結果:「全体」ドライブにゼロを書き込んだ場合、実際にはすべての古いデータを上書きしていません。あなたはしている、それは(それらのページはすべて無効となります)OSに古いデータのいずれかを返すことは決してないだろうように、コントローラの変換テーブルを更新しました。しかし、誰かがコントローラーをバイパスするほどハードコアな場合、データの一部を取り戻すことができます。

2回の上書きはおそらく動作しますが、コントローラーの割り当て戦略に依存します。ランダムデータ(diskutil randomDisk 2 /dev/diskN)で2回上書きすることは、もう少しうまくいく可能性がありますが、保証されていません。これらの両方には、いくつかの悪い副作用もあります。ドライブの寿命の一部を使用し、SSDの論理的な断片化を増やし、書き込みパフォーマンスを低下させます。

OS Xのグラフィカルディスクユーティリティの最近のバージョンでは、SSDの安全な消去オプションが無効になっていることに注意してください(上記の理由により)が、コマンドラインバージョンでは引き続き可能です。ところで、私はまた、SSDを暗号化された形式に変換して安全に消去するいくつかの推奨事項を見てきましたが、これはランダムデータで上書きするよりも少し安全です。

SSDをセキュア消去するための最良の方法は、コントローラーの組み込みセキュア消去機能を呼び出すことです。これにより(コントローラーの設計者がジョブを実行した場合)、すべてのブロックが完全に消去され、論理ページマップがリセットされ、基本的に最適化されて元のパフォーマンスが復元されるという副作用もあります。残念ながら、これを行うために私が見たユーティリティ(CMRRのHDDEraseなどのほとんどは DOSで実行され、Macでは起動しません。私は、GPartedブートCDから安全な消去を行うための(かなり複雑な)指示が記載されたmacrumorsに投稿を見つけました。起動可能なフラッシュドライブからParted Magic使用することも可能かもしれませんが、私はこれを試していません。

UCSDのNon-Volatile Systems Labの研究者は、ドライブを「消去」し、それを解体してコントローラーをバイパスし、残りのデータをチェックすることにより、SSDをサニタイズするさまざまな方法をテストしました(要約フルペーパー)。彼らの結果は、私が上で言ったことと大部分が一致しています(そして、組み込みのsecure-eraseコマンドが常に適切に実装されているわけではないことも示しています)。

私たちの結果は、3つの結論につながります。まず、組み込みコマンドは効果的ですが、メーカーはそれらを誤って実装することがあります。第二に、SSDの可視アドレス空間全体を2回上書きすることは、常にではありませんが、通常、ドライブをサニタイズするには十分です。第三に、個々のファイルのサニタイズに関する既存のハードドライブ指向の手法はどれもSSDで効果的ではありません。


1
広範な回答をありがとう。あなたが提案するようにTerminalコマンドを実行することは私にとって問題ではありません。しかし、将来の参考のために:ターミナルにそれほど慣れていない一般ユーザーは何ができますか?ディスクユーティリティの7パスオプションを使用するだけですか?
リンツウィンド

4
この時点でオプションを本当に「推奨」できるかどうかはわかりません。上書きオプションはいずれも、ドライブのライフタイム書き込み制限を使い果たし、断片化を増やし、パフォーマンスを低下させる傾向があります。Appleにとって最良の方法は、ATAセキュア消去(コントローラーベースのオプション)をディスクユーティリティのオプションとして追加することですが、だれがいつ/いつ起こるかを知っています。
ゴードンデイヴィソン

2
@Gordon-それは素晴らしく有益な反応でした!+1
ドランアンテヌッチ

こんにちは、@ GordonDavisson。この回答を書いてから何か変更があったら興味があります(それ以来OSのアップデートがいくつかありました)。
サムテブランド

@SamtheBrand:大した変化はありません。ディスクユーティリティ(GUIバージョン)がSSDでの安全な消去を許可しないというメモを追加し(実際には機能しないため)、HDDEraseへのリンクを修正し、Parted Magicが機能する可能性があるというメモを追加しました(試していませんが) )。
ゴードンデイヴィソン

8

ターミナルを開き、次のコマンドを入力します。

df -k

不可逆的に消去するSSDのパーティションに対応する最初の列に注意してください。と言いましょう/dev/disk1s2

次のコマンドを入力します。

dd if=/dev/zero of=/dev/rdisk1s2 bs=100k

/dev/rdisk1s2SSD上のパーティションに関連付けられたrawデバイスはどこにあります。このコマンドは、使用可能な最初のブロックから最後のブロックまで、このパーティションを完全に書き込みます。このコマンドは長持ちし(100ギガバイトで約1/2時間)、進行状況のスクロールバーはありません。

このコマンドでシェルのプロンプトが返されると、ディスクは完全かつ不可逆的に消去されています。Disk Utilityこのパーティションを起動して確認します。それはあなたがそれがどんな形の修理も超えて損傷していることを告げるでしょう。そして、それは正しいです。

このパーティションを好きなようにフォーマットするだけです。

物理ブロックレベルで行われていることは次のとおりです。SSDを消去するdd&DUの映画


1
これは、ゼロで上書きするディスクユーティリティのオプションと同等であり、同じ理由でSSDで完全に安全ではありません。詳細な説明については、私の答えをご覧ください。
ゴードンデイヴィソン

→ゴードン:あなたの答えを読んで、理解したと思うし、その質の高さを支持した。私の答えは、(ディスクユーティリティとして)ブロックデバイスではなくrawディスクデバイスを使用することです。これはSSD(信頼できるツールを使用)で検証する必要がありますが、キャッシュを使用する古い標準HDで知っている限り、rawディスクインターフェイスはこのキャッシュを回避する簡単な方法でした。SSDデバイスは、キャッシュがフルキャパシティであり、物理ディスクが削除された単純なHDディスクです。
ダン

rawデバイス(/ dev / rdisk *)を使用すると、OSキャッシュはバイパスされますが、フラッシュ変換レイヤー(これは私が説明した問題の原因です)はバイパスされません。実際、OSからバイパスする方法はありません-デバイスコントローラーは真のrawフラッシュストアをバス(SATAなど)に公開することはなく、OSはバスを介してドライブとしかやり取りできないため、安全な上書きを行うための十分なアクセス権を取得する方法。
ゴードンデイヴィソン

ここでの最初の利点はdd、キャッシュレベルをバイパスすること(キャパシティを知る方法がない)だけでなく、それらを部分的に使い果たすことです(図3の状態です)。2番目のパスでは、実際に新しいブロックを見つけて安全に消去する必要があります。
ダン14

まだ十分ではありません。2つの理由があります。1つ目は、ディスクユーティリティがディスクをフォーマットすると、その一部(パーティションテーブル、ボリュームヘッダーなど)が上書きされるだけで、余分な容量を使い果たすのに十分な保証がないことです。第二に、追加の書き込みDUがddが以前に消去したものとは異なる物理ブロックにヒットするという保証はまったくありません-コントローラーの割り当て戦略によっては、同じ物理ブロックを何度も消去している可能性があります。そのため、すべてのスペースを2回上書きしても十分ではない可能性があると述べました。
ゴードンデイヴィソン

7

現在、ディスクユーティリティの[セキュリティオプション...]ボタンはSSDでグレー表示されています。http://support.apple.com/kb/HT3680によると、SSDの消去は通常、十分に安全である可能性があります。

注:OS X LionとSSDドライブでは、ディスクユーティリティでSecure EraseおよびErasing Free Spaceを使用できません。標準の消去ではSSDからデータを回復することが困難になるため、SSDドライブにはこれらのオプションは必要ありません。セキュリティを強化するには、SSDドライブの使用を開始するときにFileVault 2暗号化を有効にすることを検討してください。

diskutil secureErase freespace 4 disk0s2リカバリパーティションでターミナルからのような何かを実行することはまだ可能です。

ただし、ドライブを消去する前にFileVault 2をオンにするだけの方がおそらく良い方法です。この答えによると、FileVault 2が有効になっている場合、リモートワイプを実行しても暗号化キーが消去されるだけです。

はい、リモートでコンピューターをワイプすると、安全なワイプが実行されます。Appleは1日もかかるかもしれないと警告しています。ただし、ドライブがFileVault 2で暗号化されている場合は、ディスクを消去する必要はありません。ディスクに保存されている暗号化キーを安全に消去するだけで十分です。基礎となる暗号化システムと同様に非常に高速で安全であり、現在のところ非常に安全です。

http://training.apple.com/pdf/wp_osx_security.pdf

FileVault 2を使用すると、IT部門は特定のMacから暗号化キーをいつでも消去して、暗号化されたデータにユーザーログインまたはデータ回復ツールからアクセスできないようにすることができます。このプロセスは、リモートワイプと呼ばれます。


5
機密データを保存するに暗号化(つまりFileVault)を有効することは優れたオプションですが、暗号化キーを「消去」するために使用されるプロセスは、標準の安全な消去がそうではないのと同じ理由で完全に安全ではないかもしれません- -古い暗号化キーは、マップアウトされたページにのみフラッシュに保存されます。コントローラをバイパスすることができ、誰かがまだ「消去」キー...で得ることができるように
ゴードンDavisson

@GordonDavissonしかし、ドライブをフォーマットするときに暗号化を再度有効にすると、古い暗号化キーが上書きされるため、古いデータに安全にアクセスできなくなりますか?
スーパーサイズ

@supersize古い暗号化キー上書きされる可能性がありますが、再フォーマット中に消去される物理ページによって異なります。これはオペレーティングシステムではなく、ドライブファームウェアが制御するものです。
ゴードンデイヴィソン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.