记一次组合拳渗透测试
0x00 前言
在近段时间的实战中,遇到一个使用多漏洞组合方式获取目标系统权限的环境。通过sql注入,账号密码爆破,任意文件下载,文件上传等多个漏洞获取webshell。
0x01 web打点
给到目标后,还是先进行信息收集,队友发现目标使用了jeeplus框架,并且发现该系统存在通用漏洞sql注入漏洞,该漏洞点存在于登录界面的mobile参数。
注入为mysql数据库,并且是dbs权限,通过注入点的报错信息获取绝对路径,尝试使用os-shell获取权限,未成功。
在注入无果后,发现了系统采用了shiro框架,使用shiro工具进行验证,同样未成功。
注入和命令执行都噶了,还是要登录后台找找上传进行尝试,通过注入跑了下账号信息,获取了账号密码信息。后发现jeeplus的密码为魔改的加密算法不可逆,只能获得账户名,又噶住了。
想起了网上大佬jeeplus的漏洞复现文章,发现jeeplus使用了2个熟悉的组件druid和fastjson。看了大佬的文章知道了druid可以监控DB池连接和sql执行情况。访问/druid/目录即可看到控制台信息,并且控制台可以看到session信息,并且通过session信息可登录系统,赶紧去尝试了一下。"嗯,确实存在控制台,但我的session信息呢?"
又白给了一波后,队友还是准备尝试最稳妥的方式通过注入获取的账号,锁定密码,爆破用户名,尝试是否可以进入系统。
运气很好先锁定的123456就爆破出了账号,感觉shell已经在招手了。登录系统直接访问/a/sys/file寻找通用文件上传漏洞,发现该漏洞点已经404了。
寻找系统其他上传点,发现系统上传头像处和公告信息处存在上传点,进行测试后发现系统没有对后缀进行过滤,但是文件上传后只能进行下载,不进行解析。
就在要放弃的时候突然发现在上传数据包中,存在一个路径参数。
在删除原先的路径后依旧上传了文件,并且原先的路径去除了删除的路径。
尝试使用../看是否能让文件存在上一级目录中,发现文件确实进行上传,并且存放在了上一级目录。这个目录跨越又让人看到了希望。既然目前的目录直接下载文件不进行解析,那只要上传到web目录下说不定就可以进行解析。从文件上传处获取的路径和注入爆出的web目录不是一个目录。尝试将文件上传到web目录下。
系统在/a/sys/file/download/处存在任意文件下载漏洞,我们通过此漏洞判断文件是否上传成功。
根据注入路径进行上传,成功目录跨越进行webshell上传,获取目标系统目标系统权限。
E
N
D
微信扫码关注该文公众号作者