我注意到 Firefox 与 Chrome 和 Internet Explorer 不同,它不能在低强制级别(又称保护模式、低完整性)下运行
谷歌浏览器:
Microsoft Internet Explorer:
火狐浏览器:
下列的微软的说明,我可以使用以下方法手动强制 Firefox 进入低完整性模式:
icacls firefox.exe /setintegritylevel Low
然而,Firefox 对于没有足够权限运行的反应并不好:
我喜欢知道我的浏览器运行时权限低于我的权限,从而获得安全感。有没有办法让 Firefox 进入低权限模式?Mozilla 是否计划在某个时候添加“保护模式”?有人找到 Firefox 无法处理低权限模式的解决方法吗?
更新
从2007 年 7 月对 Mike Schroepfer 的采访,Mozilla 基金会工程副总裁:
...我们也相信纵深防御,并正在研究保护模式以及许多其他技术,以提高未来版本的安全性。
三年后,这似乎不再是优先事项了。
更新
- 2013 年 9 月 28 日
- 五年后
- Firefox 24.0
- 仍然不支持保护模式
答案1
不幸的是,目前无法在保护模式下运行 Firefox。
如果你运行的不是 64 位 Windows,你可以使用以下方法获得类似的结果沙盒。
答案2
您可以使用以下命令以低完整性模式运行 Firefox:
icacls "C:\Program Files\Mozilla Firefox\Firefox.exe" /setintegritylevel low
icacls "C:\Program Files\Mozilla Firefox" /setintegritylevel(oi)(ci) low /t
icacls "C:\Users\*username*\AppData\Local\Temp" /setintegritylevel(oi)(ci) low /t
icacls "C:\Users\*username*\AppData\Local\Mozilla" /setintegritylevel(oi)(ci) low /t
icacls "C:\Users\*username*\AppData\Roaming\Mozilla" /setintegritylevel(oi)(ci) low /t
icacls "C:\Users\*username*\Downloads" /setintegritylevel(oi)(ci) low /t
请注意,您需要为系统上的每个用户运行第二批,自定义用户名,否则他们会收到“Firefox 已在运行”的消息框。
然而,这种设置确实会导致以下问题:
- 配置文件管理器可能无法正常运行。
- 每次启动 Firefox 时您都会收到安全警告。
- 下载只能放置在低完整性目录中(因此下载在上面被标记为低完整性)。
- 直接从 Firefox 打开下载通常会失败。
答案3
Ian,您不明白保护模式的工作原理。Simon Capewell 的解决方案是提高 Firefox 安全性的有效方法。例如,您声称他的解决方案以某种方式禁用了整个低完整性级别的保护,这是完全错误的。Chrome 和 IE 使用相同的方法,因为即使在受保护模式下,下载也会写入下载文件夹。否则,您将无法下载任何内容。尽管 IE 可能使用某种包装器,从而将主进程与那些处理不受信任的数据以增加安全性的进程隔离开来,就像 Chrome 所做的那样,但这毫无意义,因为在上述方法中,Firefox 的所有组件都与篡改系统隔离开来。而在 Chrome 中,主进程以中等完整性运行,渲染进程以低完整性运行。
以这种方式配置 Firefox 可保护 Windows 和 Program Files 免遭修改,从而将 Firefox 与计算机的其余部分隔离开来。例如,Firefox 无法将恶意软件放入您的启动文件夹,也无法添加注册表项,导致启动时自动启动放入下载文件夹(Firefox 可以写入)的恶意软件。此外,以低完整性级别运行 Firefox 可防止 Firefox 试图通过在远程进程中创建线程等方法绕过强制执行的 ACL,以便在该进程的安全上下文中运行代码。Firefox 仍被允许将文件放入临时文件夹,并可能将可执行文件放入其中,Chrome 和 IE 也是如此。因此,完整性级别必须与 SRP 或 AppLocker 结合使用,以防止执行放入允许 Firefox 写入的目录中的任何可执行文件。IE 和 Chrome 也存在此要求。
一旦完成,Firefox 将能够抵御驱动式下载,并且比 IE 受到更多的保护,因为保护模式 IE 如果不与 SRP 或 Applocker 结合使用,则无法提供足够的保护。允许 Firefox 写入其自己的目录和临时文件夹与保护模式 Chrome 和保护模式 IE 被允许执行的操作没有任何不同。
此解决方案的唯一缺陷是:我有一个坏习惯,就是将可执行文件留在下载文件夹中,稍后再运行。如果 Firefox 在下载后被利用,这些可执行文件可能会被篡改。因此,下载文件后,将其移出下载文件夹。Firefox 中还存在一个非常小的风险,即有人利用该漏洞修改允许的临时文件夹中的临时文件,然后在使用该临时文件时利用更高完整性级别进程中的漏洞。但是,这种情况永远不会发生,而且只是理论上的漏洞。
进一步阅读/来源:
Windows 7 SRP(适用于 Home Premium,尽管您没有 AppLocker):
诚信水平:
http://www.symantec.com/connect/articles/introduction-windows-integrity-control
保护模式 IE:
http://msdn.microsoft.com/en-us/library/bb250462(VS.85).aspx
“驱动下载”基本信息:
Chrome 在 Windows 沙盒中的详细信息(不仅仅是完整性级别):
答案4
SRP 不是必需的,因为低完整性级别进程执行的进程本身会继承低完整性级别。但是,这是另一层保护,因此仍然是一个好主意!