我已将如下 CSP 添加到 <head>
标记内的 index.html 文件中。
<meta
http-equiv="Content-Security-Policy"
content="
script-src 'self';
style-src 'self' 'unsafe-inline' https://fonts.googleapis.com;
font-src 'self' https://fonts.gstatic.com;
img-src 'self' data: https://www.gstatic.com/;"
/>
注意:我使用 style-src 'unsafe-inline'
是因为我使用了一些角材料组件,而没有 'unsafe-inline'
,角材料组件的样式会中断。
但是,我的安全团队仍然抱怨 CSP 没有实现,根据他们的说法,以下路径没有 CSP 标头。
https://XXXXXXXXXXXXXXXXXXXXXXXXXXX/card-details-initial
https://XXXXXXXXXXXXXXXXXXXXXXXXXXX/mysql/main.3550f319f28ebd698940.js
https://XXXXXXXXXXXXXXXXXXXXXXXXXXX/oauth/styles.2b86afa3c6ac02c17f35.css
https://XXXXXXXXXXXXXXXXXXXXXXXXXXX/mysql/assets/images/app_logo/
https://XXXXXXXXXXXXXXXXXXXXXXXXXXX/PMA/main.3550f319f28ebd698940.js
...
这是部署在 AWS 中的。有人知道此问题的解决方法吗?
答案 0 :(得分:2)
请尝试在您的 head 标签中添加这一行并删除旧的
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
答案 1 :(得分:0)
有人知道这个问题的解决方法吗?
安全团队不仅应展示漏洞,还应提供有关如何消除漏洞的建议。
因此,请询问您的安全团队几个问题:
他们想用 *.css
和 *.js
文件(text/css 和 text/javascript MIME 类型)实现哪些 CSP 规则分别)?
您的网络应用程序使用 <meta>
标签来交付 CSP。一些 SPA 根本无法使用 CSP HTTP 标头。
问题是:您的安全团队认为如何在 CSS/JS 文件中使用 <meta>
标签?
要求他们通过 CSS/JS 文件提供任何漏洞示例,这些示例可以通过文件随附的 CSP 标头解决。
根据回答问题的结果,您可以决定解散您的安全团队或重新培训。
一些“安全团队”的问题是他们知道如何使用 WAS 扫描器,但他们不知道如何解释其结果。因此,在收到带有“脆弱”网址的消息“QID: 150206 Content Security Policy Not Implemented”后,他们不知道该怎么做。
<块引用>如果您是网络应用的负责人,请按照check-list做什么:
注意 1。如果 card-details-initial
中的 https://XXXXXXXXXXXXXXXXXXXXXXXXXXX/card-details-initial
表示“银行卡”或一些敏感的用户数据 - 请仔细检查所有步骤。
注意 2。 避免同时通过服务器配置和应用程序(通过 HTTP 标头或元标记)发布 Content-Security-Policy 标头。同时使用两个 CSP 会使生成的 CSP 非常具有限制性和不可预测性。