首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >内容安全策略:页面的设置阻止了在self上加载资源?

内容安全策略:页面的设置阻止了在self上加载资源?
EN

Stack Overflow用户
提问于 2015-10-31 15:41:45
回答 2查看 22K关注 0票数 12

我在Tomcat 6上运行了基于Java的web应用程序,我的应用程序运行在本地主机和端口9001上。

为了使我的应用程序更加安全,并降低XSS攻击的风险,我添加了值为的头默认值-src*‘不安全-内联’‘不安全-eval’;脚本-src 'self'。有了这一点,我希望允许web应用程序从同一个域加载JavaScript文件。

对于其他资源,它继续以与没有此头的情况相同的方式加载。

但是我得到了下面的错误。

代码语言:javascript
复制
Content Security Policy: The page's settings blocked the loading of a resource at self ("script-src http://localhost:9001").
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-10-31 17:00:58

标头是受信任源的白列表。

default-src列表是所有其他*-src列表使用的列表。如果它不存在,默认的是default-src: *,这意味着“所有内容都允许从任何地方”,这并不提供任何针对XSS的保护。

因此,您应该从

  • default-src none,因此所有内容都不被允许,或者
  • default-src 'self',因此只允许来自您的域的内容。

在此之后,可以根据需要替换其他*-src。例如,除了图像之外,以下所有内容都信任self,并且图像仅允许来自example.com (但不允许来自“self”):

代码语言:javascript
复制
default-src 'self'; img-src example.com;

在您的问题中,您指定了可能导致问题的default-src * 'unsafe-inline' 'unsafe-eval';,因为*已经暗示了'unsafe-inline''unsafe-eval'。这就像说“允许所有的事情,允许内联的,允许进化的”。

还请注意,通过IE X-Content-Security-Header 8中的X-Content-Security-Header支持CSP。

资料来源:

  • http://content-security-policy.com/
  • http://www.w3.org/TR/CSP/
  • http://caniuse.com/#feat=contentsecuritypolicy
票数 5
EN

Stack Overflow用户

发布于 2015-11-01 07:44:04

尝试:

代码语言:javascript
复制
default-src * 'unsafe-inline' 'unsafe-eval';script-src 'self' 'unsafe-inline' 'unsafe-eval'
票数 -5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33453405

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档