【问题标题】:firefox csp issue with installGlobalHook(window)installGlobalHook(窗口)的firefox csp问题
【发布时间】:2018-02-12 22:50:47
【问题描述】:

奇怪(且难以诊断)的问题。我在我的网站上添加了一个 CSP,它工作得很好,有 1 个错误似乎只出现在 Firefox 上(猜测它是 Mozilla CSP 实现异常)。但是,我不确定在这一点上如何更深入地诊断这一点。它似乎没有阻碍任何功能 - 一切似乎都正常,但我看到 Firefox 上出现错误(并且它的报告非常垃圾,我可以用其他方式处理,但宁愿根本原因和处理)。

这是错误(几乎出现在网站的每个页面上):

Content Security Policy: The page’s settings blocked the loading of a resource 
at self (“script-src https://code.jquery.com/”). Source: ;(function 
installGlobalHook(window) { ....

我通常通过 CDN 加载 jQuery,并且加载和运行它没有任何问题,尽管我也尝试过下载 jQuery 并在内部加载它(这也很好)。

完整的 CSP 是:

Content-Security-Policy: 
default-src 'self'; 
base-uri 'self';
script-src 'self' https://code.jquery.com/;
form-action 'self'; 
font-src 'self' https://fonts.googleapis.com/ https://fonts.gstatic.com/;
style-src 'self' https://fonts.googleapis.com/ 
    https://code.jquery.com/
    'sha256N90MKmRow2DpYEVeqcc3uc8pOUsS4Rg4sNmkau1k0xQ=' 
    'sha256-i1EfB2+xYUUG32uDRMNI/DN/F9YIrGWOYdHENz9GKME='
    'sha256-75seZ0liXI7HbegtdV/WH+/9QQJ0CrDacBOViVFXckc='
    'sha256-2KAnfZnKiF2um1+UfXP14UfR93HoXmam2Y1ipeMWRUI='; 
frame-ancestors 'self';
report-uri /csp/csp-report

刚刚重新验证,只在 Firefox 上看到错误。我查看了其他相关问题,但似乎没有直接解决此问题(例如:CSP Violation Detected in Firefox OS validator)。

另外,我注意到错误出现在页面 GET 之后立即出现在控制台中,但在所有资源 GET 之前(对于脚本、css 文件等),所以我想知道(甚至更多)它是否可能是 CSP 的 FF 错误...?

关于如何从这一点着手的任何想法或建议都会非常有帮助 - 我有点用尽了自己的线索。谢谢!

** 更新 ** - Ug。它绝对是 React DevTools Firefox 扩展。禁用扩展,CSP 违规消失。此外,因为这是扩展本身的一个组件,所以无法将 React DevTools 与 FireFox + CSP 一起使用(实际上打开了任何级别的安全性)。布拉格。

【问题讨论】:

  • 实际答案现在隐藏在问题的最后一行 - 这是由 React DevTools Firefox 扩展引起的。答案确实提出了一种解决方法。

标签: firefox content-security-policy react-devtools


【解决方案1】:

以相对次优的方式解决了这个问题(恕我直言)。

Firefox 显然不喜欢将 CSP 的“default-src”属性设置为“self”,就像我在配置中那样。将“default-src”指令更改为我的实际主机源('localhost' for dev 和实际域 'https://*.foobar.com' for prod),installGlobalHook(window) 的 CSP 违规停止。

仅供参考,以防其他人遇到此错误...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-25
    • 1970-01-01
    • 1970-01-01
    • 2014-08-15
    相关资源
    最近更新 更多