Mozilla很高兴地宣布,Firefox90版本将支持基于“元数据请求标头”的抓取,使Web应用程序能够保护自己和用户免受攻击各种跨源威胁。据悉,此类威胁包括跨站请求伪造(CSRF)、跨站泄露(XS-Leaks)和推测性跨站执行侧信道(Spectre)攻击。(图片来自:MozillaBlog)跨站攻击的背后,其实涉及到Web的基本安全问题。由于其开放性,很难让Web服务器端严格区分来自其自身应用程序(浏览器选项卡)的请求或来自可能打开方式不同的恶意(跨站点)应用程序的请求。如上图所示,假设用户登录托管在https://banking.com的银行网站并执行与网上银行相关的某些活动。同时,恶意攻击者控制的网站也可以在不同的浏览器选项卡中打开,并从https://attacker.com执行一些恶意操作。因此,在用户正常交互过程中,网银Web服务器可能会收到一些异常操作,但几乎无法区分该操作是用户自己发起的还是其他标签中的恶意攻击代码。最终结果是网上银行或普通Web应用服务器死板地接受任意行为,并允许发起相关攻击。好消息是,从Firefox90开始,Mozilla将允许Web浏览器通过HTTP请求头获取元数据(Sec-Fetch-*),让Web服务器更好地区分同源/跨站攻击请求。借助Sec-Fetch-*系列请求头中提供的附加上下文(支持四种请求头Dest、Mode、Site和User),Web服务器将能够以敏锐的眼光拒绝或忽略恶意请求。启用FetchMetadate请求标头可为各种Web应用程序服务带来纵深防御机制。此外,Firefox即将推出全新的站点隔离安全架构,进一步解决上述部分问题。
