您现在的位置是:网络安全 >>正文
Web安全之Content Security Policy(CSP 内容安全策略)详解
网络安全29人已围观
简介什么是Content Security PolicyCSP)Content Security Policy是一种网页安全策略,现代浏览器使用它来增强网页的安全性。可以通过Content Securit ...

什么是安安全Content Security Policy(CSP)
Content Security Policy是一种网页安全策略,现代浏览器使用它来增强网页的内容安全性 。可以通过Content Security Policy来限制哪些资源(如JavaScript、策略CSS 、详解图像等)可以被加载 ,安安全从哪些url加载 。内容
CSP 本质上是策略白名单机制,开发者明确告诉浏览器哪些外部资源可以加载和执行 ,服务器租用详解可以从哪些url加载资源。安安全
CSP最初被设计用来减少跨站点脚本攻击(XSS),内容该规范的策略后续版本还可以防止其他形式的攻击 ,如点击劫持。详解
启用CSP的安安全两种方法
启用CSP的方法有两种,第一种是内容通过设置一个HTTP响应头(HTTP response header) “Content-Security-Policy” ,模板下载第二种是策略通过HTML标签<meta>设置 ,例如:
复制<meta http-equiv="Content-Security-Policy" content="script-src self; object-src none">1.除了Content-Security-Policy外 ,还有一个Content-Security-Policy-Report-Only字段,表示不执行限制选项,只是记录违反限制的行为,必须与report-uri值选项配合使用,例如 :
复制Content-Security-Policy-Report-Only: default-src self; report-uri /some-report-uri;1.CSP指令介绍
Content-Security-Policy值由一个或多个指令组成 ,多个指令用分号分隔。免费模板
csp资源加载项限制指令如下 : 复制script-src:外部脚本style-src:样式文件img-src:图片文件media-src :媒体文件(音频和视频)font-src:字体文件object-src :插件(比如 Flash)child-src :框架frame-ancestors:嵌入的外部资源(比如<frame> 、<iframe>、<embed>和<applet>)connect-src:HTTP 连接(通过 XHR 、WebSockets、EventSource等)worker-src :worker脚本manifest-src:manifest 文件default-src:用来设置上面各个选项的默认值。1.2.3.4.5.6.7.8.9.10.11.12.上述指令对应的值如下 :
Source Value
Example
Description
*img-src
*Wildcard, allows any URL except data: blob: filesystem: schemes.
none
object-src none
Prevents loading resources from any source.
self
script-src self
Allows loading resources from the same origin (same scheme, host and port).
data:
img-src self data:
Allows loading resources via the data scheme (eg Base64 encoded images).
domain.example.com
img-src domain.example.com
Allows loading resources from the specified domain name.
*.example.com
img-src *.example.com
Allows loading resources from any subdomain under example.com.
https://cdn.com
img-src https://cdn.com
Allows loading resources only over HTTPS matching the given domain.
https:
img-src https:
Allows loading resources only over HTTPS on any domain.
unsafe-inline
script-src unsafe-inline
Allows use of inline source elements such as style attribute, onclick, or script tag bodies (depends on the context of the source it is applied to) and javascript: URIs
unsafe-eval
script-src unsafe-eval
Allows unsafe dynamic code evaluation such as JavaScript eval()
sha256-
script-src sha256-xyz...
Allows an inline script or CSS to execute if its hash matches the specified hash in the header. Currently supports SHA256, SHA384 or SHA512. CSP Level 2
nonce-
script-src nonce-rAnd0m
Allows an inline script or CSS to execute if the script (eg: <script nonce="rAnd0m">) tag contains a nonce attribute matching the nonce specifed in the CSP header. The nonce should be a secure random string, and should not be reused. CSP Level 2
strict-dynamic
script-src strict-dynamic
Enables an allowed script to load additional scripts via non-"parser-inserted" script elements (for example document.createElement(script); is allowed). CSP Level 3
unsafe-hashes
script-src unsafe-hashes sha256-abc...
Allows you to enable scripts in event handlers (eg onclick). Does not apply to javascript: or inline <script> CSP Level 3
CSP URL限制指令如下:复制frame-ancestors:限制嵌入框架的网页
base-uri:限制
form-action:限制<form#action>1.2.3. CSP其它限制指令如下:复制block-all-mixed-content :HTTPS 网页不得加载HTTP链接的资源
upgrade-insecure-requests:自动将网页加载的高防服务器外部资源的链接由HTTP改为HTTPS
plugin-types:限制可以使用的插件格式
sandbox :浏览器行为的限制 ,比如不能有弹出窗口等。1.2.3.4.小结
CSP对于保护Web应用程序的安全非常重要,可以帮助减少很多XSS类攻击 。需要注意的是 ,建站模板CSP只是一种安全策略 ,不能完全保证网站的安全性。因此,在使用CSP时,还需要结合其他安全措施 ,如使用HTTPS 、防火墙等 ,进一步提高网站的安全性。云计算
Tags:
转载:欢迎各位朋友分享到网络,但转载请说明文章出处“算法与编程”。http://www.bzli.cn/news/582c699411.html
相关文章
云原生安全架构设计最佳实践
网络安全云原生技术以其高效稳定、快速响应的特点不断驱动着企业的业务发展,已成为目前企业数字业务应用创新的核心动力。但与此同时,云原生环境中的各类安全风险也在日渐增加,越来越多的企业也开始探索云原生环境中的安全 ...
【网络安全】
阅读更多移动加密流量分类识别研究
网络安全引用随着移动网络的飞速发展,移动通信给人类社会带来了巨大的变革,一部手机几乎涵盖了人们日常生活的方方面面,如移动支付、网购、外卖、打车、导航等应用,这导致了移动业务流量的爆发式增长,所以在过去的几十年 ...
【网络安全】
阅读更多网络攻击者和防御者利用AI的攻防战愈演愈烈
网络安全AI的强大和快速发展正在迅速改变网络安全格局,给网络安全捍卫者带来机遇和挑战。随着ChatGPT等流行的AI工具以及最近更强大的GenAI系统成为数字生态系统的中流砥柱,网络安全专业人员将越来越多地应 ...
【网络安全】
阅读更多