抵禦跨站攻擊:Mozilla為Firefox 90引入元數據請求標頭功能
Mozilla很高興地宣布,Firefox 90版本將支持基於“元數據請求標頭”的獲取功能,使得Web應用程序能夠保護自身和用戶免受各種跨源威脅。據悉,此類威脅涵蓋了跨站點請求偽造(CSRF)、跨站點洩露(XS-Leaks)、以及投機性跨站點執行側信道(Spectre)攻擊。
(圖自:Mozilla Blog)
跨站攻擊的背後,其實涉及Web 的基本安全問題。出於開放的特性,其難以允許Web 服務器端嚴格區分自身應用程序(瀏覽器選項卡)的請求、或源自可能以不同方式打開的惡意(跨站點)應用程序的請求。
如上圖所示,假設用戶登錄了託管於https://banking.com 的銀行網站,並開展了網銀相關的某些活動。
與此同時,被惡意攻擊者控制的網站、也可在不同的瀏覽器標籤頁中打開並執行來自https://attacker.com 的一些惡意操作。
於是在用戶正常交互的過程中,網銀Web 服務器端可能收到某些例外操作,但卻幾乎無法分辨到底由用戶本人、還是另一標籤頁中的惡意攻擊代碼發起的操作。
最終導致網銀或常見的Web 應用程序服務器刻板地接收任意操作,並允許發起相關攻擊。
好消息是,從Firefox 90 開始,Mozilla 將允許Web 瀏覽器通過HTTP 請求頭來獲取元數據(Sec-Fetch-*),從而讓Web 服務器更好地區分同源/ 跨站攻擊請求。
借助Sec-Fetch-* 系列請求標頭中提供的附加上下文(支持Dest、Mode、Site、以及User 這四種請求標頭),Web 服務器將能夠火眼金睛地拒絕或忽略惡意請求。
Fetch Metadate 請求標頭的啟用,可為各種Web 應用服務帶來深度防禦機制。此外Firefox 將很快推出新的站點隔離安全架構,以進一步解決上述某些問題。
Mozilla Firefox 90 下載地址: