本文介绍的是W3C的Content Security Policy,简称CSP。望文生义,这个规范与内容安全有关,首要是用来界说页面能够加载哪些资源,削减XSS的发作。
Chrome扩展现已引进了CSP,经过manifest.json中的content_security_policy字段来界说。一些现代浏览器也支撑经过呼应头来界说CSP。下面咱们首要介绍怎么经过呼应头来运用CSP,Chrome扩展中CSP的运用能够参阅Chrome官方文档。
前期的Chrome是经过X-WebKit-CSP呼应头来支撑CSP的,而firefox和IE则支撑X-Content-Security-Policy,Chrome25和Firefox23开端支撑规范的的Content-Security-Policy,见下表。
呼应头 Chrome Firefox Safari IE Content-Security-Policy 25+ 23+ - - X-Content-Security-Policy - 4.0+ - 10.0(有限的) X-Webkit-CSP 14+ - 6+ -完好的浏览器CSP支撑状况请移步CanIUse。
要运用CSP,只需要服务端输出相似这样的呼应头就行了:
Content-Security-Policy: default-src 'self'
default-src是CSP指令,多个指令之间用英文分号切割;'self'是指令值,多个指令值用英文空格切割。现在,有这些CSP指令:
指令 指令值示例 阐明 default-src 'self' cnd. *** 界说针对一切类型(js、image、css、web font,ajax恳求,iframe,多媒体等)资源的默许加载战略,某类型资源假如没有独自界说战略,就运用默许的。 script-src 'self' js. *** 界说针对JavaScript的加载战略。 style-src 'self' css. *** 界说针对款式的加载战略。 img-src 'self' img. *** 界说针对图片的加载战略。 connect-src 'self' 针对Ajax、WebSocket等恳求的加载战略。不答应的状况下,浏览器会模仿一个状况为400的呼应。 font-src font. *** 针对Web Font的加载战略。 object-src 'self' 针对<object>、<embed>或<applet>等标签引进的flash等插件的加载战略。 media-src media. *** 针对<audio>或<video>等标签引进的html多媒体的加载战略。 frame-src 'self' 针对frame的加载战略。 sandbox allow-forms 对恳求的资源启用sandbox(相似于iframe的sandbox特点)。 report-uri /report-uri 告知浏览器假如恳求的资源不被战略答应时,往哪个地址提交日志信息。 特别的:假如想让浏览器只报告日志,不阻挠任何内容,能够改用Content-Security-Policy-Report-Only头。指令值能够由下面这些内容组成:
指令值 指令示例 阐明 img-src 答应任何内容。 'none' img-src 'none' 不答应任何内容。 'self' img-src 'self' 答应来自相同来历的内容(相同的协议、域名和端口)。 data img-src data 答应data:协议(如base64编码的图片)。 www. *** img-src img. *** 答应加载指定域名的资源。 *. *** img-src *. *** 答应加载 *** 任何子域的资源。 https://img.com img-src https://img.com 答应加载img.com的https资源(协议需匹配)。 https: img-src https: 答应加载https资源。 'unsafe-inline' script-src 'unsafe-inline' 答应加载inline资源(例如常见的style特点,onclick,inline js和inline css等等)。 'unsafe-eval' script-src 'unsafe-eval' 答应加载动态js代码,例如eval()。[1] [2] 黑客接单网
在HTML5中 标签参加了一个新的特点ping。规划者参加它的理由是, Ping能够使浏览器对外发送一个异步恳求,一般用来广告的追寻、点击率计算或完结一次HTTP重定向。 可是听到监督、追寻这个词,...
原本想用python DRF 的 JWT做,后来各种失利。终究尝试了用Php,发现十分便当。 PHP 版别 PHP 7.2.4-1+b2 (cli),也便是kali linux自带的php,至于com...
一、前语 在MySQL 5.7.5之前的所有主版别存在一个BUG,该或许导致影响POC/EXP需求从头编写或批改的问题。 BUG信息链接: https://bugs.mysql.com/bug.ph...
前语 前次的那篇文章《一名代码审计新手的实战阅历与感悟》得到了不少读者的支撑,也得到了FreeBuf这个渠道的必定,这给了我这个菜的不能再菜的小菜鸟很大的决心。可是,不足之处仍是许多,比方文章中呈现的...
这个Ruby结构包括一些能够浸透测验WordPress网站和体系的模块,用户也能够自己开发模块扩展其功用。 运转它需求什么条件? 保证体系上装置了Ruby 2.2.x,翻开一个指令行窗口,切换当时目录...
现在,咱们绝大多数人都会在网上购物买东西。可是许多人都不清楚的是,许多电商网站会存在安全缝隙。比方乌云就通报过,国内许多家公司的网站都存在 CSRF 缝隙。假如某个网站存在这种安全缝隙的话,那么咱们...