使用 dd 和 0 擦除磁碟時區塊大小重要嗎

使用 dd 和 0 擦除磁碟時區塊大小重要嗎

我用
dd if=/dev/zero of=/dev/sda bs=4096
它來擦除磁碟。區塊大小可能會帶來安全風險,還是只是加快速度。

對不起,我的英文不好

答案1

假設您僅使用常規硬碟驅動器,則區塊大小不會對效能產生任何影響。

如果它是 SSD,它可能會產生一些安全影響,但dd無論如何你都無法真正安全地擦除 SSD,所以這並不重要(如果你只想刪除所有內容以重新使用 SSD,只需使用blkdiscard它反而) 。

然而,dd它並不安全,而且無論塊大小如何,它也不是真正的高效能。我建議調查一下資料庫管理網絡用於擦除磁碟。除了提供安全擦除傳統硬碟的選項外,它還包括快速填零模式,可以執行與您相同的操作dd,但在大多數情況下速度更快。

編輯以回答有關dd擦除磁碟的安全性的問題

dd由於以下幾個原因,使用擦除硬碟並不是一種安全的擦除磁碟的方法:

  • 它不會擦除重新分配的磁區。幾乎所有硬碟最終都會重新分配壞磁區。一旦發生這種情況,您就根本無法觸及這些扇區,除非您使用一些特殊的韌體或完全繞過磁碟控制器(這需要焊接和許多有關特定磁碟機的有點神秘的知識)。這意味著,即使您用空字節填充每個可存取的資訊字節,任何損壞的磁區仍將包含它們重新分配時的資料(並且在大多數情況下,大部分資料是可恢復的) 。這實際上也適用於透過其他非實體方法進行擦除,因此,如果您的磁碟已重新指派磁區並且您需要確保其已擦除,則需要使用非電子方式來執行此操作。
  • 覆蓋磁介質上的磁區並不能完全消除先前資料的所有痕跡。這些痕跡無法透過常規磁碟介面訪問,但資金充足的攻擊者可以使用原子力顯微鏡來觀察這些痕跡。

    打個比方,想像一下用鉛筆在厚紙上寫字。一旦撕下最上面的紙,該紙上的書寫痕跡仍會隱約出現在接下來的幾張紙上,並且可以使用多種相當簡單的方法中的任何一種來恢復。

    這就是為什麼所有主要的商業磁碟擦除產品都使用不同的模式進行多次掃描的原因。隨後的每一次傳遞都會削弱原始資料的痕跡,使恢復變得越來越困難。

對於 SSD 來說情況更糟,即使它們沒有上面列出的第二個問題,因為還有各種其他問題可能會妨礙您:

  • 大多數現代 SSD 使用寫入時複製區塊映射。這意味著,當您寫入作業系統所看到的給定位置時,您實際上並沒有覆蓋該位置已有的數據,而是寫入裝置媒體中的新實體位置,並可能從該位置複製一些現有資料。
  • 所有現代 SSD,無論是否使用寫入時複製區塊映射,都會過度配置並執行某種形式的磨損均衡。這意味著在任何給定的時間點,您實際上無法存取設備上閃存的每個字節,並且本質上會導致與擦除硬碟時重新分配壞扇區相同的問題。
  • 一些 SSD 使用線內壓縮來提高儲存效率。這意味著寫入閃存每個區塊的確切資料可能與您嘗試寫入的資料不同。
  • 一些 SSD 使用串聯重複資料刪除來提高儲存效率。這意味著您寫入的任何給定資料區塊實際上可能不會轉換為向裝置上的快閃記憶體寫入任何內容。

考慮到所有這些,如果您確實關心安全性,請不要嘗試以電子方式擦除 SSD(但是,如果它是符合 TCG Opal 的 SED,如果您信任製造商,請採取該路線),如果硬碟顯示任何過去壞磁區的證據,請不要嘗試以電子方式擦除硬碟。

相關內容