实战 | 一处XSS的绕过思路
2022-10-18 08:32:6 Author: 菜鸟学信安(查看原文) 阅读量:37 收藏

疫情影响,过年放假呆在家里实在无聊,上去某平台看了下众测项目,想着挣点口罩钱

一开始尝试直接去闭合<a>标签,发现 "> 输出时会被实体化编码,遂放弃

因为输出是在<a>标签的 href 里面,所以去尝试伪协议,payload如下:

javascript:alert(document.domain)

提交后发现,输出的内容直接过滤掉了 javascript:

经过几次尝试,通过以下payload绕过了过滤,成功弹窗

javas&Tab;cript:alert(1)

不过一个小破弹窗怎么能证明危害

直接用了xsshunter的payload,提交点击后,发现执行不能成功

仔细对比下输出的内容和原始内容才发现,输出时所有的字符都强制转换小写了

这里先了解下xss中的 编码问题,eval中支持Unicode编码,最终构造的payload把大写的字母单独编码下即可

最终效果:

本来以为好歹能混个中危,结果厂商认为这个点需要点击交互,给了低危。

申诉:评级的时候看下功能点,毕竟本来就是需要点击的业务功能。

厂商反馈:经过讨论,恶意链接为javascript开头利用难度较高,故维持评级低危。

作者:se7en,来源见阅读原文

如有侵权,请联系删除

关注公众号后台回复数字 1126 获取 应急响应实战笔记,1127 - ctf工具集合,1230 - 内网工具,3924 - 弱口令爆破工具。


文章来源: http://mp.weixin.qq.com/s?__biz=MzU2NzY5MzI5Ng==&mid=2247492865&idx=1&sn=7eb85b4415ecb780d704de350de42a00&chksm=fc9bff9ecbec7688959906a90cc54ad0d26c5b4198b6f7884d6e4ec5591187410ce3a2654cd3#rd
如有侵权请联系:admin#unsafe.sh