瀏覽器的沙盒技術
背景
隨著業務環境的快速迭代變化,Web開發周期中安全性是開發人員和測試人員面臨的最大挑戰之一。構建和部署Web 應用程序的復雜性導致更多的安全漏洞。
開發中確保用戶數據的安全和隱私,網絡安全在軟件開發生命周期中變得越來越重要。如果可以開發和測試網站和Web 應用程序而不用擔心安全漏洞。沙盒就是一種可以幫助實現這一目標的技術。
沙盒是一種安全隔離應用程序、Web 瀏覽器和代碼的方法。它可以防止惡意或有故障的應用程序攻擊或監視 Web資源和本地系統。
沙盒瀏覽器創建了一個隔離環境,用戶可以從第三方來源下載和安裝應用程序,并在安全、隔離的環境中運行它們,即使他們的行為可疑。因此,沙盒瀏覽器可以保護您的計算機免受額外的安全風險。
在本文中,將梳理分享什么是瀏覽器沙盒、不同類型沙盒的好處和重要性,以及如何實現它。
什么是瀏覽器沙盒
為了防止系統或Web應用程序中出現安全漏洞,我們需要弄清楚如何處理它們。這是瀏覽器沙盒派上用場的時候。瀏覽器沙箱提供了一個安全的虛擬環境來測試有害代碼或運行第三方軟件,而不會損害系統數據或本地文件。
例如,如果你在沙箱內下載惡意附件,它不會損壞你系統的現有文件或資源。Sandbox具有同源特性,允許JavaScript 在網頁上添加或自定義元素,同時限制對外部JSON文件的訪問。
如今,Chrome、Firefox 和 Edge 等主流的網絡瀏覽器都帶有內置沙箱。沙盒瀏覽器的最終目標是保護機器免受與瀏覽相關的風險。因此,如果用戶從網站下載惡意軟件,該軟件就會下載到瀏覽器的沙箱中。關閉沙箱后,其中的所有內容(包括有害代碼)都會被清除。
瀏覽器沙盒使用2種隔離技術來屏蔽用戶的Web瀏覽活動和系統硬件、本地PC 和網絡:本地瀏覽器隔離、遠程瀏覽器隔離。
本地瀏覽器隔離
本地瀏覽器隔離是一種傳統的瀏覽器隔離技術,它在沙箱中運行虛擬瀏覽器或在用戶本地基礎設施上運行虛擬機。它有助于將數據與外部安全威脅和不安全瀏覽隔離開來。例如,如果惡意元素潛入,影響將僅限于沙盒瀏覽器和虛擬機。
遠程瀏覽器隔離
遠程瀏覽器隔離涉及一種虛擬化技術,其中瀏覽器在基于云的服務器(公共云和私有云)上運行。在遠程隔離中,用戶本地系統沒有瀏覽活動,瀏覽器沙盒、過濾和風險評估在遠程服務器上進行。
遠程瀏覽器隔離涉及兩種隔離用戶本地基礎設施和Web內容的方法:
1、DOM鏡像:在這種技術中,瀏覽器并不完全與用戶的本地系統隔離。但是,DOM 鏡像技術會過濾惡意內容并將其余內容呈現給用戶。
2、視覺流:這種技術提供了完全的遠程瀏覽器隔離。視覺流的工作方式類似于 VDI(虛擬桌面基礎設施)系統,其中瀏覽器在基于云的服務器上運行,視覺輸出顯示在用戶的本地計算機上。
瀏覽器沙盒重要性
網絡技術已經在高速發展,從而使開發者能夠快速開發和發布網站和網絡應用程序。同時對網絡應用程序的需求在快速增長。擁有一個安全、受控的環境(如沙盒瀏覽器)以在不危及本地系統和資源的情況下執行操作至關重要。
例如,用戶正在沙盒中運行 Web 瀏覽器。如果惡意代碼或惡意文件利用 Web 瀏覽器漏洞,就影響會限制在沙箱內。在引爆過程可以幫助發現新漏洞并緩解 Web 瀏覽器中的漏洞。但是,如果沙盒瀏覽器被禁用,惡意程序就可以利用網絡瀏覽器的漏洞并破壞用戶的本地系統和資源。
將沙箱合并到 Web 開發工作流程中,有如下7種好處:
1、沙盒保護設備和操作系統免受潛在威脅。
2、與未經授權的一方或供應商合作時,建議使用沙盒環境。在部署程序之前,可以使用沙箱來測試可疑代碼或軟件。
3、沙盒可以幫助防止零日攻擊。由于開發人員無法發現漏洞利用的即時補丁,因為零日攻擊本質上是有害的,沙盒通過隱藏系統中的惡意軟件來減輕損害。
4、沙盒環境隔離威脅和病毒。這有助于網絡專家研究和分析威脅趨勢。它可以防止未來的入侵和識別網絡漏洞。
5、沙盒應用程序是一種混合解決方案,這意味著它們可以在本地和遠程(基于云的服務器)部署。混合系統比傳統解決方案更安全、可靠且更具成本效益。
6、沙盒和 RDP(遠程桌面協議)設置可幫助企業確保安全的外部網絡連接。
7、沙盒可以與防病毒或其他安全工具和策略結合使用,以加強您的整個安全生態系統。
在日常工作流程中使用的大部分產品,如在線瀏覽器、網頁、PDF、移動應用程序和 Windows 應用程序,它們都是屬于沙盒化的。
1、Web 瀏覽器:可能易受攻擊的瀏覽器在沙盒環境中運行。
2、瀏覽器插件:加載內容時,瀏覽器插件在沙箱中運行。沙盒瀏覽器插件,如 Java,更容易受到攻擊。
3、網頁:瀏覽器以沙盒模式加載網頁。由于網頁是內置的 JavaScript,因此它無法訪問本地計算機上的文件。
4、移動應用程序:移動操作系統,如 Android 和 iOS,以沙盒模式運行其應用程序。如果他們想要訪問您的位置、聯系人或其他信息,他們會彈出權限框。
5、Windows 軟件和程序:在更改系統文件之前,Windows 操作系統中的用戶帳戶控制 (UAC) 會請求您的許可。UAC 的功能類似于沙箱,但它不提供完整的保護。但是,不應該禁用它。
沙盒分為三類:應用程序沙箱、瀏覽器沙箱、安全沙箱
應用程序沙盒
使用應用程序沙箱,可以在沙箱中運行不受信任的應用程序,以防止它們損壞本地系統或竊取數據。它有助于創建一個安全的環境,讓應用程序可以在沒有損壞系統風險的情況下運行。通過將應用程序與用戶的本地計算機隔離開來,應用程序沙箱增強了應用程序的完整性。
瀏覽器沙箱
可以在沙箱中執行基于潛在惡意瀏覽器的應用程序,以防止它們對本地基礎設施造成損害。它導致建立一個安全的環境,網絡應用程序可以在其中運行而不會危及系統。引爆技術可以幫助發現 Web 瀏覽器中的新漏洞及其緩解措施。
安全沙箱
安全沙盒讓你探索和檢測可疑代碼。它會掃描附件并識別可能有害的網站列表,并確定是否有人下載或安裝了受感染的文件。
使用內置沙盒瀏覽器進行沙盒處理
沙盒預裝在主流的瀏覽器中,例如 Chromium、Firefox 和 Edge,以保護系統免受瀏覽漏洞的侵害。讓我們看看沙盒在不同瀏覽器中是如何工作的:
Chromium 瀏覽器沙盒
Google Chrome 和 Microsoft Edge 都是基于 Chromium 瀏覽器構建的。broker 和 target 是構成 Chromium 瀏覽器沙箱的兩個進程。目標進程是一個子進程,而瀏覽器進程是一個代理進程。目標進程的代碼在沙箱環境中執行。代理進程充當子進程和硬件資源之間的角色,為子進程提供資源。
Firefox 瀏覽器沙盒
為了保護本地系統免受威脅,Firefox 在沙箱中執行不受信任的代碼。Firefox 瀏覽器通過使用父進程和子進程進行沙盒化。瀏覽時,潛在的惡意程序會在沙盒中運行。在沙盒過程中,父進程是子進程和其余系統資源之間的中介。
可以更改 Firefox 瀏覽器中的沙盒程度,使其限制最少、適度或高度。
要檢查 Firefox 沙盒瀏覽器的級別,請在地址欄中輸入命令:about:config
在頁面上,它將加載 Firefox 可配置變量。現在,在配置頁面上點擊“ CTRL+F ”,在搜索框中輸入以下命令,然后按“ Enter ”。
邊緣瀏覽器沙盒
當啟動 Edge沙盒瀏覽器Windows 10 時,將看到一個全新的桌面,其中只有“回收站”和 Edge 快捷方式。它顯示“開始菜單”和其他圖標,但它們在此沙盒環境中不起作用。可以在標準 Windows 10 上訪問它們,而不是沙盒 Windows 10。
當關閉 Edge 瀏覽器沙箱時,瀏覽器歷史記錄將不再可用。ISP可能會跟蹤沙箱中的操作,但此數據不可審計。
輸入禁用google chrome沙盒
在執行基于 Chrome 的沙盒測試時,您可能會遇到沙盒功能會導致 Chrome 瀏覽器閃現以下錯誤的場景:“The Application Has Failed to Initialize”。
在這種情況下,可能需要禁用 Chrome 瀏覽器沙箱。
以下是禁用以下步驟:
- 如果沒有 Google Chrome 沙盒快捷方式,請創建一個。
- 右鍵單擊快捷方式并選擇“屬性”。
- 在目標中提供的應用程序路徑中輸入以下命令:--no-sandbox


小結
大多數網絡瀏覽器都使用沙箱。但是網絡上仍然是病毒和其他惡意軟件的來源。沙盒的級別似乎有所不同。不同的網絡瀏覽器以不同的方式實現沙盒,因此很難弄清楚它們是如何工作的。但是,這并不意味著所有網絡瀏覽器都不安全。另一方面,瀏覽器沙盒可以使它們相對安全。如果某些瀏覽器組件使用 Flash 和 ActiveX,它們可能會擴展到沙箱之外。
市場上有 Sandboxie、BitBox 和其他沙盒工具,當企業受到高級持續性威脅 (APT) 的攻擊,可以沙盒技術進行攻擊的防御,可以為未知的攻擊做好準備。可以在隔離環境中測試和開發應用程序,而不會通過沙盒損害本地系統資產。