ripper
一、靶机介绍
靶机下载地址:Ripper: 1 ~ VulnHub
攻击方法:
- 主机发现
- 端口扫描
- WEB信息搜集
- 内部系统泄露
- 代码审计
- 备份文件泄密
- Webmin漏洞利用
- Measploit
- CVE-2021-3493
二、主机发现
arp-scan -l |
发现靶机ip地址为10.0.2.17
三、端口扫描
nmap -p- 10.0.2.17 |
发现22,80,10000端口都在开放
四、WEB信息搜集
访问80端口是个默认的apache2页面
然后访问10000端口,发现提示使用https访问
使用https协议重新访问10000端口,发现是个webmin启动服务,是一个登录页面,没用获取到更多信息和突破口
五、目录扫描
dirsearch -u https://10.0.2.17:10000 |
扫描目录时,一开始速度非常慢,后来尝试增加进程扫描,扫描速度很快,但是没用扫描出来任何有用信息,使用gobuster和feroxbuster扫描直接显示失败,所以就耐心等了
发现存在robot.txt文件
https://10.0.2.17:10000/robots.txt |
发现存在一个bas64编码的字符串
解码查看信息
echo 'd2Ugc2NhbiBwaHAgY29kZXMgd2l0aCByaXBzCg==' |base64 -d |
六、rips-代码审计
搜索rips php发现rips是个代码审计工具,工具网站如下:
https://rips-scanner.sourceforge.net/
在工具网站发现信息,大概意思是工具一般直接在ip或者域名下的/rips目录下
尝试在10000端口后面访问这个路径,发现还是这个登录页面
在80端口下尝试访问,发现跳转到工具页面了
dirsearch字典中应该rips这词,我刚开始扫过80端口,没有获得任何有用信息
指定一些路径,我这里填的是默认路径
但是发现扫描出来的文件太多了
使用关键词筛选一下,将关键词设置成了pass
发现一个账号和密码
账号密码:
ripper |
七、ssh连接
账号密码登录web页面失败
尝试登录ssh,发现登录成功
获得第一个flag
八、提权
8.1、CVE-2021-3493
uname -a |
发现内核版本和hard_socnet2的打靶靶机内核一样
参考文章:
CVE-2021-3493:Linux kernel特权提升漏洞复现-腾讯云开发者社区-腾讯云 (tencent.com)
将源码下载到kali中,编译好后使用SCP传输到靶机中
8.1.1、SCP传输文件
scp exp ripper@10.0.2.17:~/ |
:后面的~是指路径
但是发现由于gcc版本不同,在kail中编译好后没法再靶机中运行,
靶机中没有gcc,也没有安装权限,可以再docker中起一个Ubuntu的靶机,再里面编译好后拉到再传输到靶机中运行,这里由于virtualbox我并不常用,这个kali只是为了打vulnhub靶机所弄的,没有搞docker,所以懒得弄了。
8.2、信息搜集提权
发现靶机中存在其他用户
find / -user cubes -type f -exec ls -la {} \; 2>/dev/null |
查找文件属于另一个用户的的文件
/ :根目录开始查找
-user cubues: 文件所有者为cubues
-type f:查找类型是文件,不是目录或者链接那一类的
-exec ls -al {} ; 对找的每个文件执行ls -la命令,{}是find命令找的文件占位符,;是 -exec选项的结束标识符。
2 >/dev/null 隐藏报错信息
发现一个命名为秘密的文件,查看类型是字符串,发现是一个密码
Il00tpeople
切好到cubes用户尝试登录,发现登录成功
su cubes |
然后有找不到其他有用信息了,故技重施,继续查找
find / -user cubes -type f -exec ls -la {} \; 2>/dev/null | grep -v "/proc"``| grep -v ".png" |
| grep -v “/proc”``| grep -v “.png” 是指使用grep过滤带哦/proc和.png的搜索结果
这里标记错了,应该是下面那一行日志文件,查看日志
cat /var/webmin/backup/miniser.log |
发现貌似是个登录日志,再其中找的了一个账号和密码
8.3、Webmin漏洞利用
再web页面尝试登录,发现登录成功,再功能列表中有个命令行,直接进去也是root权限
8.4、MSF利用
如果登录进去没找到那个命令行选项,也可以用msf提权
nmap扫描中看的10000端口对应的服务是webmin,版本号是1.910
使用searchsploit查找一下webmin是否存在漏洞
searchsploit webmin |
发现存在一个rce漏洞,并且可以利用msf攻击
启动msf,查找漏洞
msfdb run |
发现确实存在payload,选一个最新的rce,这里我选的3
use 3 |
查看运行需要知道的前提条件,发现这个利用条件是需要知道web页面的账号和密码,服务对应的端口,这里默认的是10000,ssl也默认是true所以不用更改了,指定一下密码和用户,靶机地址和本地地址就行了
设置完成后重新查看一下有没有错误
没有错误,直接run
攻击成功