content-security-policy 相关问题

内容安全策略(CSP)旨在通过为开发人员提供对允许加载页面的资源以及允许执行的脚本的细粒度控制来降低跨站点脚本攻击的风险。

如何在 script-src CSP 策略标头中正确设置哈希值?

我正在尝试让 SCP 使用哈希值。 我将哈希值插入到标头 (Content-Security-Policy) 和 html 页面中。 当我禁用 CSP 并仅使用 SRI 时,一切正常。但是……

回答 1 投票 0

Express JS - 了解 CSP?

我正在使用 Express,并且遇到 CSP 问题: 拒绝从“blob:http://localhost:4000/bda8488f-14b5-4906-ab95-03f78146af69”创建工作线程,因为它违反了以下内容安全策略

回答 1 投票 0

如何在 CSP 中允许 HTML 中的脚本

我的网站的 script-src 继续产生错误并拒绝加载位于 Header.html 文件中的脚本,并且我尝试了多个网站,包括阅读文档,但是...

回答 1 投票 0

在 React 应用程序中向内容安全策略添加随机数

我正在添加内容安全策略以使谷歌标签管理器正常工作。根据说明,建议使用随机数。 所以在我的 Index.html 中,我添加了这样的内容安全策略 我正在添加内容安全策略以使谷歌标签管理器正常工作。根据说明,建议使用随机数。 所以在我的 Index.html 中,我添加了这样的内容安全策略 <meta http-equiv="Content-Security-Policy" script-src 'nonce-{GENERATED_NONCE}'" /> 作为一个对编程很陌生的人,我不明白如何动态更改 .html 文件内的随机数值。因为它需要为每个客户端唯一生成。 我尝试在index.js 中生成如下所示的随机数值。我不确定在这里添加它是否正确,也不知道如何将此值带入index.html。 const GENERATED_NONCE = crypto.randomBytes(16).toString("base64");. 有人可以帮助我吗? 您有后端基础设施吗?如果是这样,您可以从后端设置 http 标头,而不是在 HTML 中放置 CSP 标头,这将允许随机生成的随机数设置为标头。 nonce 的主要症结是:nonce 必须为每个页面请求重新生成,并且它们必须是不可猜测的。 使用 webpack 构建 React 应用程序,在 webpack 配置中,NonceInjector 插件用于在脚本和样式 HTML 标签中为属性 nonce 放置一个占位符 (NONCE)。 const HtmlWebpackPlugin = require("html-webpack-plugin"); class NonceInjector { constructor(NONCE_PLACEHOLDER) { this.NONCE_PLACEHOLDER = NONCE_PLACEHOLDER; } apply(compiler) { compiler.hooks.thisCompilation.tap("NonceInjector", (compilation) => { HtmlWebpackPlugin.getHooks(compilation).afterTemplateExecution.tapAsync( "NonceInjector", (compilation, callback) => { const { headTags } = compilation; headTags.forEach((tag) => { tag.attributes.nonce = this.NONCE_PLACEHOLDER; }); callback(null, compilation); } ); }); } } module.exports = NonceInjector; 在 webpack 配置中使用 NonceInjector 插件插入 nonce 占位符。 然后生成的脚本和样式标签将添加 NONCE。 <script defer="defer" src="/static/js/main.0405c3f1.js" nonce="_NONCE_" ></script> <link href="/static/css/main.f855e6bc.css" rel="stylesheet" nonce="_NONCE_" /> 现在在每个请求中使用一些服务器脚本将占位符随机数=“NONCE”替换为真正的随机数哈希值 您可以在此处阅读更多 GitHub 代码示例:https://www.hectane.com/blog/react-content-security-policy-webpack-node-nginx

回答 2 投票 0

缺少标头安全报告.htaccess

我正在尝试调整安全标头。服务器是阿帕奇。该网站基于 wordpress。我已经修改了这个文件十次,我已经将它上传到服务器十次了,但我仍然......

回答 1 投票 0

在 Electron 中设置 CSP 元标记时出现“您网站的内容安全策略阻止在 JavaScript 中使用‘eval’”警告

我正在创建一个 Electron 应用程序,并且根据 Electron 安全教程,我添加了一个 CSP 元标记。运行应用程序时,此问题出现在 devtools 中。 ...的内容安全政策

回答 3 投票 0

CSP 错误帮助 - 拒绝构建“已编辑”,因为它违反了以下内容安全策略指令

在我的网站上,我开始看到所有小部件都消失了,并且出现此错误, 拒绝构建“WEBSITE_URL”,因为它违反了以下内容安全策略指令:“default-src 'se...

回答 1 投票 0

如何从内联 JavaScript 生成 SHA256 哈希?

我有内联javascript,仅包含 jQuery.noConflict();在 src 标签内。我尝试将此字符串插入 SHA256 生成器,它给了我

回答 1 投票 0

配置trix编辑器不生成标题样式标签

我在 Ruby on Rails 项目中使用“trix-rails”gem。我需要使项目遵守任何不安全的内联 CSP,但我对标头中 trix 生成的两个样式标签有问题。 我是你...

回答 1 投票 0

使用“style-src 'self'”CSP策略时如何在React应用程序中应用样式?

我已经在我的 React 应用程序中实现了 CSP 策略: 光热发电政策: 屏蔽了所有@

回答 2 投票 0

在网站中,由于 CSP 配置内联样式和脚本以及外部脚本未加载

我们的网站中有以下 CSP 标头 默认 src 'self' https:blob:数据:'unsafe-inline' 'unsafe-eval' script-src:https://ajax.googleapis.com https://analytics.kaltura.com https://api。佩...

回答 1 投票 0

如何将包含“+”的 SHA 哈希添加到内容安全策略 HTTP 标头

我已将哈希值“sha256-47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=”添加到网站上的 CSP 标头中,仅供 Google Chrome 告诉我添加相同的哈希值: 拒绝应用内联样式,因为...

回答 1 投票 0

内容安全策略不适用于 SHA256

我正在 RedHat 6 Apache 2.2 上为一些带有 JavaScript 链接到 Google 的 html 文件创建内容安全策略。我在 httpd.conf 文件中的站点虚拟主机中添加了以下代码。 ...

回答 2 投票 0

如何修复 Chrome CSP 阻止的登录和注销重定向?

所以我在 Laravel 网站中启用了 CSP,它在本地主机上运行得非常好。但是,当使用域在 Linux 服务器上部署网站时出现问题,它给了我一个错误。 罗...

回答 2 投票 0

如何在 Material-UI 中为内容安全策略设置随机数?

我有一个使用 Create-React-App (react-scripts) 和 Material-UI 的 React 应用程序。我想为我的应用程序应用强大的内容安全策略,它不允许不安全的内联样式。 我想要...

回答 4 投票 0

Tawk.to href="javascript:void(Tawk_API.toggle())"替代方案

我有一个可以与 Tawk. 聊天的网站。我编写内容安全策略,并且需要避免所有内联脚本。 代码如下所示: 超文本标记语言 我有一个可以与 Tawk. 聊天的网站。我编写内容安全策略,并且需要避免所有内联脚本。 代码如下所示: HTML <a class="message_button anchor" id="message_button" href="javascript:void(Tawk_API.toggle())" title="Üzenjen nekünk!"><img alt="Üzenet küldés gomb ikonja" src="img/message_icon.svg" /></a> JS var Tawk_API=Tawk_API||{}, Tawk_LoadStart=new Date(); (function(){ var s1=document.createElement("script"),s0=document.getElementsByTagName("script")[0]; s1.async=true; s1.src='https://embed.tawk.to/5fb64551920fc91564c886eb/default'; s1.setAttribute('crossorigin','*'); s0.parentNode.insertBefore(s1,s0); })(); 所以问题出在 javascript:void(Tawk_API.toggle()); $("#message_button").click(function() { $(this).attr("href", "javascript:void(Tawk_API.toggle())"); }); 但有点一样。我尝试使用 click 和 Tawk_API.toggle() 添加事件监听器,但控制台说 Tawk_API.toggle() 不是函数。 有什么建议吗? javascript:void() 有什么替代方案吗? 感谢您提前的答复! 您可以使用 jquery on() 方法作为替代方法 <script> jQuery(document).ready(function($){ $( "#message_button" ).on( "click", "a", function(){Tawk_API.toggle();}); }); </script> 我尝试添加带有 click 和 Tawk_API.toggle() 的事件监听器,但控制台说 Tawk_API.toggle() 不是函数。 这是因为API尚未加载时您调用了Tawk_API。它需要使用 Tawk_API.onLoad 事件,请参阅 Tawk doc: 中的示例 Tawk_API.onLoad = function(){ Tawk_API.toggle(); }; 你必须做这样的事情: Tawk_API.onLoad = function(){ $("#message_button").click(function() { Tawk_API.toggle(); }); }; PS: $(this).attr("href", "javascript:void(Tawk_API.toggle())"); 构造是一个 javascript 导航,因此它是一个内联脚本。 我设法使用 onclick 属性和按钮上的“Tawk_API.toggle()”值激活 Tawk.to 聊天窗口。

回答 3 投票 0

Ext JS:CSP 标头的漏洞

我想知道Ext JS 7.7新版本是否解决了CSP标头的漏洞问题。具体来说,我想知道“unsafe-eval”内容安全策略是否......

回答 3 投票 0

CSP 错误:拒绝构建,因为祖先违反了以下内容安全策略指令

我在这里看到了很多这样的问题。但没有一个答案对我有用。 这是我的设置: 我有一个使用 oidc 在 https://localhost:4200 上运行的 Angular 17 前端项目。 我...

回答 1 投票 0

如何在CSP中使用nonce

我一直在阅读有关使用带有随机数的内联脚本(数字仅使用一次)的 CSP 文档,但我仍然没有完全理解。 我可以对不同的内联脚本使用相同的随机数吗?那...

回答 2 投票 0

如何添加内容安全策略(CSP)

我想使用javascript访问一个网站。但我在控制台中收到以下错误。 拒绝连接到“https://example.com”,因为它违反了以下内容安全政策...

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.