Trusted Types
是一项 Web 平台安全功能,通过阻止风险注入点(例如 .innerHTML
)使用未经验证的字符串值,有助于防范某些基于 DOM 的 XSS 攻击。如果某个有风险的注入点被屏蔽,系统会抛出违规提示。
Content-Security-Policy
(CSP) 标头利用 require-trusted-types-for
指令来强制执行可信类型。
Lighthouse 审核失败的原因

如果 CSP 标头与 require-trusted-types-for
指令一起设置,并且脚本作为其值,则审核将通过。如果未设置 CSP 标头,或者设置了 CSP 标头但缺少 Trusted Types 指令,则审核会失败。
配置 CSP 标头和 Trusted Types 指令以缓解基于 DOM 的 XSS
用户代理使用 require-trusted-types-for
指令来控制传递给 DOM XSS 接收器函数的数据。此指令的 script
值用于验证 DOM XSS 注入接收器函数是否仅接受由可信类型政策生成的类型,而不是允许字符串:
Content-Security-Policy: require-trusted-types-for 'script';