难度
低->中
目标 一个root 两个flag
kali 192.168.135.58 靶机 192.168.135.104
netdiscover -i eth0 -r 192.168.135.0/24
端口扫描
先访问一下80端口和10000端口,这两个都是web服务的样子
80端口是初始化界面,可以尝试扫扫目录
访问10000端口
提示需要https才可以访问,那么换成https协议去访问
发现是一个登录框,根据看这个网站是webmin,可以去网上寻找相关的历史漏洞进行利用。
使用dirsearch扫了半天终于扫描出了一个robots.txt 🤣
访问发现有一段base64编码的字段 d2Ugc2NhbiBwaHAgY29kZXMgd2l0aCByaXBzCg==
什么扫描php代码使用rips,然后去网上搜索了一下发现rips是一个php代码审计的工具
感觉是挺老的一个项目了
GitHub - ripsscanner/rips: RIPS - A static source code analyser for vulnerabilities in PHP scripts
根据提示很可能存在这个启动的网站
于是尝试了一下/rips /rips-Webmin 发现都没有,后面又想到还有一个80端口没用的,尝试在80端口上面访问果然有一个这个东西
这个rips我也是第一次遇见,去网上搜索了一下相关的使用资料
首先尝试搜索了一下/var/www/html
可以确定rips的源码就是部署在这个下面的
那个Webmin的源码是部署在root/webmin-1.910/ 之前我尝试利用历史漏洞的时候将路径给爆了出来
我先尝试了这个文件读取,发现这个rips的文件读取还做了过滤。。。挺安全的。
然后又到处点在file的文件里面,这个里面应该是存放的所有扫描到的文件,发现第一个secret.php打开发现了账号密码
也是挺仓促的
ripper/Gamespeopleplay
我还以为是Webmin的账号密码没想到是ssh
找到第一个flag
首先是查看一下/etc/passwd查看一下有哪些用户发现确实还有一个用户 cubes 也就是说还有一个flag很有可能在这个用户的目录下
不过这个用户目录下的东西挺多的,都得看一看。
不管如何先拿到root权限再说,直接上线msf使用post提权模块一把梭
成功拿到root权限🤣
按照目标的要求两个flag和root权限全部拿到
但是还是得学习一下作者想要传递的知识点
按照正常的信息收集流程进行信息收集,我查看了ripper目录下的文件没有发现什么东西,然后就到cubes的目录下去翻了翻也没有查看到到什么东西
原来是查看所有所属用户是cubes的文件
find / -user cubes -type f 2>/dev/null
有一个密码
Il00tpeople
使用这个密码登录
然后我查看了一下.bash_history
发现他有修改/var/webmin的记录,到这一步,webmin的作用好像还只是提供了一个提示,或许提权的机会就在这里
在里面查看这个miniser.log的内容的时候发现了这账号密码
admin/tokiohotel
尝试去登录发现成功了
果不其然,显示在网上搜搜了一下相关的漏洞,因为这个程序webmin是一个网站管理平台需要root的权限所以能rce得到的也是root的权限
在网上寻找到了CVE-2022-36446 后台rce漏洞
利用exp GitHub - p0dalirius/CVE-2022-36446-Webmin-Software-Package-Updates-RCE: A Python script to exploit CVE-2022-36446 Software Package Updates RCE (Authenticated) on Webmin < 1.997.
就是回显有点慢。
后面看了一下wp发现原来网站里面直接有cmd可以执行命令😢
整体挺简单的,只有那个地方找密码没想到要那样找。