Firefox将在127版本中升级更多混合内容
Frederik Braun, Malte Jürgens, Simon Friedberger 和 Christoph Kerschbaumer
2024年6月5日
目前,大多数网站已支持HTTPS:事实上,Firefox发出的请求中已有93%采用HTTPS。作为提醒,基于TLS的HTTP(HTTPS)通过创建安全加密的连接,修复了HTTP的安全缺陷。然而,当Web应用程序在其服务器上启用HTTPS加密时,遗留内容可能仍包含使用HTTP的引用,尽管这些内容也可以通过安全加密的连接获取。当这样的文档通过HTTPS加载,但子资源(如图像、音频和视频)通过HTTP加载时,这被称为“混合内容”。
从版本127开始,Firefox将自动将音频、视频和图像子资源从HTTP升级为HTTPS。
背景
在很久以前引入“混合内容”概念时,浏览器对“主动混合内容”和“被动混合内容”进行了严格的区分:通过HTTP加载脚本或iframe可能对整个文档的安全性造成严重影响,因此长期以来被作为“主动混合内容”阻止。而图像等资源则被称为“被动”或“显示”混合内容。如果网络攻击者能够修改这些资源,他们并不会完全控制文档。因此,为了支持大多数现有内容,被动内容被允许以不安全的方式加载,但地址栏中会显示警告。
之前的行为(未升级时):降级的锁图标,右下角带有警告标志。
随着Web平台支持许多新形式的内容(例如响应式图像),这种区分变得模糊:响应式图像并不像恶意响应式图像那样可以完全接管整个网页。然而,出于对更安全Web的推动,自2018年起,我们要求新功能仅在HTTPS下可用。
可升级和可阻止的混合内容
鉴于主动和被动混合内容之间的模糊界限,最新修订的《混合内容标准》区分了“可阻止内容”和“可升级内容”。脚本、iframe、响应式图像以及几乎所有其他功能被视为“可阻止内容”,而之前被称为“被动内容”的类型(如<img>
、<audio>
和<video>
元素)现在将由浏览器升级为HTTPS,如果无法通过HTTPS获取,则不会加载。
这也带来了安全指示器的行为变化:Firefox将不再在锁图标的右下角显示小警告标志。
更改后的效果:完全安全的锁图标。图像加载已成功升级或失败(例如连接重置)。
在Firefox 127中,所有混合内容将被阻止或升级,确保通过HTTPS传输的文档保持完全安全和加密。
企业用户
不希望Firefox执行升级的企业用户可以通过更改以下首选项来调整行为:
- 将
security.mixed_content.upgrade_display_content
设置为false
,使Firefox继续以不安全方式显示混合内容(包括第一个图片中的降级锁图标)。 - 将
security.mixed_content.block_display_content
设置为true
,使Firefox阻止所有混合内容(包括可升级内容)。
更改这些首选项的原因可能包括不支持安全HTTPS体验的遗留基础设施。需要注意的是,这两种选项均不推荐,因为它们会使Firefox偏离可互操作的Web平台标准。此外,这些首选项不会像内置设置页面中的选项那样获得同等的支持、审查和质量保证。
展望
我们将继续致力于让隐私和安全不再是可选项,为Web带来更多HTTPS:下一步,我们将默认将所有地址栏中的地址优先使用HTTPS,如果网站无法安全加载,则回退到HTTP。此功能已在Firefox Nightly中提供。
我们还在开发另一个迭代版本,通过称为“HTTPS-First”的回退机制升级更多页面加载,该功能将很快出现在Firefox Nightly中。最后,对不希望任何流量通过HTTP暴露在网络中的安全意识较高的用户,可以使用Firefox设置中提供的“严格HTTPS-Only模式”,该模式要求所有资源加载必须通过HTTPS完成,否则将被阻止。