实战|记一次奇妙的文件上传getshell
2022-8-7 00:5:12 Author: 橘猫学安全(查看原文) 阅读量:19 收藏

正文

前几天在做公司的渗透测试项目时遇到的一个小程序,我发现了一个神奇的任意文件上传导致拿到了文件服务器的权限,怎么说呢,回想起来有点佩服自己当时的小脑袋。

  1. 首先打开小程序的时候,打开后通过Burp看到它服务器的地址是https://xxxx.com/xxxx,在数据包中夹杂着一个暂时未知的URL,URL是这样子的https://file.xxxx.com/getMsgById?Id=,当时看响应体是空白的,就先把这个请求发送到Burp的repeater模块中记录下,看看能不能在小程序的功能点上找到类似的Id值。

  2. 尝试按照小程序提供的功能走一遍。从功能上看应该是拍卖车牌的,我提供一个车牌号,之后进入了下一步,页面提供了扫描驾驶证获取车牌的的功能。

  3. 于是我先上传了一张正常的图片上去,返回包返回了一个imgId,突发奇想就将这个imgId拼接到第一步的URL中,打开浏览器中打开是这样的。

  4. 感觉有戏,我尝试将数据包发送到Burp的repeater模块中修改文件后缀为html,并将文件内容修改为了xss代码,上传成功,且有返回新的imgId,将这个imgId拼接到第一步的URL中,打开浏览器成功触发XSS。

  5. 抱着试一试的心态,再将文件后缀修改为jsp,文件内容修改为了cmd马后重放,也没问题,返回了新的imgId,将这个imgId拼接到第一步的URL中,打开浏览器jsp脚本居然真的解析成功了。

  6. 由于仅仅是普通的渗透测试,就不能深入了,开开心心编写报告等待下班。

总结

虽然响应中仅仅返回了一个imgId值,但也是上传成功的一种表现,程序将imgId与文件的物理路径通过数据库的形式存储下来,再通过getMsgById?这个路由去读取和执行。果然挖洞要细心,不要认为开发不会这么写程序,就不去进行尝试。现在想想电视剧里说的那些话”想要练成神功,必须废掉以前的所有武功”,细品还是很有道理的。


作者:木已成舟,文章来源于https://opensource-sec.com/

如有侵权,请联系删除

推荐阅读

XSS 实战思路总结

内网信息收集总结

xss攻击、绕过最全总结

一些webshell免杀的技巧

命令执行写webshell总结

SQL手工注入总结 必须收藏

后台getshell常用技巧总结

web渗透之发现内网有大鱼

蚁剑特征性信息修改简单过WAF

查看更多精彩内容,还请关注橘猫学安全:

每日坚持学习与分享,觉得文章对你有帮助可在底部给点个“再看


文章来源: http://mp.weixin.qq.com/s?__biz=Mzg5OTY2NjUxMw==&mid=2247495718&idx=1&sn=e25bcb693e5a50988f4a7ccd4552c2e2&chksm=c04d7718f73afe0e282c778af8587446ff48cd88422701126b0b21fa7f5027c3cde89e0c3d6d#rd
如有侵权请联系:admin#unsafe.sh