一、什麼是CSP?
CSP全稱是:Content-Security-Policy,內容安全策略。是指HTTP返回報文頭中的標籤,瀏覽器會根據標籤中的內容,判斷哪些資源可以加載或執行。主要是爲了緩解潛在的跨站腳本問題(XSS),瀏覽器的擴展程序系統引入了內容安全策略這個概念。原來應對XSS攻擊時,主要採用函數過濾、轉義輸入中的特殊字符、標籤、文本來規避攻擊。CSP的實質就是白名單制度,開發人員明確告訴客戶端,哪些外部資源可以加載和執行。開發者只需要提供配置,實現和執行全部由瀏覽器完成。
啓用CSP的兩種方法:
(1)通過HTTP相應頭信息的Content-Security-Policy字段;
(2)通過網頁標籤。
CSP學習可參考Tencent開發者手冊:https://cloud.tencent.com/developer/section/1189835
DVWA CSP Bypass:
二、低級(Low Level)
先查看分析源碼:
<?php
$headerCSP = "Content-Security-Policy: script-src 'self' https://pastebin.com example.com code.jquery.com https://ssl.google-analytics.com ;"