一次任意文件下载引发的渗透
2022-7-12 08:50:47 Author: 李白你好(查看原文) 阅读量:14 收藏

免责声明
由于传播、利用本公众号李白你好所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号李白你好及作者不为承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!

文章来源:先知社区(dazhige 

原文地址:https://xz.aliyun.com/t/7837

0x01 起因

故事的开始,是一个老套的任意文件下载漏洞。

发现这个漏洞,自然要利用起来,读读文件。

一看这个的dbconn.asp,就是跟数据库连接有关的,于是读取一下:

连接密码啥的没直接写,不过略微思考就能想到:不写在这个文件里面,那就是写在了web.config里面了。然而直接读取根目录的web.config并没有,一番寻找之后发现在admin/web.config里面。

可惜不能直接连,扫了下端口发现就开了80。

0x02 继续寻找

没办法,读了几个文件发现这个系统参数都做了sql过滤,看了下过滤得还挺细,大概是将关键字像单引号、select啥的直接替换掉,想绕估计得找黑名单之外的关键字进行代替,有些麻烦,暂时先放这。
扫目录发现了fckeditor:

然而不能用,fckeditor目录下所有asp文件都不能执行。

这下也没别的办法了,只能找找上传点。
于是我根据目录扫描的结果继续读取后台的文件:

可以看到这个菜单文件,里面没有直接写出后台各个部分的路径。
试试直接访问:

找到源码中对应的部分,发现直接访问也获取不到,估计是没登陆的缘故(后面拿到账户密码证实了这一点)。
没有办法,扫目录没什么进展,而且直接读文件没有找到上传的地方或者其他可利用的点,卡在这里卡了好一会.

0x03 峰回路转

经过一番仔细地观察,我发现扫admin子目录的时候,有个report目录,直接访问是403的:

再看上上张图里面的html源代码,正好有个#report超链接。因此,可以大胆的猜测,会有/board、/sys这些与menu.asp这个菜单文件中的菜单同名的目录。

测试发现确实如此:

因为前台的/board目录有附件,所以后台对应应该有上传,于是去猜测/admin/board/这个目录下的文件,最后找到个news.asp,于是读取一下:

根据源码,一路跟踪到news_edit2.asp这个文件才发现上传表单,但是需要登陆:

0x03 终于突破

又迷茫了好一阵。。。
没办法继续找,常规的思维告诉我们,后台的系统设置什么的可能存在上传,比如上传logo什么的,于是我又跑去猜admin/sys目录下的文件:

好家伙,有个upload.asp(前面居然没扫出来。。。),访问:

然而难受的是点击上传之后会跳转到登陆。。。
就当我以为gg的时候,看了眼burp,发现是上传成功了,然后跳转的:

于是开始针对这个上传点,不过直接上传是不行的:

没关系,我们可以读源码:

好家伙,后缀控制得很死。

然而文件名可以钻空子,让我们看看文件名的构成:

ufp = upload.form("schyy")&upload.form("exid")&upload.form("idno") & upload.form("extend") &"."&upfilename(ubound(upfilename))

前面三个参数都是我们可控的,这样我们直接进行在前三个参数进行截断就行了:

这里我还跳转了一下目录,跳到上面一层去了,因为默认的那个目录,不管访问啥都是403:

好家伙,终于拿到了shell:

往期推荐

对某专属厂商的逻辑漏洞挖掘

大力出奇迹—从目录爆破到getshell

某医院管理系统Getshell

浅谈轰炸漏洞攻防思路



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