通过减少DLL注入提升企业环境中Firefox的稳定性
从138版本开始,Firefox将为企业环境中的数据防泄露部署提供DLL注入的替代方案。
DLL注入
DLL注入到Firefox是我们之前在Hacks博客上讨论过的话题。2023年,我们曾发文介绍Firefox阻止第三方DLL加载的功能。我们解释了DLL注入是什么,如何处理有问题的第三方模块,about:third-party页面以及我们的第三方注入策略。更早在2019年,我们与蒙特利尔理工大学合作发布了关于Firefox DLL注入错误的研究。现在,我们在企业Firefox安装的背景下重新讨论这个话题。
首先,回顾一下什么是DLL注入以及为什么它仍然存在问题。DLL注入是我们用来描述第三方Windows软件将其自己的DLL模块代码注入到Firefox中的术语。第三方开发DLL注入应用程序是为了以某种方式扩展其功能。这在Windows生态系统中很普遍。当第三方代码被注入时,注入的代码会与应用程序的内部进行交互。虽然软件协同工作并不罕见,互联网也是建立在基于文档化标准的软件互操作之上的,但DLL注入的不同之处在于,应用程序的未文档化内部并不打算成为稳定接口。因此,它们不适合作为构建软件产品的基础。当底层应用程序发生变化时,可能导致不兼容,引发崩溃或其他意外行为。在像Firefox这样的现代网页浏览器中,新功能和修复(无论大小)都是按月开发和发布的。因此,正常的浏览器开发可能导致与注入软件的不兼容,导致Firefox崩溃、安全功能被绕过或其他不可预测的错误行为。当这些问题出现时,需要紧急故障排除和工程解决方案,直到软件更新解决问题。这通常需要浏览器和第三方应用程序开发者之间的协作。注入到Firefox的软件类型各不相同,从小型开源项目到广泛部署的企业安全产品。为了消除一些最困难的DLL注入问题,我们将注意力转向了数据防泄露企业应用程序。
企业中的数据防泄露
数据防泄露产品是一种被组织广泛部署的软件,用于防止私人数据的意外泄露。私人数据的例子包括客户记录,如姓名、地址、信用卡信息或公司机密。就像防病毒软件部署在公司笔记本电脑群中一样,DLP软件也是如此。这些部署变得越来越普遍,很大程度上是由于合规性和责任担忧。
这与Firefox有什么关系?DLP软件通常使用DLL注入来监控Firefox等应用程序可能泄露私人数据的活动。这仅适用于可能泄露敏感信息的特定操作,如文件上传、粘贴(如复制和粘贴)、拖放和打印。
当前的DLP和Firefox
目前,DLP软件通常通过上述DLL注入方式监控Firefox活动。在这方面,Firefox和网页浏览器并非特例,但它们被大量使用且处于持续开发中,使得DLL注入更加危险。DLP软件通常部署到由IT部门管理的企业计算机群中。这包括部署注入应用程序的软件。DLP供应商通过测试测试版并根据需要更新其DLL来确保其产品与最新版本的Firefox兼容,但问题仍然经常发生。一个常见问题是企业用户遇到问题并向其IT部门报告问题。然后IT人员努力调试问题。他们可能会向Firefox或DLP供应商提交错误报告。当提交Firefox错误时,Mozilla确定错误是否实际上由外部软件引起可能是一个挑战。当我们得知此类问题时,我们会提醒供应商并调查解决方案。在此期间,用户体验不佳,可能不得不解决问题甚至使用其他浏览器。当浏览器无法正常工作时,问题就变成了高严重性事件,支持团队会尽快帮助恢复功能。
浏览隐私
当用户在公司拥有的计算机上浏览时,他们的浏览隐私通常受到公司强制软件的约束。不同地区对此有不同的法律和披露要求,但在技术层面上,当设备由公司控制时,该公司有多种途径可用于监控活动,达到公司政策规定的任何级别。Firefox建立在浏览活动仅属于用户的原则上,但作为应用程序,它无法合理地覆盖设备管理员的意愿。只要该管理员选择部署DLP软件,他们就会期望它与设备上的其他软件配合使用。如果没有得到良好支持的机制,他们要么转向不透明且容易出错的方法(如DLL注入),要么用其他浏览器替换Firefox。
新变化——减少企业中的DLL注入
从Firefox 138开始,DLP软件可以在不使用DLL注入的情况下与Firefox配合工作。Firefox 138集成了内容分析SDK,可以通过企业策略启用。该SDK由Google开发并在Chrome Enterprise中使用,是浏览器和DLP代理之间的轻量级协议,实现是特定于浏览器的。换句话说,Firefox有自己的协议实现。该集成允许Firefox与DLP软件交互,同时减少第三方代码的注入。这将提高企业环境中Firefox用户的稳定性,并且随着更多DLP供应商采用该SDK,注入Firefox的第三方代码将减少。随着供应商和浏览器使用相同的SDK,供应商可以知道单个DLP代理实现将与多个浏览器兼容。在Firefox实现开发期间,我们一直与一些领先的DLP供应商合作以确保兼容性。除了稳定性之外,当使用DLP SDK时,Firefox将显示一个指示器,为用户提供更多透明度。
企业使用
Firefox仅在使用Firefox企业策略的配置中启用内容分析SDK。Firefox企业策略被组织用于在计算机群中配置Firefox设置。它们允许管理员配置Firefox,例如限制可以安装的浏览器扩展、设置与安全相关的浏览器设置、配置网络代理设置等。您可以在我们的支持文章《为Firefox企业版强制执行策略》中了解更多关于Firefox企业策略的信息。