首先是一个弱口令进去系统,没有什么好说的
找到上传路径
进入系统后,我们先找找上传,随便找到一个上传接口,上传后右击打开其他的一些图片,发现显示如下图所示,可以看到Image=xxxx,xxx部分像像base64,这种感觉看起来有点像使用image参数直接从数据库中或者本地文件直接读取出来,如果真的是这样就没法了。
但是我们回头又观察了一下上传文件的数据包,如下图所示,可以看到在上传成功后,是回显了/image/xxxx.jpg
这无疑是一个真实的物理路径。
RCE
那么看来,这应该不是从数据库中提取的图片呀,而是将文件名进行了一些处理,说不定有些规律可以找到对应真正的路径,于是我们直接将base64先解码,解码后再看看是咋么回事。
进行解码后,就是一个稍微不大完整的的jpg路径
发现base64解出来的图片居然和上传返回的图片路径几乎是一样的。
/Admin/Files.aspx?file=^$@%#!*&Image/2020040619010616432741.jpg
/Image/2020040619010616432741.jpg
那么有没有可能图片的路径就是
http://xxxx.com/Admin/Files/Image/2020040619010616432741.jpg
发现不行,把admin去掉,找到真正的路径。shell到手
接下来出现了一点问题 ,发现命令执行不了,什么命令都执行不了。
最后解决办法:
更换shell连接工具,更换了文件的上传目录(shell可以上传文件)
如冰蝎(高低版本都试一下如冰蝎2,冰蝎3.6-3.7)
哥斯拉(高低版本都试一下)
antsword(高低版本都试一下)
最后是用的低版本的冰蝎3.x命令执行成功了,最后也没仔细研究,感觉这个情况感觉是IIS的配置问题所导致的,也有可能是目录原因导致的。
当然也可能是其他的杀软拦截了命令执行,这个是属于另外一种情况,可以尝试BOF的命令执行。
原文始发于微信公众号(渗透测试网络安全):一个略有一丢丢曲折的上传Getshell
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论