Firefox 将启用 W^X 安全特性:性能影响不大

Mozilla开发者们已经为Firefox浏览器加入了OpenBSD的W^X安全特性,以应对基本的缓冲区溢出和内存泄露问题。“W^X” 是“写异或执行”(Write XOR Execute)的缩写,作为OpenBSD中富有代表性的安全特性,Mozilla的开发者们已经将它移植到了Firefox的JIT代码编译器中。 Jan de Mooij指出,该功能在Firefox底层运行,并且影响在浏览器内执行的代码是如何与系统内存交互。

W^R内存保护机制的原则是,一个进程(比如Firefox中的一个网页)不能够同时写或执行。该功能会从Firefox 46每夜构建版开始部署,网页将能够使用内存写入或执行的代码,但不能够同时进行这两种操作。

通过延缓执行时间,W^X内存保护机制可组织某些类型的缓冲区溢出攻击,以及确保流程执行堆栈中的任意动态代码——即使让Firefox崩溃,也不再会盲目地运行潜在的恶意代码。

在加入W^X支持之前,Firefox给予了网页完整的“读与写”(Read-Write-Execute, 简称RWX)许可。但为了安全,Firefox此举也会小幅影响到自身的性能表现。

Jan de Mooij解释到:“RWX使得某些bug很容易被利用,所有现代操作系统都会存储执行代码但内存不可写,且数据通常是无法执行的,这点可参考W^X与DEP”。

对于普通用户来说,在切换可写可执行内存状态之前,Firefox会通过特殊的内部功能来触发,而这肯定会带来一定的延迟。

根据Mozilla开发者的内部测试,根据基准测试套件的不同,其性能影响介于1%到4%之间。考虑到影响并不明显,所以团队最终还是决定启用R^W内存保护功能。

在排除了严重缺陷和其它不可预见的性能问题之后,Firefox终将默认启用这一功能。

====================================分割线================================
文章转载自 开源中国社区[http://www.oschina.net]

时间: 2024-10-23 20:48:03

Firefox 将启用 W^X 安全特性:性能影响不大的相关文章

为什么你的 Firefox 没有启用多进程?插件惹的祸!

随着上周 Firefox 54.0 正式版的到来,Firefox 终于默认启用了多进程.在这个最新的版本中,Firefox 最多可以使用四个进程,对用户来说,内存占用和性能也比以前更好. 但有不少用户会发现,升级后的 Firefox 依然只有一个进程.据 ZDnet 报道,罪魁祸首可能是你已经使用多年的附加组件. 要检查 Firefox 54 是否卡在一个进程中,可以检查系统进程资源管理器,或检查 Firefox 的 about:config 中附加到 dom.ipc.processCount

Firefox、Edge 添加 G Suite 特性,支持脱机数据访问

G Suite,也就是原来的 Google 云端合作平台 Google Apps,包含了 Gmail.日历.云端硬盘.文档.表格.表单.幻灯片.协作平台.管理控制台等产品功能.作为自家的产品,G Suite 在 Chrome 浏览器上的运行能力自不用多说,还支持离线使用,即使没有网络连接,也可以打开和编辑文档. 现在,Google 表示正改造其 G Suite 工具,目标是可以在其他浏览器上同样实现脱机工作.为了扩展离线支持,Google 重新构建了 G Suite 工具中的 Google 文档

盘点 Oracle 11g 中新特性带来的10大性能影响

盘点 Oracle 11g 中新特性带来的10大性能影响 原创 2017-08-02 盖国强 数据和云 Oracle的任何一个新版本,总是会带来大量引人瞩目的新特性,但是往往在这些新特性引入之初,首先引起的是一些麻烦,因为对于新技术的不了解.因为对于旧环境的不适应,从Oracle产品到技术服务运维,总是要走过一个磨合的长期过程. 请注意:我们并不推荐大家盲目的关闭和摒弃Oracle的新特性,我们建议大家在遇到问题时,做出适合自己的调整. 就此盘点一下 Oracle 11g 中,那些新特性带来的新

提高XML应用程序中的性能,第1部分

如今,XML 在很多性能关键型场景中扮演着重要角色.虽然很多开发人员都知道如何编写 XML 文档.XML 模式或 DTD,但有些人可能还没有认识到,XML 应用程序的性能取决于构造 XML 文档时所作出的一些决定,以及在解析 XML 文档之前,在解析器上设置了哪些特性. 很多开发人员也知道何时使用 SAX,何时使用 DOM API.通常,如果内存不充裕,而应用程序必须处理较大的文档,或者要在内存中创建自己的表示,那么您最好使用 SAX(而不是 DOM).另一方面,如果应用程序需要随机访问和修改文

使用超线程提升处理器性能

  处理器设计师总是关注于不同的性能提升策略,为的是在每个时钟周期内完成尽可能多的计算.更快的频率.更大的数据路径以及不同的指令集方式都提升了性能.但是,性能提升最可能引起误解的一个方面就是超线程对处理器性能的影响. 超线程能够提升处理器效率已经得到了证实,但是其并不适用于所有场景,而且现代处理器设计可能会令超线程成为明日黄花. 超线程工作原理 传统的处理器队列指令在传输到处理器的执行引擎之前会通过流水线架构.应用设计以及需求差异总是会在处理器的指令管道中留有空隙,导致存在空闲的处理器时钟周期.

深入了解 CSS3 新特性

很多已经存在的新功能和特性正在被提出至CSS3.我们将在此尝试展示其中的一些内容--前提是他们已经被Firefox.Konqueror.Safari/Webkit实现了. 下面依次介绍. 译者注:原文链接在此省去,其链接的内容会附带在最后面. 边框 border-color 属性 boder-image 属性 border-radius 属性 box-shadow 属性 背景 background-origin 属性和 background-clip 属性 background-size 属性

安全和性能:两者不可兼得?

本文讲的是安全和性能:两者不可兼得,随着云计算.大数据和移动互联网等新技术的发展,互联网为社会带来进一步的变革.但同时也产生了大量的网络安全问题,主要集中在病毒.蠕虫.恶意代码,网页篡改,垃圾邮件等应用层攻击,传统的防火墙设备采用单一的安全防范技术对上述威胁已经难以应付.2004年,业界提出"统一威胁管理"的概念,即将防病毒.入侵检测和防火墙等安全设备划归统一威胁管理(Unified Threat Management,简称UTM).虽然UTM集成了多种功能,但如果用户需要同时开启多项

《自顶向下网络设计(第3版)》——2.3 网络性能

2.3 网络性能 自顶向下网络设计(第3版) 在分析网络设计技术要求时,你应该将客户所能接受的网络性能标准,包括吞吐量.精确度.效率.延迟和响应时间等区分出来. 现在有很多关于网络性能方面的数学性论述.本书在讨论网络性能时采用实际的非数学的方法,避免在网络性能精确描述中出现令人畏惧的数学方程式.虽然这些方程式比它们看上去要简单得多,但它们对于理解客户目标通常是没有必要的.本节的目标是为读者提供一种简单的网络性能观点,包括当你没有时间进行数学分析时从现实世界中能作出的结论. 分析客户的网络性能目标

Windows 10 安全新特性保障现代企业安全,掌握创新场景机遇

网络攻击总会给企业造成巨大损失.致同国际 2015 年<国际商业调查报告>[ 致同国际于 2014 至 2015 年对 35 个经济体的 2,500 家企业领导人进行调查,并于 2015 年 10 月发布<国际商业调查报告>.]结果显示,多达六分之一(15%)的被调查企业受到过网络攻击,网络攻击给企业造成的损失平均达到销售收入的 1.2%.其中在亚太地区,12 个月内黑客攻击给本地区企业造成 813 亿美元的损失,在全球则造成至少 3,150 亿美元的损失.网络攻击不仅造成企业的经