网站内容策略( 更多策略见CSPdirectives常见网站设置Integrity)

优采云 发布时间: 2022-04-20 11:34

  网站内容策略(

更多策略见CSPdirectives常见网站设置Integrity)

  

  此外,还可以使用元素来配置策略,例如

  策略

  "Content-Security-Policy":策略字符串

  资源限制可以是img、字体、样式、框架等。

  默认源

  Content-Security-Policy: default-src 'self'

  网站管理员希望站点的所有内容来自同一来源(不包括其子域),详细信息 Content-Security-Policy/default-src

  媒体-src、img-src、脚本-src

  Content-Security-Policy: default-src 'self'; img-src *; media-src media1.com media2.com; script-src userscripts.example.com

  这里,默认只允许来自文档所在源的各种内容,但以下情况除外:

  '不安全评估'

  允许使用 eval() 和类似函数从字符串创建代码。需要单引号。

  有关更多政策,请参阅 CSP 指令

  常用网站设置

  

  子资源完整性

  子资源完整性 (SRI) 是一项安全功能,允许浏览器检查他们获得的资源(例如,从 CDN 获得的资源)是否未被篡改。它通过验证获取的文件的hash值与你提供的hash值是否相同来判断资源是否被篡改。

  很多时候,我们使用 CDN 在多个站点之间共享脚本和样式,以提高网站性能并节省带宽。但也存在风险,如果攻击者获得了 CDN 的控制权,他可以恶意向 CDN 文件中注入任意内容,从而攻击加载 CDN 资源的站点。因此,需要 SRI 来确保 Web 应用程序获取的文件没有被第三方注入或以其他方式修改,以降低被攻击的风险。

  SRI的原理

  通过base64编码写入文件内容的hash值,写入被引用的>

  内容安全策略和子资源完整性

  您可以根据内容安全策略 (CSP) 配置您的服务器,以使指定类型的文件符合 SRI。这是通过将 require-sri-for 指令添加到 CSP 标头来实现的:

  Content-Security-Policy: require-sri-for script;

  该指令指定所有 JavaScript 必须具有完整性属性并通过验证才能加载。

  所以,只要文件发生变化,浏览器就不会执行,有效避免了脚本攻击。

  参考链接

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线