我在<head>
标记内的index.html文件中添加了如下CSP。
<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中部署的。有人知道这个问题的解决方法吗?
请尝试在您的head标签中添加此行,并删除旧的
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
有人知道解决这个问题的方法吗?
安全团队不仅应该显示漏洞,还应该就如何消除漏洞提供建议
因此,请向您的安全团队提出几个问题:
-
他们想用
*.css
和*.js
文件(分别是text/css和text/javascriptMIME类型(实现什么CSP规则? -
您的web应用程序使用
<meta>
标记来传递CSP。一些SPAs根本无法使用CSP HTTP标头
问题是:您的安全团队假设如何在CSS/JS文件中使用<meta>
标记? -
请他们提供任何通过CSS/JS文件的漏洞示例,这些漏洞可以通过随文件提供的CSP头来解决。
根据回答问题的结果,您可以决定解雇您的安全团队或对其进行再培训。
一些";安全团队";他们知道如何使用WAS扫描仪,但不知道如何解释其结果。因此,在接收到消息"0"之后;QID:150206内容安全策略未实施";用";脆弱的";URL,他们不知道该怎么办。
如果你是网络应用程序的负责人,请按照检查列表操作:
- 从安全团队获取原始扫描报告
- 检查有漏洞的URL的状态代码-不存在/错误的页面(403/404/5xxx/等(易受XSS攻击。如果可能的话,修复这样的错误页面,为其他人检查服务器是否返回诊断HTML页面";找不到页面"/"页面不存在";具有CSP标头
- 检查已损坏URL的"内容类型"标头。CSP对于MIME类型为text/css和text/javasctirt的文件是无用的(只有Firefox非标准地支持Workers使用的脚本文件的CSP(
- 承担责任并最终决定哪些扫描仪警告应该修复,哪些应该忽略
注1。如果https://XXXXXXXXXXXXXXXXXXXXXXXXXXX/card-details-initial
中的card-details-initial
表示";"银行卡";或者一些敏感用户的数据-在所有步骤中进行双重检查。
注意2.避免通过服务器配置和应用程序内(通过HTTP标头或元标记(同时发布内容安全策略标头。同时使用两个CSP会使生成的CSP非常具有限制性和不可预测性。