结论:基线六件套:Content-Security-Policy(XSS 纵深)、X-Content-Type-Options: nosniff(禁 MIME 嗅探,防 CSS/JS 内容被当 HTML 解析)、X-Frame-Options 或 CSP frame-ancestors(点击劫持)、Strict-Transport-Security(强制 HTTPS,防降级)、Referrer-Policy(控制 Referer 泄露敏感 URL)、Permissions-Policy(禁用不需要的摄像头/定位等浏览器能力)。
展开:逐项配置参考:
Content-Security-Policy: default-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'self'
X-Content-Type-Options: nosniff
Strict-Transport-Security: max-age=63072000; includeSubDomains; preload
Referrer-Policy: strict-origin-when-cross-origin
Permissions-Policy: camera=(), microphone=(), geolocation=()
Cross-Origin-Opener-Policy: same-origin
Cross-Origin-Resource-Policy: same-origin
细节提醒:1)HSTS 一旦带上 preload 提交浏览器列表就是长期承诺,子域名都要上 HTTPS,申请前评估;2)nosniff 缺失时老 IE 会把 text/plain 响应嗅探成 HTML 执行脚本,现代浏览器行为收敛但仍必配;3)COOP/COEP 组合是启用 crossOriginIsolation(SharedArrayBuffer、高精度计时器)的前提,也是防 XS-Leak 的现代手段;4)Cookie 不是响应头但要一起查:Secure、HttpOnly、SameSite 三属性。验证工具:securityheaders.com 扫一遍出评级,Mozilla Observatory 更细。易错点:在 CDN/网关和应用两层重复下发冲突的 CSP(浏览器取更严格者,排查时浪费半天);错误页(502 由网关生成)漏带头。
追问方向:XS-Leak 攻击面与 COOP/CORP 的防御映射、CSP nonce 在 SSR 框架(Next.js)中的集成模式。