vulnhub >_ pwnlab_init
Published on 09 Nov 2020
pwnlab_init
login测试sql绕过失败,upload需要登录后使用,config页面空白
查看代码,发现应该可以使用php过滤器查看页面后台代码
查看login
登录使用了config,查看config页面代码
得到数据库凭证
root:H4u%QJ_H99
登录数据库
分别用base64解密
kent:Sld6WHVCSkpOeQ==:JWzXuBJJNy
mike:U0lmZHNURW42SQ==:SIfdsTEn6I
kane:aVN2NVltMkdSbw==:iSv5Ym2GRo
随便使用一个账户登录
进入upload
使用之前同样的方法查看upload源码
发现upload会审查图片格式后缀,然后修改文件名并上传到upload文件夹下。
制作rshell
上传
查看upload
但是在upload文件夹下,文件并不能被执行。
这应该是个兔子洞,这种形式的图片显示通常不能得到shell
继续查看其他页面后台代码。
在查看index的后台代码时发现,对cookie的处理是存在包含的。应该可以提供一个LFI给我们
尝试验证,重新浏览主页抓包修改cookie,使用lang参数尝试包含passwd。成功执行。
现在我们可以包含我们之前上传的gif php-rshell文件了
在kali本地1337端口建立监听,复制之前图片的地址,替换并发包
进入home文件夹后发现
除了之前得到凭证的三个用户外存在新用户john
使用之前得到的三个凭证分别切换用户,搜集信息。
kent目录下没有什么有用的信息
mike不能切换
而kane用户目录下存在一个可以以mike身份执行的suid可执行文件,相信它可以帮助我们切换到mike的身份
在执行后发现应该是调用了cat命令,这种方式可以简单的通过伪造环境变量来欺骗程序
首先伪造cat
然后修改环境变量,并执行程序
用户目录下
看样子调用了echo
并且我们可以输入。
尝试命令注入
存在。现在我们只需要直接拉起shell。
忘了伪造了cat。。LOL