Information Technology
Published Article
Sandboxie 使用知多少
About MANETIC
Introduction
Services
Join Us
Continuing Professional Development
What's New
Incubatees
Information Technology
Environmental Technology
IS Audit & Security
Sandboxie 使用知多少

為什麼只瀏覽網頁,收發電郵的用戶,電腦也會染上病毒呢?
假設用戶沒有安裝防毒軟件、或安裝後沒有啟動即時的掃毒功能、或防毒軟件對“新型病毒”無效。當出現以上情況和用戶需要打開一些“不確定”是否安全的軟件或文件時,用戶隨時會墮入“病毒陷阱”。
現今不明代碼及惡意病毒不斷地在網絡橫行,有時用戶只是在網上作一些簡單的運作,如瀏覽網頁,收發電郵等,也會莫名其妙地誤中病毒。為了減低風險,今天將為大家介紹一款不會佔用太多系統資源,又能同時提供防禦的工具Sandboxie。
“sandbox”是指把程序運行在虛擬環境和實體系統分離的安全機制,常用作為測試平台。本篇所介紹之軟件Sandboxie是由RonenTzur所設計,應用了sandbox安全機制概念的虛擬平台。其主要功能是在操作系統中虛擬出一個工作環境,實際上是使用Sandboxie建立一個獨立的、由磁碟及記憶體隔離出來的專區,假如有惡意程序試圖攻擊或隱藏於系統中,Sandboxie能有效地把攻擊侷限在虛擬環境下,當移除當前正在操作的sandbox虛擬平台時,攻擊也隨即被解除,不會對實際的操作系統造成任何影響。

圖一:Sandboxie運作原理[資料來源:Sandboxie的官方網站]
如圖一所示,用戶可透過Sandboxie執行如瀏覽器、應用程序及遊戲等多種軟件,Sandboxie會自行設立一個虛擬環境,把執行中的應用程序與操作系統隔離,防止惡意程序入侵用戶電腦。
若要清除sandbox虛擬平台的痕跡,用戶需在停用應用程序後,緊記刪除sandbox的內容。否則所執行之資料檔案或所下載的檔案仍會殘留在sandbox所佔用的空間上。
Sandboxie虛擬空間優勝之處:
- 安全的網上瀏覽:當使用Sandboxie瀏覽網站時,若不慎開?或下載了惡意軟件,其影響亦只侷限於sandbox虛擬平台內,刪除sandbox內容即可消除問題。
-加強保護用戶私隱:用戶使用Sandboxie瀏覽網站時,儲存在瀏覽器之瀏覽記錄、Cookie、及暫存文件等資料都只存在Sandboxie內,刪除sandbox虛擬平台的內容,記錄也會被刪除,不會存留在操作系統中。
-加強使用電子郵件的安全性:在Sandboxie內開啟電子郵件,可阻擋病毒及其他惡意軟件入侵用戶系統。
-保持系統內資料整潔、條理:Sandboxie可用於安裝及測試軟件。由於安裝軟件,只侷限於sandbox虛擬平台,不會影響用戶系統;可減少系統因為安裝或移除軟件,而導致操作系統變得臃腫及混亂。
付費註冊版和免費試用版有什麼區別?
Sandboxie擁有免費試用版本及付費註冊版本。其防護能力和安全性基本是一樣的,但試用版本並沒有開放所有的功能。試用版本提供30日免費試用。試用期過後,軟件會在每次啟動時,提示用戶完成註冊程序。
兩者最大的分別為付費註冊版本開放了以下功能:
1.ForcedFolders:
在此資料夾/磁盤開啟或執行的檔案或程序,都會被限制在sandbox虛擬平台裡執行!
如:把USBFlashDisk磁碟加到ForcedFolders,可防禦由[AutoRun]自動執行指定的檔案,從而減少autorun.inf病毒的影響。
2.ForcedPrograms:
開啟或執行某些檔案或程序時,都會被限制在sandbox虛擬平台裡執行!
如:瀏覽器、電郵軟件、多媒體軟件以及即時通訊軟件等。
安裝及執行:
可到Sandboxie官方網站http://www.sandboxie.com/下載。
Sandboxie支援Windows2000、WindowsXP、WindowsVista及WindowsServer2003。部份版本也支援64bit的WindowsVista及Windows7操作系統。
安裝Sandboxie時,系統除提供英文版本外,還支援繁體中文、簡體中文等多種語言,讓用戶選擇。在Sandboxie執行應用程序時,所有應用程序的執行視窗會顯示「#」的符號(如圖二),從而分辨出其處於系統實體工作還是處於sandbox虛擬平台下執行。
![]()
圖二:顯示「#」符號的執行視窗
在Sandboxie執行任何應用程序或下載任何檔案,當刪除sandbox虛擬平台內容後,其資料亦同樣被刪除。如用戶想保留在sandbox下載之檔案,可透過恢復檔案命令(FileRecover),把下載到sandbox的檔案,複製到用戶對應的檔案夾。
通常用戶在sandbox虛擬平台下安裝或下載的檔案,Sandboxie系統會主動提示是否需要還原,當點擊“確定”後,Sandboxie系統會把下載檔案或安裝檔複製到實體系統。但並不建議在測試軟件過程中或在開啟不明檔案時,按此按鈕。特別是瀏覽某些不明或危險網站時,按此按鈕。系統基本上是不會隨便還原的。

圖三:在Sandboxie系統下之sandbox虛擬平台[sandboxDefaultBox]執行程序。
快速“執行”指令:
命令
簡介
RunWebBrowser
在Sandbox虛擬環境下開啟預設的瀏覽器。
RunEmailReader
虛擬環境下開啟預設的電郵軟件。
RunAnyProgram
執行任何程序。可直接輸入或選取應用程序來執行。
RunFromStartMenu
操作系統之“開始功能表”,選取應用程序來執行。
RunWindowsExplorer
在Sandbox虛擬環境下開啟檔案總管。
TerminatePrograms
結束當前Sandbox虛擬環境下執行的程序。
RecoverFiles
恢復文件。複製當前Sandbox虛擬環境下之檔案到對應的檔案夾。
QuickRecovery
快速恢復檔案,但不常使用。
DeleteContents
刪除在Sandbox虛擬環境下之所有檔案,包括系統執行時的暫存檔案。
SandboxSetting
Sandbox的功能設定。可展開左邊的目錄,如在ProgramStart下設定ForcedFolders及ForcedPrograms。
RenameSandox
更改當前Sandbox名稱。
RemoveSandobx
刪除當前Sandbox虛擬平台。
CreateSandbox
新建立一個Sandbox虛擬平台。
反keylogger截聽資料設置
由於Sandboxie只是創建一個虛擬的工作環境,在該虛擬環境內進行的任何操作都不會對實體環境帶來影響。但在sandbox的虛擬平台下操作應用程序,亦可能會洩露用戶資料。如用戶在sandbox虛擬平台下,不小心被安裝了鍵盤記錄(keylogger),當用戶在sandbox虛擬平台下輸入的任何訊息,都有可能被截獲並傳送到鍵盤記錄的後台電腦。
如何能夠在使用Sandboxie的同時,又能反鍵盤記錄(keylogger)呢?其實很簡單,只要在Sandboxie的Setting內設定即可,只有某些特定的應用程序可在特定的sandbox內執行(如只在某sandbox平台運行IE瀏覽器),這樣便能防止鍵盤記錄程序在sandbox背後執行。
(備注:如想在默認的Sandboxie虛擬環境內,只執行已設定的應用程序組。應在[DefaultBox]的部份加入;如想在自設的[Test]sandbox虛擬平台內加入限制,應在[Test]的部份加入。)
1.開啟SandboxSettings,實際操作應為主菜單對應sandbox虛擬平台,按滑鼠右鍵選取“SandboxSettings”

圖四:開啟SandboxSettings
2.實際操作應為:展開Restrictions->Start/RunAccess->按“AddPrograms”

圖五:Start\Run設置:默認設置為可執行任何程序。
3.選取或輸入應用程序名稱[Selectorenteraprogram]->按“確定”[OK]返回設定頁。再按“應用”[Apply]按鈕在Start\Run設置界面。

圖六:加入iexplore.exe(IE瀏覽器)
4.完成設定後,其他任何程序(除IE瀏覽器外),都不能在[TEST]sandbox虛擬平台內執行。用此sandbox上網,就不怕keylogger同時在背後執行。

圖七:Sandboxie拒絕執行的提示窗。
Sandboxie隔離虛擬平台及實體系統的簡單示範:
我們首先在sandbox虛擬環境[SandboxDefaultBox]下建立一個文件夾Demo,然後我們會在sandbox虛擬環境[SandboxDefaultBox]下開啟檔案總管,其後我們同樣會在sandbox虛擬環境外再次開啟檔案總管,看看兩者有何分別!
如圖所示,我們可以在Sandbox虛擬環境[SandboxDefaultBox]下開啟檔案總管,可以看到我們剛才所建立的文件夾Demo。

圖八:Sandbox虛擬環境下的檔案總管
當結束sandbox虛擬平台[SandboxDefaultBox]後,我們在實體系統再次開啟檔案總管,此時我們將會發現在檔案總管內,我們剛才所建立的文件夾Demo並不存在。

圖九:實體系統的檔案總管
注意事項:Sandboxie只是確保在其執行的程序在虛擬的環境運行,執行期間的記錄及相關檔案不會寫入真實系統裡。但運行中的程序是有能力讀取用戶的個人資訊,並與外界聯繫,傳送用戶資訊給其他人。在sandbox虛擬平台試行的病毒(如著名的Zeus僵屍網絡),都能和病毒操控中心聯繫、發送及接收資訊。只有在sandbox虛擬平台“結束程序”[TerminatePrograms],才可真正停止程序讀取用戶資訊和切斷程序對外的聯繫。在測試軟件及開啟不信任來源的檔案時要特別留意。
總結:
當然,執行可疑的程序,除了可使用Sandboxie,隔離出一個虛擬空間,來運行程序外;坊間還有許多功能相約的軟件,如VMwareWorkstation(VM)。此軟件是一套虛擬機器軟體,它可以讓電腦同時執行數個作業系統。用戶可在虛擬的作業系統內運作可疑的程序。但缺點是,其運行的需求配備門檻較高。額外需要幾百megabyte的儲存空間及至少256M至512M的記憶體才可運作一個獨立的虛擬作業系統。相對而言,Sandboxie是一款較輕巧的虛擬軟件。
隨著對資訊安全的重視,越來越多應用程序,也加入了sandbox的功能,如Adobe、GoogleChrome及某些防毒軟件。但是否應用了sandbox的安全架構(機制),系統就百毒不侵呢?像大部份的應用程序或操作系統,Sandboxie都有可能存在零時差漏洞(軟件天生的設計漏洞或是並未被應用程序廠商發現的漏洞。)
事例:VUPEN公司於2011年5月11日對外公佈,他們已成功繞過GoogleChrome的安全機制,在其sandbox虛擬平台外執行任何程序。在VUPEN官方網站也提供示範視頻:用戶在Windows7ServicePack1(x64)系統上使用Chromev11.0.696.65,被誘使瀏覽存在入侵程式的惡意網頁。利用該惡意代碼下載程序“小算盤”,並在sandbox虛擬平台外執行。
從上述的例子可見,用戶本身需加強安全意識,認清網絡釣魚手法;應安裝防毒軟件及做好軟件更新工作,才是網絡安全的王道。

