靶场来源:公众号:PTEHub,关注公众号:PTEHub 获取最新靶场资源
靶场类型:单局域网
信息收集
使用nmap进行扫描,获得如下信息
访问80端口查看一下web页面,有句提示,但没有发现什么有用信息
尝试扫描一下目录,发现2个文件,一个index.php主页面,一个filemanager.php文件
filemanager.php文件状态码是302,页面存在重定向
访问filemanager.php文件时跳转到主页面,推测访问filemanager.php文件时,缺少正确参数,尝试对参数进行爆破,得到正确参数"random"
burp抓包分析,使用正确参数访问/etc/passwd,可以正常访问文件,且得到3个用户可以登录
前面已得到正确的参数,既然也可以读取文件,那尝试使用伪协议读取filemanager.php文件源码,经过测试,想读取filemanager.php文件源码,可以先base64编码,再传入include函数,这样就不会被认为是php文件,不会执行,会输出文件的base64编码,再解码即可
random=php://filter/convert.base64-encode/resource=filemanager.php
我们将编码后的文件内容用base64解码后下载下来,得到一串私钥
登录获取FLAG
我们尝试登录一下elliot这个用户,提示我们需要密码,那只能继续对这个key进行爆破
先将私钥转换为john可以识别的信息,然后用john爆破
ssh2john.py 需要转的文件名 > 转出的文件名
因为ssh2john.php是个python文件,所以需要用python去访问,
将获取到的密钥登录elliott用户,登录成功,在当前用户下没有flag,可能存在rohit用户下
用sudo -l,find / -perm -4000 2>/dev/null命令查看一下敏感信息,发现rohit用户有个命令行的计算器,但是我们发现更重要的 pkexec 提权漏洞,相关漏洞详情可以了解CVE-2021-4034,我们可以直接用poc拿到root权限再去查看rohit用户下的flag
在这里我们也可以利用calc,命令行的计算器,使用!bash,切换到rohit用户,因为这里我们用sudo执行的是rohit用户下的计算器,在使用!bash后,elliot用户会跳转到rohit用户下使用calc
提权获取FLAG
通过github下载 pkexec 的poc文件,然后通过python3的http服务实现文件共享,将poc上传到elliot 用户下,通过gcc进行编译后再执行编译好的poc,拿到root权限
成功拿到root用户的flag,在找到rohit用户下的flag!!!