您好,登錄后才能下訂單哦!
挺久之前過了一遍CSP的安全策略,很多人把它喻為XSS***的終結者,因為這種策略不再像傳統只靠各種正則和特征匹配來識別跨站***Payload,而是直接從協議層把一些存在安全隱患的用法默認給干掉了,把同源同域更發揮到了極致。之前把一些內容整理到了txt里,發在這里備忘一下吧:)
1)CSP策略在默認的情況下是不允許使用data URIs資源的,如果要使用,那么需要顯示的指定,比如:img-src 'self' data:
2)通過CRLF相應頭分裂注入來BypassCSP需要將新的相應頭插入到原來的CSP下面,在處理相同名字的Http頭時候,少數瀏覽器是根據第一次出現的來設置,大部分則是根據最后一次出現的同名Http頭來設置。兩次
3)script-src:在處理腳本資源的時候設置"unsafe-inline"可以阻止內聯Js代碼的執行。使用unsafe-eval開關可以禁止eval,setTimeout,setInterval函數的執行。
4)object-src:控制embed,code,archive applet等對象。
5)style-src:會控制樣式表@import和rel時所引入的URI資源,設置unsafe-inline規則可以是瀏覽器拒絕解析內部樣式和內聯樣式定義。并不會阻止鏈入外部樣式表。
6)img-src:可以控制圖片資源的連接,包括img標簽的src屬性,以及CSS3中的url()和p_w_picpath()方法,以及link標簽中的href屬性(當rel設置成與圖像相關的值,比如HTML支持的icon)
7)media-src:控制媒體類型的外部鏈入資源,如video, audio, source, 和track標簽的src屬性。
8)frame-src:控制內嵌框架包含的外部頁面連接:iframe or a frame。
9)font-src:控制CSS中的@font-face
10)connect-src:控制XMLHttpRequest中的open(),WebSocket,EventSource
11)inline script和eval類型函數(包括eval、setInterval、setTimeout和new Function())是不被執行的。另外data URIs也是默認不允許使用的,XBL,只允許通過chrome:和resource:形式uri請求的XBL,其它的比如在CSS中通過-moz-binding來指定的XBL則不允許被執行。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。