Thursday, August 15, 2013

[How To] 如何徹底抹除Sandboxie沙盤中的內容?


SandBoxie(文章介紹)在刪除沙盤內容時,採用的是Windows內建的指令碼:RMDIR。這種做法的優點就是快速、方便,但缺點就是可以透過第三方軟體來還原Sandboxie所存取過的資料,為此Sandboxie提供有隱私需求的使用者其他不同刪除資料的方法。

使用說明

  1. 打開Sandboxie主控台之後,在想要設定的沙盤上點開右鍵選單→設定沙盤

  2. 開啟「設定沙盤」視窗之後,到「刪除」→「刪除命令」,其中可以選擇的刪除命令有四個:

    • RMDIR
      Sandboxie預設的刪除指令,如果刪除命令那行留白則代表使用RMDIR作為刪除指令,優點就是刪除的速度沙盤的最快。
    • SDelete
      這是一套由Sysinternals專門開發來抹除檔案的命令列公用程式,SDelete實作了美國國防部的 DOD 5220.22-M標準。要注意的是,SDelete 會安全地刪除檔案資料,但不會刪除位於可用磁碟空間的檔案名稱。至於更詳細的資訊請參閱網頁介紹
      最新版本下載點:SDelete V1.61
    • Eraser-5
      使用由Heidi Computers所開發的Eraser 5.X來進行檔案抹除
      最新版本下載:Eraser 5.8.8
    • Eraser-6
      使用由Heidi Computers所開發的Eraser 6.X來進行檔案抹除。關於Eraser 6.X 的其他用法可以參照我之前寫過的文章
      最新版本下載:Eraser 6.0.10
  3. 除了RMDIR之外,其他刪除指令在設定的時候都會詢問主程式的位置,各種指令的主程式位置如下

    • SDeltet
      SDelete下載下來是一個命令公用程式,因此放在任何地方都可以運作,我習慣將新增的命令公用程式都放在Windows使用者資料夾中,這樣一來方便管理,而且可以用CMD直接執行指令不用一直cd。 %HOMEPATH%\sdelete.exe
    • Eraser 5.x 安裝版
      %SystemRoot%\System32\eraserl.exe
    • Eraser 6.x
      %PROGRAMFILES%\Eraser\Eraser.exe
  4. 在宣告刪除指令的主程式位置以後,刪除命令大致上就可以正常運作。如果想要修改刪除指令抹除檔案的方式,Eraser無論是5.x還是6.x都要回到Eraser程式去修改預設的檔案抹除演算法(可以參考這篇文章),而Sdelete由於本身就是命令公用程式,因此可以在Sandboxie進行修改。

    SandBoxie預設的Sdelete刪除命令如下:

    sdelete.exe -p 3 -s -q "%SANDBOX%"

    Sdelete可用的指令選項如下

    -p 指定複寫次數,-p 3代表複寫3次。

    -s or -r 遞迴子目錄。

    -q 安靜模式 不會回報錯誤訊息。

    -a 移除唯讀屬性

    -z Zero free space 將可用空間全部填入"0"

    -c Clean free Space 清除可用空間

    我所使用的Sdelete指令如下

    sdelete.exe -p 3 -s -a -c -z "%SANDBOX%"
  5. 上述都設定好之後,最後也是最重要的一步:開啟沙盤主控台,對要設定的沙盤開啟右鍵選單→沙盤設定,進入沙盤設定視窗之後到「刪除」→「刪除調用」。勾選自動清除沙盤內容,這樣每次沙盤內的程式都關閉時,刪除指令就會自動清除沙盤的內容。

    「自動清除沙盤內容」功能有勾選的狀況下,在沙盤主控台的系統圖示上開啟右鍵選單→「終止所有程式」也可以清除沙盤的內容。

參考資料

  1. Secure Delete Sandbox
  2. Introduction of SDelete

本著作依據Creative Commons 姓名標示-非商業性-相同方式分享授權條款釋出

No comments :