沃卡logo

什么是浏览器沙盒?

2023-02-09来源:

随着业务环境的快速变化,安全性是开发人员和测试人员在现代Web开发周期中面临的最大挑战之一。构建和部署现代Web应用程序的复杂性导致更多的安全漏洞。根据IBM和Ponemon Institute的数据泄露成本报告,2021年,数据泄露成本从386万美元(2019年的平均成本)上升到424万美元,这是该报告17年来的最高平均成本。

因此,网络安全在软件开发生命周期中变得越来越重要,以确保用户数据的安全和隐私。如果您可以开发和测试网站和Web应用程序而不用担心安全漏洞,那不是很好吗?沙盒是一种可以帮助您实现这一目标的技术。沙盒是一种安全隔离应用程序、Web浏览器和一段代码的方法。它可以防止恶意或有故障的应用程序攻击或监视您的Web资源和本地系统。

在现实世界中,沙盒是一个被墙壁围起来的儿童游乐区。它可以让孩子们玩沙子,而无需在草坪周围散落沙子。同样,沙盒浏览器创建了一个隔离环境,用户可以从第三方来源下载和安装应用程序,并在安全、隔离的环境中运行它们,即使他们的行为可疑。因此,沙盒浏览器可以保护您的计算机免受额外的安全风险。

在本文中,我们将探讨什么是浏览器沙盒、不同类型沙盒的好处和重要性,以及如何实现它。

让我们开始!

什么是浏览器沙盒?

为了防止您的系统或Web应用程序中出现安全漏洞,开发人员需要弄清楚如何处理它们。这是浏览器沙盒派上用场的时候。浏览器沙箱提供了一个安全的虚拟环境来测试有害代码或运行第三方软件,而不会损害您的系统数据或本地文件。

例如,如果您在沙箱内下载恶意附件,它不会损坏您系统的现有文件或资源。Sandbox具有同源特性,允许JavaScript在网页上添加或自定义元素,同时限制对外部JSON文件的访问。

如今,Chrome、Firefox和Edge等流行的网络浏览器都带有内置沙箱。沙盒浏览器的最终目标是保护您的机器免受与浏览相关的风险。因此,如果用户从网站下载恶意软件,该软件就会下载到浏览器的沙箱中。关闭沙箱后,其中的所有内容(包括有害代码)都会被清除。

浏览器沙盒使用两种隔离技术来屏蔽用户的Web浏览活动和系统硬件、本地PC和网络:

本地浏览器隔离

远程浏览器隔离

本地浏览器隔离

本地浏览器隔离是一种传统的浏览器隔离技术,它在沙箱中运行虚拟浏览器或在用户本地基础设施上运行虚拟机。它有助于将数据与外部安全威胁和不安全浏览隔离开来。例如,如果恶意元素潜入,影响将仅限于沙盒浏览器和虚拟机。

远程浏览器隔离

远程浏览器隔离涉及一种虚拟化技术,其中浏览器在基于云的服务器(公共云和私有云)上运行。在远程隔离中,用户本地系统没有浏览活动,浏览器沙盒、过滤和风险评估在远程服务器上进行。

远程浏览器隔离涉及两种隔离用户本地基础设施和Web内容的方法:

DOM镜像:在这种技术中,浏览器并不完全与用户的本地系统隔离。但是,DOM镜像技术会过滤恶意内容并将其余内容呈现给用户。

视觉流:这种技术提供了完全的远程浏览器隔离。视觉流的工作方式类似于VDI(虚拟桌面基础设施)系统,其中浏览器在基于云的服务器上运行,视觉输出显示在用户的本地计算机上。

为什么浏览器沙盒很重要?

现代网络技术正在迅速发展,从而使用户能够顺利地开发和发布网站和网络应用程序。与此同时,对网络应用程序的需求也在以前所未有的速度增长。根据Imperva的一项调查,Web应用程序是50%数据泄露的来源。因此,拥有一个安全、受控的环境(如沙盒浏览器)以在不危及本地基础设施和系统资源的情况下执行操作至关重要。

例如,用户正在沙盒中运行Web浏览器。如果恶意代码或文件利用Web浏览器漏洞,则影响会限制在沙箱内。此外,引爆过程可以帮助发现新漏洞并缓解Web浏览器中的漏洞。但是,如果沙盒浏览器被禁用,恶意程序就可以利用网络浏览器的漏洞并破坏用户的本地系统和资源。

沙盒的好处

将沙箱合并到您的Web开发工作流程中有多种优势。下面提到了一些优点:

沙盒保护设备和操作系统免受潜在威胁。

与未经授权的一方或供应商合作时,最好使用沙盒环境。在部署东西之前,您可以使用沙箱来测试可疑代码或软件。

沙盒可以帮助防止零日攻击。由于开发人员无法发现漏洞利用的即时补丁,因此零日攻击本质上是有害的。因此,沙盒通过隐藏系统中的恶意软件来减轻损害。

沙盒环境隔离威胁和病毒。这有助于网络专家研究和分析威胁趋势。它可以防止未来的入侵和识别网络漏洞。

沙盒应用程序是一种混合解决方案,这意味着它们可以在本地和远程(基于云的服务器)部署。混合系统比传统解决方案更安全、可靠且更具成本效益。

沙盒和RDP(远程桌面协议)设置可帮助企业确保安全的外部网络连接。

沙盒可以与防病毒或其他安全工具和策略结合使用,以加强您的整个安全生态系统。

哪些资产正在被沙盒化?

我们在日常工作流程中使用的大部分资产,如在线浏览器、网页、PDF、移动应用程序和Windows应用程序,都是沙盒化的。

下面列出了被沙盒化的资产:

Web浏览器:可能易受攻击的浏览器在沙盒环境中运行。

浏览器插件:加载内容时,浏览器插件在沙箱中运行。沙盒浏览器插件,如Java,更容易受到攻击。

网页:浏览器以沙盒模式加载网页。由于网页是内置的JavaScript,因此它无法访问本地计算机上的文件。

移动应用程序:移动操作系统,如Android和iOS,以沙盒模式运行其应用程序。如果他们想要访问您的位置、联系人或其他信息,他们会弹出权限框。

Windows软件和程序:在更改系统文件之前,Windows操作系统中的用户帐户控制(UAC)会请求您的许可。UAC的功能类似于沙箱,但它不提供完整的保护。但是,不应该禁用它。

不同类型的沙盒

在浏览器沙箱的这一节中,我们讨论了不同类型的沙箱。沙盒分为三类:

应用程序沙盒

浏览器沙箱

安全沙箱

应用程序沙箱

使用应用程序沙箱,您可以在沙箱中运行不受信任的应用程序,以防止它们损坏您的本地系统或窃取数据。它有助于创建一个安全的环境,让应用程序可以在没有损坏系统风险的情况下运行。通过将应用程序与用户的本地计算机隔离开来,应用程序沙箱增强了应用程序的完整性。

浏览器沙箱

可以在沙箱中执行基于潜在恶意浏览器的应用程序,以防止它们对您的本地基础设施造成损害。它导致建立一个安全的环境,网络应用程序可以在其中运行而不会危及系统。引爆技术可以帮助发现Web浏览器中的新漏洞及其缓解措施。

安全沙箱

安全沙盒让您探索和检测可疑代码。它会扫描附件并识别可能有害的网站列表,并确定是否有人下载或安装了受感染的文件。

使用内置沙盒浏览器进行沙盒处理

沙盒预装在流行的浏览器中,例如Chromium、Firefox和Edge,以保护您的系统免受浏览漏洞的侵害。让我们看看沙盒在不同浏览器中是如何工作的:

Chromium浏览器沙盒

Google Chrome和Microsoft Edge都是基于Chromium浏览器构建的。broker和target是构成Chromium浏览器沙箱的两个进程。目标进程是一个子进程,而浏览器进程是一个代理进程。目标进程的代码在沙箱环境中执行。代理进程充当子进程和硬件资源之间的角色,为子进程提供资源。

Firefox浏览器沙盒

为了保护本地系统免受威胁,Firefox在沙箱中执行不受信任的代码。Firefox浏览器通过使用父进程和子进程进行沙盒化。浏览时,潜在的恶意程序会在沙盒中运行。在沙盒过程中,父进程是子进程和其余系统资源之间的中介。

您可以更改Firefox浏览器中的沙盒程度,使其限制最少、适度或高度:

级别0:限制最少

1级:中等

级别2:高度限制

要检查Firefox沙盒浏览器的级别,请在地址栏中传递以下命令:

about:config

在页面上,它将加载Firefox可配置变量。现在,在配置页面上点击“CTRL+F”,在搜索框中输入以下命令,然后按“Enter”。

边缘浏览器沙盒

当您启动Edge沙盒浏览器Windows10时,您将看到一个全新的桌面,其中只有“回收站”和Edge快捷方式。它显示“开始菜单”和其他图标,但它们在此沙盒环境中不起作用。您可以在标准Windows10上访问它们,而不是沙盒Windows10。

当您关闭Edge浏览器沙箱时,您的浏览器历史记录将不再可用。您的ISP可能会跟踪沙箱中的操作,但此数据不可审计。

禁用Google Chrome沙盒

在执行基于Chrome的沙盒测试时,您可能会遇到沙盒功能会导致Chrome浏览器闪现以下错误的场景:“The Application Has Failed to Initialize”。

在这种情况下,您可能需要禁用Chrome浏览器沙箱。以下是以下步骤:

如果您没有Google Chrome沙盒快捷方式,请创建一个。

右键单击快捷方式并选择“属性”。

在目标中提供的应用程序路径中输入以下命令:

--no-sandbox

4.点击“应用”,然后点击“确定”。

浏览器沙盒:100%安全吗?

大多数网络浏览器都使用沙箱。然而,互联网仍然是病毒和其他恶意软件的来源。沙盒的级别似乎有所不同。不同的网络浏览器以不同的方式实现沙盒,因此很难弄清楚它们是如何工作的。但是,这并不意味着所有网络浏览器都不安全。另一方面,浏览器沙盒可以使它们更安全。

但是,如果您问它是否提供100%的安全性,答案是否定的。如果某些浏览器组件使用Flash和ActiveX,它们可能会扩展到沙箱之外。

结束语

企业受到高级持续性威胁(APT)的攻击,而沙盒可以保护它们。通过了解前方情况,您可以为未知的攻击做好准备。您可以在隔离环境中测试和开发应用程序,而不会通过沙盒损害您的本地系统资产。市场上有Sandboxie、BitBox和其他沙盒工具。但是,在沙盒中设置和安装不同的浏览器需要时间。

本文讨论了如何使用LambdaTest基于云的平台进行浏览器和应用程序测试,以在安全的远程环境中开发和测试应用程序,而不会危及您的本地系统。

希望您喜欢这篇文章,如果您有任何问题,请随时在评论中提出。

  图片使用申明:原创文章图片源自‘Canva可画’平台免费版权图片素材;引用文章源自引用平台文章中所使用的原图。