存储型XSS的发现经历和一点绕过思路
2019-09-02 10:00:37 Author: www.freebuf.com(查看原文) 阅读量:138 收藏

某SRC提现额度竟然最低是两千,而已经有750的我不甘心呐,这不得把这2000拿出来嘛。

之后我就疯狂的挖这个站,偶然发现了一个之前没挖出来的点,还有个存储型XSS!

刚开始来到这个之前挖过但没挖出来的站,看了一下感觉这站没啥东西了啊,然后来到评论区又一次测试了一下

先简单测试一下

心态:随意吧

<img src=0>

结果是一空的,啥也没有

普通的没用肯定是过滤了,想着直接抓包测试吧更快些

抓包后发现编码过

编码后:

%3Cimg+src%3D%22javascript%3Aalert('XSS')%22%3E

编码前:

<img src="javascript:alert('XSS')">

有个javascript肯定是会拦截的,毕竟是大厂嘛

然后直接手打吧,去掉javascript

空格用+来表示吧 

<img+src=0>

虽然是空的,但是发现源码中是存在img的但是被转义了,还是有些转机的\^_^

心态:有点小郁闷

来尝试绕过转义

%00 代替空格

<img%00src=0%00>

继续绕过

<img#src=0>

再来!

<img\/src=0>

有转机啊!可以看到 / 被转移成空格了

心态:兴奋

直接上 

<img/src=0/onerror=alert(/xss/)>

可惜,被拦截了,应该是关键字alert接触()就拦截,onerror接触=就拦截

绕过一下,加空格和 %00 会被转义,试着用 / 来空格,alert 用 top['alert']来代替

但是!不顶用啊

心态:失落

用过 /**/ %00 大小写 eval 等 常用的都被干掉了,结束了?!

这不一定要用 <img> 啊,来试试 

<iframe>

心态:!!!柳暗花明又一村

接下来直接上吧,script标签肯定用不了了

试试 

<iframe/src=vbscript:msgbox(123)></iframe>

能写进去但是好像执行不了,继续绕

心态:坚持,执着,绞尽脑汁

试了各种绕的方法,突然想到 明着不行,那就来暗的

明码不行,那就试试base64编码后的看看它会拦截不

<script>alert(/xss/)</script>

 编码一下

来直接上

Payload <iframe/src=data:text/html;base64,PHNjcmlwdD5hbGVydCgveHNzLyk8L3NjcmlwdD4=></iframe>

完美大功告成!!这个套路我在这个站足足挖到3个存储XSS,还是很开心的!^_^

我还是个萌新,初来乍到,大表哥们多多关照!第一次写,有很多不完善,勿喷 ^_^

*本文原创作者:r0ckysec,本文属于FreeBu原创奖励计划,未经许可禁止转载


文章来源: https://www.freebuf.com/articles/web/212022.html
如有侵权请联系:admin#unsafe.sh