内容安全策略(CSP)旨在通过为开发人员提供对允许加载页面的资源以及允许执行的脚本的细粒度控制来降低跨站点脚本攻击的风险。
我在 php 网站上使用以下 CSP,一切正常,除了 Chrome 中的报告之外,它显然使用像 Edge 一样的报告端点: 标题(“内容安全策略:
我目前正在开发一个项目,将前端应用程序部署到 S3 存储桶,然后使用 CloudFront 提供服务。我正在使用 AWS CDK 进行设置。这是我当前的配置...
我的问题不是如何设置 CSP。我知道。然而,我确实有一个关于其他人如何使用 Wordpress 处理他们的 CSP 的问题。 WordPress 核心包括内联样式和脚本,这是一个
设置 CSP 随机数是否应该在 Node Express 中神奇地工作?
当我尝试此操作时,作为helmet.js 设置的一部分,我收到错误。 'script-src': ["'self'", (req, res) => `'nonce-${res.locals.cspNonce}'`], 它可以通过 http://127.0.0.1:3000/...
上下文 我有一个 VueJs 单页应用程序(实际上只有一个 HTML 文件),我想对其应用内容安全策略 (CSP)。这是托管在子域上,由共享主机提供服务,我...
Infor M3 / IOS(Infor 操作系统)中的浏览器跨域问题
我有一个使用适用于 H5 的 M3 TypeScript SDK(M3 Web 客户端)编写的应用程序。该程序正在 Windows 上的 Chrome 中的 M3/H5 中运行。用于处理信用卡付款,并且
拒绝应用内联样式,因为它违反了 style-src 的以下内容安全策略指令
我已经从我的应用程序中删除了之前存在的所有内联CSS。 但我仍然收到错误“拒绝应用内联样式,因为它违反了以下内容安全......
我正在使用Azure的OpenAI API服务,最近发现它对中文内容的内容过滤太严格。使用中文的时候,无论怎么修改,都无法通过c...
Vimeo 播放器在没有内容安全策略的情况下工作正常,但是当我在项目中添加 CSP 时,vimeo 播放器停止工作并给出屏幕截图中给出的错误。还添加了网址...
我有一个 Blazor 服务器端,我添加了以下标签: 我有 Blazor 服务器端,我添加了以下标签: <meta http-equiv="Content-Security-Policy" content="base-uri 'self'; default-src 'self'; img-src data: https:; object-src 'none'; script-src 'self'; style-src 'self' 'unsafe-inline'; upgrade-insecure-requests;"> 我收到以下错误: 拒绝连接到'http://localhost:58126/c5f3e2f1da1843188844fd8515c3ca3b/browserLinkSignalR/negotiate?requestUrl=https%3A%2F%2Flocalhost%3A44350%2FDashboard&browserName=&userAgent=Mozilla%2F5.0+(Windows+NT+10 .0%3B +Win64%3B+x64)+AppleWebKit%2F537.36+(KHTML%2C+like+Gecko)+Chrome%2F109.0.0.0+Safari%2F537.36&browserIdKey=window.browserLink.initializationData.browserId&browserId=2655-11e6&clientProtocol= 1.3&_=1675268211057',因为它违反了以下内容安全策略指令:“default-src 'self'”。请注意,“connect-src”未明确设置,因此“default-src”用作后备。 和 拒绝连接到“wss://localhost:44393/KeyAccount.Web/”,因为它违反了以下内容安全策略指令:“default-src 'self'”。请注意,“connect-src”未明确设置,因此“default-src”用作后备。 如何解决这些问题? 内容安全策略是代码中潜在安全错误的缓存。它会禁用您不会使用的部分浏览器功能。在您的情况下,csp(Microsoft 文档中的默认值¯\(°_o)/¯)禁用太多。 我遇到了同样的错误,并将我的 csp 更新到以下版本。我应该禁用更多才能有效。 <meta http-equiv="Content-Security-Policy" content="base-uri 'self'; default-src 'self'; connect-src * ws: http: https: 'self'; img-src data: https:; object-src 'none'; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; upgrade-insecure-requests;">
我有一个 CSP 元标记,如下所示: 我有一个 CSP 元标记,如下所示: <meta http-equiv="Content-Security-Policy" content="font-src 'self' 'unsafe-inline' data:; img-src 'self' data:; style-src 'self' 'unsafe-inline' data:; script-src 'unsafe-eval' 'unsafe-inline' data:; default-src 'self' localhost:*"> 我在 body 标签内有一个本地 JavaScript 文件引用: <script src="js/video.min.js"></script> 以及标题标记中的本地样式表文件引用: <link href="css/video-js.css" rel="stylesheet" /> 但是,我的浏览器出现以下错误,拒绝从 CSS 文件加载脚本或字体。 拒绝加载脚本“https://localhost:44356/js/video.min.js”,因为它违反了以下内容安全策略指令:“script-src 'unsafe-eval' 'unsafe-inline' data:” 。请注意,“script-src-elem”未明确设置,因此“script-src”用作后备。 2testvideo.html:1 拒绝加载字体 'data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAABDkAAsAAAAAG6gAAQAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADsAAABUIIslek9TLzIAAAFEAAAAPgAAAFZRiV3hY21hcAAAAYQAAADaAAADPv749/pnbH lmAAACYAAAC3AAABHQZg6OcWhlYWQAAA3QAAAAKwAAADYZw251aGhlYQAADfwAAAAdAAAAJA+RCLFobXR4AAAOHAAAABBMAAACM744AAGxvY2EAAA4wAAAASAAAAEhF6kqubWF4cAAADngAAAAfAAAAIAE0AIFuYW1lAAAOMmAAAASUAAAIK1cf1oHBvc3QAAA/AAAAB JAAAAdPExYUNeJxjYGRgYOBiMGCwY2BycfMJYeDLSSzJY5BiYGGAAJA8MpsxJzM9kYEDxgPKsYBpDiBmg4gCACY7BUgAeJxjYGS7wTiBgZWBgaWQ5RkDA8MvCM0...2DDXbYkhKc+V0Bqs5Zt9JM1HQGBRTm/Eez TmZNKtpCAMs9Yu6AK9caF76zoLWIWcfMGOSkVduvSWechqZsz040Ib2PY3urxBJTzriT95lipz+TN1fmAAAAeJxtkMl2wjAMRfOAhABlKm2h80C3+ajgCKKDY6cegP59TYBzukAL+z1Zsq8ctaJTTKPrsUQLbXQQI 0EXKXroY4AbDDHCGBNMCYsZ7nCPB8yxwCOe8IwXvOIN7/ jAJ76wxHfUqWX+OzgumWAjJMV17i0Ndlr6irLKO+qftdT7i6y4uFSUvCknay+lFYZIZaQcmfH/xIFdYn98bqhra1aKTM/6lWMnyaYirx1rFUQZFBkb2zJUtoXeJCeg0WnLtHeSFc3OtrnozNw qi0TkSpBMDB1nSde5oJXW23hTS2/T0LilglXX7dmFVxLnq5U0vYATHFk3zX3BOisoQHNDFDeZnqKDy9hRNawN7Vh727hFzcJ5c8TILrKZfH7tIPxAFP0BpLeJPA==',因为它违反了以下内容安全策略指令:“font-src *”。 据我所知,第一个脚本没有违反内容安全策略,并且在我能找到的任何地方都没有任何描述“script-src-elem”的文档(这可能是一个线索)。 就 CSS 中的字体而言,浏览器中似乎存在一个错误,因为没有看起来像“font-src *”的 CSP 指令 - 所以,浏览器以某种方式覆盖了这个 CSP(或者它只是一个错误) )。 不管怎样,我一直在尝试各种组合(例如,我不能将“self”放入 script-src 中,否则会出现更多错误)。没有任何意义! 这是完整的 HTML: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta http-equiv="Content-Security-Policy" content="font-src 'self' 'unsafe-inline' data:; img-src 'self' data:; style-src 'self' 'unsafe-inline' data:; script-src 'unsafe-eval' 'unsafe-inline' data:; default-src 'self' localhost:*"> <title></title> <link href="css/video-js.css" rel="stylesheet" /> </head> <body> <video id='my-video' class='video-js' controls preload='auto' width='640' height='360' poster='/videos/Factory_Clearance30_03_16.jpg' data-setup='{}'> <source src="/videos/Factory_Clearance30_03_16.webm" type="video/webm"> <source src="/videos/Factory_Clearance30_03_16.ogv" type="video/ogg"> <source src="/videos/Factory_Clearance30_03_16.mp4" type="video/mp4"> </video> <script src="js/video.min.js"></script> </body> </html> 第一个脚本不违反内容安全策略 政策说: script-src 'unsafe-eval' 'unsafe-inline' data:; 您使用以下命令加载脚本: <script src="js/video.min.js"></script> 那么,让我们依次检查一下: 是unsafe-eval吗?不,您没有使用 eval() 或类似的东西来加载脚本。这是一个 src 属性。 是unsafe-inline吗?不,它不是内联的;这是一个 src 属性。 是data:吗?不可以。它是相对 URL,不能相对于 data: schema URL。您可能正在使用 http:。 所以它肯定确实违反了CSP。 您可能想将 'self' 添加到允许的来源。 就 CSS 中的字体而言,浏览器中似乎存在一个错误,因为没有看起来像“font-src *”的 CSP 指令 - 所以,浏览器以某种方式覆盖了这个 CSP(或者它只是一个错误) ). 对此最可能的解释是,您通过 HTTP 标头 和 <meta> 提供 CSP,并且 HTTP 标头具有优先级(因为规范要求这样做)。
我正在尝试将哈希与我的内容安全策略一起使用...... 以下是我的控制台中的两个示例错误: 拒绝执行内联脚本,因为它违反了以下内容安全策略
我有一个静态网站,因此我将我的 CSP 插入到网站标题块顶部的元标记中: 我有一个静态网站,因此我将 CSP 插入网站 meta 块顶部的 head 标签中: <meta http-equiv="Content-Security-Policy" content="base-uri 'self'; default-src 'none'; img-src 'self'; font-src https://fonts.gstatic.com; manifest-src 'self'; style-src 'self' https://fonts.googleapis.com; script-src 'self'; style-src-elem 'unsafe-inline';> 假设我的网站是example.com,我在控制台中收到以下错误: Refused to load the stylesheet 'https://example.com/main.css' because it violates the following Content Security Policy directive: "style-src-elem 'unsafe-inline'". 如果我从 CSP 中删除 style-src-elem 'unsafe-inline',我就可以很好地加载我的 CSS 文件(但我收到了一个不同的错误,即未加载包含 React 似乎生成的代码的 script 标签)。我不确定为什么 CSP 规则 style-src 'self' https://fonts.googleapis.com 和 style-src-elem 'unsafe-inline' 似乎相互冲突。 我知道使用unsafe-inline并不理想,但对于没有用户交互的静态网站,我相信它很好。 当浏览器实现了对 style-src 的支持时,style-src-elem 优先于 style-src。当您仅将“unsafe-inline”定义为唯一源时,仅允许内联脚本,您无法从任何位置加载文件。当您删除 style-src-elem 时,它会回退到 style-src ,它允许从“self”(同源)加载。脚本文件问题没有足够的细节来评论。
我通过 MVC5(MVC、WebAPI、无身份验证、未配置 HTTPS 或 Docker)创建了一个新的 Web 项目,目标框架为 4.6.1。我没有进行任何更改或修改。 我运行网络...
第 1 步:将 Bootstrap 4 的 SHA-384 完整性列出的 css 文件的原始副本下载到本地 Web 项目: https://getbootstrap.com/docs/4.0/getting-started/download/ 截至撰写本文时,他们已经有了自己的
Vite + Vue 3 构建项目内容安全策略错误(CSP)'script-src“self”',因为构建文件中存在新的 Function 构造函数
我添加了 CSP 标头 'Content-Security-Policy': "script-src 'self'",构建项目,然后出现错误: 拒绝将字符串评估为 JavaScript,因为不允许使用“unsafe-eval”...
Firebase 实时数据库内容安全策略错误 - script-src 'self' 'wasm-unsafe-eval' 'inline-speculation-rules'
我有一个使用 Firebase 实时数据库和身份验证的 Chrome 扩展。在chrome扩展中,一个用户有多个配置文件,这些配置文件存储在实时数据库中。我...
作为第三方审计的一部分,我公司的 Rails 应用程序被发现没有为默认 404.html 页面(或任何其他默认静态页面)提供内容安全策略 (CSP) 标头
为了实现内容安全策略,我需要将随机数传递给GTM以允许标签。 使用 GTM 代码片段的随机数感知版本适用于除自定义 HTML 之外的所有标记类型。 有没有办法...
目前情况: 我有一个在默认端口 1337 上运行的 Strapi 实例。DNS 已正确设置,可以将流量从 cms.mysite.com 导航到服务器的公共 IP 地址和 IIS 网站...