【问题标题】:Detect CSP violations with javascript使用 javascript 检测 CSP 违规
【发布时间】:2016-10-14 23:59:19
【问题描述】:

是否可以使用 javascript 检测违反内容安全策略的行为?

我的 CSP 工作并发送它的报告,我看到一些 url 被注入,可能是由浏览器插件注入的。我想向用户显示一些插件试图修改页面的提示。

我能否以某种方式检测与 javascript 的中止连接(当然,它本身已在 CSP 中列入白名单)?

【问题讨论】:

    标签: javascript content-security-policy


    【解决方案1】:

    根据W3C CSP specification,违规会触发securitypolicyviolation 事件。您可以为此添加事件侦听器。

    document.addEventListener("securitypolicyviolation", function(e) {
        alert("Something is trying something bad!");
    });
    

    有关此事件的属性,请参见上面的链接。

    在 Firefox 版本中,您需要启用 security.csp.enable_violation_events 首选项才能启用此功能。请参阅Experimental Features in Firefox 文档。

    【讨论】:

    • 这对你在 Firefox 中有用吗? Chromium 有效,但 firefox 似乎不起作用。
    • developer.mozilla.org/en-US/docs/Mozilla/Firefox/… 发布版本默认不开启,有偏好设置开启。
    • 谢谢。我希望这可以跨浏览器工作,这样我就可以通知我网站的用户恶意扩展。我的 CSP 日志中有几个请求,其中扩展程序试图插入跟踪代码和类似的。
    猜你喜欢
    • 2013-10-13
    • 1970-01-01
    • 2019-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-04
    • 2018-04-23
    • 2022-09-23
    相关资源
    最近更新 更多