Mozilla正式发布Firefox 50。最新的版本中提升了来自多个内容进程用户的用户体验,并修复了十几个高影响的安全漏洞。
在Firefox最新版本的变更中,我们注意到了它对于Electrolysis的进一步改进。Electrolysis是Mozilla实现在后台进程中呈现和执行web相关内容的功能,旨在提升浏览器的响应速度和稳定性。
Firefox最新版本还改进了SDK扩展的性能,使用SDK模块加载器的扩展的性能,以及对多平台无插件视频的支持,这其中包括WebM EME Support for Widevine。
Firefox的产品副总裁Nick Nguyen告诉InfoQ,虽然Firefox 50“并没有为JavaScript引擎做出重大改变”,但还是提供了好几个重要功能。
值得JavaScript开发者关注的更新包括sourcemap连接、对XHR的堆栈跟踪以及Web Console中的fetch()请求。
根据MDN发表的文章,如果开发人员的JavaScript源代码被压缩,就会提供source map。任何源代码中产生的消息和错误都将显示在Web Console中,并连接回到原始来源。
Firefox 50为JavaScript开发者实现了ES2015 Symbol.hasInstance属性,用来“确定构造函数对象是否将对象识别为构造函数的实例之一”。
除此之外,Object.getOwnPropertyDescriptors()方法可以“为一个给定对象的自有属性(即直接出现在对象上,而不是出现在对象的原型链中)返回一个属性描述符”。
在Mozilla Foundation Security Advisory 2016-89中指出,十二个具有高影响的安全漏洞,以及一个关键的漏洞CVE-2016-5296在Firefox 50中修复。这个关键漏洞是由于“编译器优化处理SVG内容而导致Cairo中的堆缓冲区溢出,从而引起的潜在的崩溃”。
根据RedHat安全问题解决更新所示,“在处理异常的web内容的时候发现了多个缺陷。包含恶意内容的网页可能会导致Firefox的崩溃,或潜在地以运行Firefox的用户的权限执行任意代码”。
修复的一个高影响漏洞CVE-2016-9064中的扩展更新无法验证是否包内的扩展ID与正在更新的扩展ID相匹配,因此用户在连接时会受到“中间人攻击”。CVE-2016-9075高影响漏洞修复了恶意web扩展通过mozAddonManager API未经允许安装其他扩展的问题。
Nguyen告诉InfoQ,所有漏洞“都在内部发现或是有选择的披露”,“并没有已知的漏洞利用”。
发布说明中提供了Firefox 50变更的完整列表。
Mozilla非常欢迎人们加入Firefox项目,InfoQ的读者可以通过多种方式加入到Firefox中来。Mozilla Developer Network上提供了完整的说明,指导开发者的操作指南。
查看英文原文:Firefox 50 Extends Benefits of Electrolysis
本文转自d1net(转载)