内容安全策略(CSP)旨在通过为开发人员提供对允许加载页面的资源以及允许执行的脚本的细粒度控制来降低跨站点脚本攻击的风险。
已更新至 Firefox 115.15esr - ChatGPT 和 DALL-E 不再工作
最近更新至 Firefox 115.15 esr,无法再使用 Firefox 访问 ChatGPT 或 DALL-E。使用 Edge 或 Chrome 等其他浏览器时未报告任何问题。检查 Firefox 中的控制台,有
我有一个使用 Bootstrap 5 的网站,其中包含以下输入标签: 我有一个使用 Bootstrap 5 的网站,其中包含以下输入标签: <input class="form-check-input ms-1" id="validated" name="validated" type="checkbox" checked> 包含 form-check-input 类会导致客户端生成错误消息: 拒绝加载图像'data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath 填充='无' 描边='%23fff' 描边-linecap='圆形' 笔画线连接='圆形' 笔画宽度='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e',因为它违反了以下内容 安全策略指令:“img-src 'self' www.w3.org”。 有人可以告诉我为什么这个被阻止吗? 我已经尝试了 CSP 中 data://www.w3.org、http://www.w3.org、*.w3.org 等的所有排列,但似乎没有一个能让客户满意。 Chrome 和 Edge 客户端的情况相同。 Bootstrap CSS 样式表 包含 .form-check-input 类,其中包含数据:-Url 图像: .form-check-input:checked[type=checkbox] { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e"); } .form-check-input:checked[type=radio] { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e"); } .form-check-input[type=checkbox]:indeterminate { background-color: #0d6efd; border-color: #0d6efd; background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e"); } 要允许这些图像,您必须将 data: 方案源添加到 img-src 指令中。 您还可以使用 Webpack 将 SVG 提取到单独的文件中。 例如,请参阅官方文档https://getbootstrap.com/docs/5.2/getting-started/webpack/#extracting-svg-files modules.exports = { ..., module: { rules: [ { mimetype: 'image/svg+xml', scheme: 'data', type: 'asset/resource', generator: { filename: 'icons/[hash].svg' } } ] } }; 我不建议将 data: 添加到 img-src,因为这可能会降低 CSP 的安全性。 相反,我建议你 从官方页面下载图标的SVG 然后编辑 CSS 文件并将 url("data:image/svg+xml ..."); 替换为 url("/path/to/static/files/the-icon.svg") 这假设 CSP 允许 img-src 'self'。
经过渗透测试,他们发现 Web 服务器不提供 Content-Security-Policy 标头 带有属于 4xx 类且在 HTTP 上的状态代码的 HTTP 响应 回复状态为 c...
我使用 angular-cli 创建了一个 Angular 项目,但是当我使用 npm 启动 它正在显示 拒绝加载字体 'data:font/woff;base64,
寻求在 Angular 18 中为 Angular Web 组件/自定义元素设置 ngCSPNonce 或 CSP_NONCE 的方法?
我编写了一个 Angular 自定义元素,如下所示 customElements.define('my-comp', createCustomElement(BasicComponent, config)); 并将在使用 npm run build-elemen 构建后提供为 js 文件...
我正在使用清单V3编写一个chrome扩展供我自己使用,以便更轻松地在两个站点之间移植信息。当我尝试使用 click() 事件单击网站网页的某个元素时
我有以下 svg 图像: 披露苏格兰 主图 我有以下 svg 图像: <svg viewBox="0 0 679.26666 170.12"><title id="title">Disclosure Scotland</title> <desc id="descA">Main Image</desc><defs id="defs6"></defs><g transform="matrix(1.3333333,0,0,-1.3333333,0,170.12)" id="g10"> <g transform="scale(0.1)" id="g12"> <path id="path14" style="fill:#354a8e;fill-opacity:1;fill-rule:nonzero;stroke:none" d="L 4424.6,237.121"> </path> </g> </svg> 它具有内联样式,内容安全策略抱怨以下警告: 拒绝应用内联样式,因为它违反了以下规定 内容安全策略指令:“style-src 'self'”。要么是 'unsafe-inline' 关键字,哈希值 ('sha256-n9prShQTue5kpNbWK2Rpxv1agUjurIm2Wkpn0y7gOvU='),或随机数 需要 ('nonce-...') 才能启用内联执行。 10localhost/:13 拒绝应用内联样式,因为它违反了 以下内容安全策略指令:“style-src 'self'”。 要么是“unsafe-inline”关键字,要么是哈希值 ('sha256-hyCd2mGzJH6FFMa/YKxkUO5p7ntTtWZ4+813FvHVP5w='),或随机数 需要 ('nonce-...') 才能启用内联执行。 我可以通过如下配置 styleSrc 来消除该错误: app.use( helmet.contentSecurityPolicy({ directives: { defaultSrc: ["'self'"], styleSrc: ["'self'", "'unsafe-inline'"] } }) ); 我可以为 svg 配置内联样式吗? 解决这个问题最简单的方法是直接添加属性,而不是使用内联样式; <path id="path14" style="fill:#354a8e;fill-opacity:1;fill-rule:nonzero;stroke:none" d="L 4424.6,237.121"> 至: <path id="path14" fill="#354a8e" fill-opacity="1" fill-rule="nonzero" stroke="none" d="L 4424.6,237.121"> 不只是专门针对 SVG,不是。 CSP 不允许这种类型的精细控制。你能做的是: 1)使用 CSP 随机数 2)使用类或 ID(以及样式表中相应的 CSS) 3)使用JavaScript直接修改CSS https://stackoverflow.com/a/29089970/339440 折衷方案可能是允许内联样式属性,但不允许样式标签。 这可以通过 CSP 来完成,如下所示: style-src-elem: 'none'; style-src-attr: 'unsafe-inline'; 这样,更危险的 <style> 标签仍然会被阻止,但 style=... 属性是允许的。 主图
我已使用 NWebSec 将以下内容添加到我的 Blazor Interactive Server 应用程序中: app.UseHsts(options => options.MaxAge(天数: 30)); app.UseXContentTypeOptions(); app.UseXXssProtection(选项=>
是否可以编辑 IIS / web.config 设置的自定义 Content-Security-Policy 标头?
我想知道是否可以修改 web.config 中 下设置的 Content-Security-Policy 标头。 如果可能的话,我想注入一个随机数值。我现在...
Angular:inlineCritical 优化设置为 false 不会删除内联样式(严格的 CSP 所需)
我正在开发一个 Angular 14 项目,我需要遵守严格的内容安全策略 (CSP),其中包括指令“style-src 'self'”。这意味着我不能有任何内联-
我有一个网络应用程序,我想在具有不同域的网络应用程序的 iframe 中显示它。由于我添加了内容安全策略标头,我的应用程序拒绝在 iframe 中显示。我发现我需要...
Java/Javascript 中的 Eclipse Scout CSP
我需要有关在 Eclipse Scout 中动态加载 javascript 的帮助。 因此,我已经有一个从 index.ts 调用的 javascript,将 CSP 的脚本和元标记放在 head 部分中。 ...
无法从report-uri 检索csp-report 请求正文
我尝试遵循 mozilla 指南在 CSP-Report-Only 模式下设置 report-uri。我的客户服务提供商: 函数 add_csp_header() { 标头(“仅内容安全策略报告: 报告 uri...
头盔和 contentSecurityPolicy 并使用随机数并添加它但仍然出现错误
我正在使用 Helmet.contentSecurityPolicy,这是我的对象的要点: 我的脚本没有加载...... 该内容尚未加载,但您可以看到我将其包含在我的信任项目中; 未加载:这些是物品
我正在使用清单版本 3 构建 chrome 扩展。该扩展的全部要点是将外部动态脚本注入到页面中(例如,https://example.com/)。 我一直在接收...
CSP report-uri 和 report-to 在 WordPress 中不起作用
我尝试遵循 Mozilla 指南,在 CSP-Report-Only 模式下设置 report-to 和 report-uri。我的客户服务提供商: $csp = "报告到 csp-endpoint; 报告 uri ".get_bloginfo('url')."/csp-
浏览器内 PDF 中的 JavaScript 执行:安全处理此问题的最佳实践是什么?
我们目前正在开发类似文件服务器的实现,为用户上传的内容提供服务。为了规避 CSRF 攻击,我们为所有内容提供 CSP 标头,这不允许执行任何
由于 script-src blob 的 CSP 问题导致浏览器速度缓慢:
在我们的Web应用程序(Angular)中,我们需要相机来扫描二维码。然而,一段时间以来,我们发现了一个错误 无法构建“Worker”:访问“blob:https://somehi...”处的脚本
我遇到以下错误 拒绝执行内联脚本,因为它违反了以下内容安全策略指令:“script-src-elem 'self' 'strict-dynamic' https: 'unsafe-eval' blob:
内容安全策略:页面的设置阻止加载内联资源(“default-src”)。 NodeJS
我收到内容安全策略:页面的设置阻止了内联资源的加载(“default-src”)。当我尝试访问实时服务器上网站的登录部分时。 我把整个贴出来了...