传统转义策略难以 100% 抵御高危反射型与存储型 XSS(跨站脚本攻击)。内容安全策略(CSP) 从浏览器沙箱层限制仅能执行白名单内的脚本,并阻断外部恶意服务器的非法数据外带(Exfiltration)。
一、Nonce-based 强约束 CSP 响应头
http
Content-Security-Policy: default-src 'self'; script-src 'nonce-rAnd0m123' 'strict-dynamic'; object-src 'none'; base-uri 'none'; require-trusted-types-for 'script';html
<!-- 仅带有匹配随机 Nonce 的 script 标签才会被允许执行 -->
<script nonce="rAnd0m123">
console.log("合法内嵌脚本执行");
</script>
<script>
// 注入攻击脚本由于缺少 Nonce 将被浏览器直接拒绝执行
alert(document.cookie);
</script>