【问题标题】:What to do to make GWT product Strict CSP Comapatible?如何使 GET 产品与 Strict CSP 兼容?
【发布时间】:2017-10-09 12:20:18
【问题描述】:

我在 gwt 中制作了一个 Web 应用程序,CSP Mitigator 说,我在 js 中加载了许多 eval 语句和 javascript uri,所以我的项目不是 Strict CSP Compatible 。

但我的问题是,我用 java 编写代码,而 gwwt 为我制作 js。

我还询问了 gwt 社区,但他们说在 gwt 的下一个版本中,将涵盖 csp 合规性。

但是在那之前,有谁知道,我该如何解决这个漏洞。

【问题讨论】:

  • 据我所知,所有这些 CSP 补丁都被合并了,除了一个(如果你不使用触摸事件,这对你无关紧要) - 你可以使用每晚构建,直到2.8.2版本出来了吗?
  • 另外,如果没有这些违规行为的列表,我们很难提供帮助。同时,不要使用严格的 CSP,启用不安全的内联脚本(我以为我们在 2.7 或 2.8 中摆脱了 eval,有兴趣知道它们来自哪里)

标签: javascript java gwt content-security-policy


【解决方案1】:

gwt 2.8.2 的发布已经到来,这是 csp 合规性。

【讨论】:

    【解决方案2】:

    并非完全开箱即用,只是在 gwt-2.8.2 中改进了 CSP 支持。

    例如 GWT 编译的 js 包含 data:image/gif;base64.. 等数据 URL 会违反 img-src 'self';

    在 CSP 中包含此类 URL 很尴尬。更糟糕的是使用 img-src 'self' data:;因为黑客可以在数据方案中注入任何东西。

    这可以在模块 gwt.xml 中关闭。禁用数据的使用:URLs

    <set-property name="ClientBundle.enableInlining" value="false" />

    还有一些未决的 CSP 问题,其中 GWT 代码库仍使用需要在 CSP 声明中使用 unsafe-eval 的 eval。

    此外,这是一个问题,因为它违反了 CSP,因为 eval 不是 特别安全,有些网站希望禁止使用它 进一步保护他们的数据和用户。

    https://github.com/gwtproject/gwt/issues/9578

    【讨论】:

      猜你喜欢
      • 2019-06-05
      • 1970-01-01
      • 1970-01-01
      • 2020-11-13
      • 2016-11-13
      • 1970-01-01
      • 2019-06-04
      • 2017-01-16
      • 1970-01-01
      相关资源
      最近更新 更多