我的申请有一点问题。我想配置一个 CSP 标头来应对所有 XSS 潜在漏洞。但我有这个错误:
Uncaught EvalError: call to eval() blocked by CSP
DomQuery http://localhost/lib/js/extjs/pkgs/ext-core.js:21
<anonymous> http://localhost/lib/js/extjs/pkgs/ext-core.js:21
这是我的配置:
Header always set Content-Security-Policy "default-src 'self'; style-src 'self' 'unsafe-inline'; script-src 'unsafe-inline' 'self'"
请问您有解决办法吗?谢谢你!
我尝试添加不安全的评估,但它不安全..
如果可能,您可以按照 https://web.dev/articles/csp#unsafe-eval中所述重写 eval 语句。
如果这是不可能的,您的选择是替换/删除具有 eval 的组件或使用“unsafe-eval”。这会削弱您的策略,但即使允许“self”、“unsafe-inline”和“unsafe-eval”的策略也比没有策略好,因为攻击者无法加载其他脚本并且无法窃取数据。