我的aws实例中嵌入了以下csp,但它似乎没有正确配置,当我通过Mozilla Observatory扫描时,我收到以下消息:内容安全策略(csp(实施不安全。
Header set Content-Security-Policy "default-src 'unsafe-inline' https://vlibras.gov.br https://*.chargebee.com https://*.chargebeeportal.com https://*.cloudfront.net https://*.jobconvo.com https://*.amazonaws.com https://www.google-analytics.com https://jobconvo.freshdesk.com https://assets.freshdesk.com https://*.googleapis.com https://gitcdn.github.io https://*.youtube.com https://*.gstatic.com https://*.doubleclick.net https://www.google.com/recaptcha/ https://www.google.com object-src data: 'unsafe-eval' blob: 'unsafe-eval' font-src: 'self' data;"
经过一点研究,我认为问题出在不安全的内联参数上是对的吗?如果是这样的话,我该如何解决这个问题,因为我已经在onClick((中嵌入了HTML
首先,您的CPS有一个致命错误-您在指令之间错过了;
,并且使用了错误的指令名称,如"font src:"。
Mozilla Observatory认为CSP不安全,因为在脚本src/default-src中使用了不安全的令牌'unsafe-eval'
和'unsafe-inline'
。
我已经在onClick((中嵌入了HTML
要避免'unsafe-inline'
,可以使用addEventListener("单击"(而不是<tag onClick='...'>
。
为了避免'unsafe-eval'
,它需要知道使用哪些不安全的构造-eval()
Function()
、setInterval()
或setTimeout()
。最后两个可以很容易地修复(请参阅评论(。