靶场镜像

官网

信息收集

攻击机kali IP地址
Vulnhb 靶场系列:Jarbas1.0 Safe 第1张
通过nmap 进行主机发现,发现目标机IP地址
nmap -sP 192.168.227.1/24
Vulnhb 靶场系列:Jarbas1.0 Safe 第2张

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

参数说明:
-sP (Ping扫描)
该选项告诉Nmap仅仅 进行ping扫描 (主机发现),然后打印出对扫描做出响应的那些主机。 没有进一步的测试 (如端口扫描或者操作系统探测)。 这比列表扫描更积极,常常用于 和列表扫描相同的目的。它可以得到些许目标网络的信息而不被特别注意到。 对于攻击者来说,了解多少主机正在运行比列表扫描提供的一列IP和主机名往往更有价值。

确定下来目标机的主机信息后,通过nmap 探测目标机的服务信息及开放的端口信息
nmap -A 192.168.227.139
Vulnhb 靶场系列:Jarbas1.0 Safe 第3张
可以看到开放了web 服务80端口和8080端口,首先访问一下80端口
Vulnhb 靶场系列:Jarbas1.0 Safe 第4张
没有发现什么有用信息,进一步探测一下web 目录,这里使用kali 下的dirb,指定类型为html文件
dirb http://192.168.227.139/ -X .html
Vulnhb 靶场系列:Jarbas1.0 Safe 第5张
发现两个文件,访问http://192.168.227.139/access.html
Vulnhb 靶场系列:Jarbas1.0 Safe 第6张
发现三组MD5加密的账号密码,解密之
Vulnhb 靶场系列:Jarbas1.0 Safe 第7张
尝试用这三组账号密码登录ssh和mysql,发现并不能登录
Vulnhb 靶场系列:Jarbas1.0 Safe 第8张
访问8080端口
Vulnhb 靶场系列:Jarbas1.0 Safe 第9张
尝试登录,发现第三组账号密码成功登录
Vulnhb 靶场系列:Jarbas1.0 Safe 第10张

漏洞挖掘

我们发现8080端口开放的服务,存在漏洞利用
Vulnhb 靶场系列:Jarbas1.0 Safe 第11张

参考文档:
https://www.rapid7.com/db/modules/exploit/multi/http/jenkins_script_console

打开msfconsole,并使用漏洞exp
Vulnhb 靶场系列:Jarbas1.0 Safe 第12张
设置参数
Vulnhb 靶场系列:Jarbas1.0 Safe 第13张
输入exploit,获取到一个meterpreter
Vulnhb 靶场系列:Jarbas1.0 Safe 第14张
输入shell,获取到一个shell 会话
Vulnhb 靶场系列:Jarbas1.0 Safe 第15张
也可以通过python 建立会话
python -c 'import pty;pty.spawn("/bin/bash")';
Vulnhb 靶场系列:Jarbas1.0 Safe 第16张
尝试通过find 发现flag 文件,发现权限太低,几乎都没法访问
Vulnhb 靶场系列:Jarbas1.0 Safe 第17张
最后我们发现一个很有意思的脚本
Vulnhb 靶场系列:Jarbas1.0 Safe 第18张
Vulnhb 靶场系列:Jarbas1.0 Safe 第19张
这个脚本每隔5分钟会清理一次http的访问日志,更重要的是这个脚本的权限是777
Vulnhb 靶场系列:Jarbas1.0 Safe 第20张

提权

我们先在本地新建一个CleaningScript.sh ,用于给find 设置suid权限,可以像root用户那样启动
chmod u+s /usr/bin/find
Vulnhb 靶场系列:Jarbas1.0 Safe 第21张

参考链接:
https://blog.csdn.net/wangjia55/article/details/80858415

通过meterpreter 上传脚本到目标机
Vulnhb 靶场系列:Jarbas1.0 Safe 第22张
等待5分钟进入shell
Vulnhb 靶场系列:Jarbas1.0 Safe 第23张
发现find 具有了suid权限
Vulnhb 靶场系列:Jarbas1.0 Safe 第24张
这时我们就可以利用find 命令的exec 功能以root 权限执行其他命令了
Vulnhb 靶场系列:Jarbas1.0 Safe 第25张

参考链接:
https://blog.csdn.net/hongrisl/article/details/83018536

最后我们就可以查找root 下是否有flag 文件了
Vulnhb 靶场系列:Jarbas1.0 Safe 第26张
并成功读取flag文件
Vulnhb 靶场系列:Jarbas1.0 Safe 第27张
Vulnhb 靶场系列:Jarbas1.0 Safe 第28张

另一种提权方法

同样先获取到meterpreter 权限,本地新建脚本CleaningScript.sh ,用于给cp 设置suid 的权限
chmod u+s /usr/bin/cp
Vulnhb 靶场系列:Jarbas1.0 Safe 第29张
通过meterpreter上传,然后在目标机通过cat 查看/etc/passwd
Vulnhb 靶场系列:Jarbas1.0 Safe 第30张
把文件内容复制下来,在本地新建passwd 粘贴内容,并创建一个具有root 权限的新用户
Vulnhb 靶场系列:Jarbas1.0 Safe 第31张
用户密码可以通过openssl 生成
Vulnhb 靶场系列:Jarbas1.0 Safe 第32张
通过meterpreter 上传到目标机/tmp 目录下
Vulnhb 靶场系列:Jarbas1.0 Safe 第33张
通过咱们设置好的cp 命令覆盖原先的/etc/passwd
Vulnhb 靶场系列:Jarbas1.0 Safe 第34张
su 切换到咱们创建的用户,成功获取到root 权限
Vulnhb 靶场系列:Jarbas1.0 Safe 第35张

另另一种提权方法

首先在本地通过msfvenom 生成一个反弹shell
Vulnhb 靶场系列:Jarbas1.0 Safe 第36张
在本地写入CleaningScript.sh
Vulnhb 靶场系列:Jarbas1.0 Safe 第37张
通过meterpreter 上传到目标机
Vulnhb 靶场系列:Jarbas1.0 Safe 第38张
在kali 开启监听
Vulnhb 靶场系列:Jarbas1.0 Safe 第39张
等待5分钟后,获取到一个root权限反弹shell
Vulnhb 靶场系列:Jarbas1.0 Safe 第40张
Vulnhb 靶场系列:Jarbas1.0 Safe 第41张

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄