之前提交的三个漏洞已经耗尽我的毕生所学了,该测试的功能点基本都测试完了,本来以为这个网站到此为止了
突然想到第一个漏洞的文件上传是不是还有其他花样,路径为:/api/file/upload,随便上传一个头像,返回路径
/202605/avatar/423484/xxxx.jpg
发现会重命名我的文件,但是没有做后缀检测,本来以为是一个上传webshell的好机会,发现上传的位置为该网站的一个cf r2的bucket上,这他妈就很尴尬了
文件能够上传,但是没有办法解析,webshell没用,又想到其实还有一个文件上传点,上传的是用户的百度网盘,路径为:
/api/user/storage/upload,但是这个有严格的后缀检测,上传不了php,jsp后缀的,并且上传路径是该网站的另一个cf 的bucket
但是好在第二个api没有修改我的文件名称,那么是不是可以通过文件名称进行xss,测试下来也不行,而且用户网盘只有自己能看到,其他用户触发不了这个xss
到这里好像尬住了,难道真的没有方法了吗,回到第一个api,不限制文件后缀,虽然无法通过网站解析, 但是我可以上传一个html,让用户的浏览器解析这个html
这里上传一个简单的xss弹窗的html,访问后确实弹窗了,验证了可行性。
搁么下一步就是做一个钓鱼网站咯,这里使用singlefile爬取主站的登录界面,然后在html内嵌js代码,当用户在我伪造的页面登录时,获取账户密码并且发送到我的服务器即可
简单写了一个页面上传测试一下,

点击登录后我的服务器接收到

还剩最后一步,如何让用户点击这个链接呢,简单的社会工程学,这个网站现在周年活动,比方说在群里发一句:
两周年庆典,登录领电量http://r2.xxxx.com/202605/avatar/xxxx.html
总会有猪鼻登录的,测试环节就算,当然我废了老鼻子劲也是因为上传的url是官方url,可信度比较高,搞一个类似域名的钓鱼网站其实效果是一样的。
总结一下这个漏洞:通过文件上传漏洞没有检验后缀,上传伪造的钓鱼网站html,当有人通过该网站登录时,通过js将用户账户密码发送到我的服务器,从而窃取该用户信息。
