# 前言

继续这个系列的第三篇,这次不废话了。主要是不知道说什么了,上一篇在 rbash 逃逸卡的时间稍微有点久没能在我预期时间内做完稍微有点难受。

# 环境

地址:DC: 3.2 ~ VulnHub

使用 VMware 搭建环境(这个参考这个系列的第一篇即可 DC-1 - Vulnhub | Clown の Blog = (xcu.icu),环境搭建都一样,这里我还是将网络模式改为了 nat)

这里有两点值得注意的地方我还是写一下

# VMware Workstation 不可恢复错误:(vmui)

image-20231021163138732

同样也是在搭建 DC-3 的时候遇到的,这里实际上是硬件兼容性的问题,右键有问题的虚拟机,然后点击管理,点击更改硬件兼容性

image-20231021163247581

然后直接点击下一步

image-20231021163411345

将硬件兼容性改为 16 即可

image-20231021163425624

选择更改此虚拟机

image-20231021163538809

加载完成就可以了

# IDE 设备 (磁盘 / CD-ROM) 配置不正确

image-20231021162811684

解决方法也很简单,根据报错提示改一下就可以了点 “虚拟机”->“设置”-> 选择 “磁盘 / 光驱 IDE 设备 " -> 点 ” 高级 “

image-20231021163023484

image-20231021163046316

将这里改为 IDE 0::0 就可以了

# 打靶流程

首先需要做的还是主机存活探测

image-20231021164516513

这里可以看到这里实际上就一个开放的端口,那么这里也不需要去考虑什么了,这里就直接去访问这个 ip 就可以了

image-20231021171623116

这里上来就是一个登录页面,接下来的思路就很简单了,指纹探测,目录扫描等等,这里使用 whatweb 或者直接使用 nmap 来做一个指纹扫描

image-20231021171847284

image-20231021171914764

个人还是比较喜欢使用 whatweb,可能是比较习惯。这里可以看到目标网站上是一个 Joomla!的 cmd,这里可以去网上找一下相关的漏洞,在去找 cms 相关漏洞的时候可以去对目录进行一个扫描,来节约一些时间

image-20231021172832781

也是在网上找到了这样一篇文章记录的比较清晰 Joomla 常见漏洞复现 - Arrest - 博客园 (cnblogs.com)

image-20231021172937546

这里可以看到,这个 sql 注入就已经成功了,证明了这个漏洞是存在的,这里直接使用 sqlmap 来拿数据

sqlmap -u "http://192.168.246.147/index.php?option=com_fields&view=fields&layout=modal&list%5Bfullordering%5D=*" --dbs

image-20231021173453367

sqlmap -u "http://192.168.246.147/index.php?option=com_fields&view=fields&layout=modal&list%5Bfullordering%5D=*" -D joomladb --tables

image-20231021173516603

这里的表很多,但是因为我们是需要登录,所以很显然值得我们注意的就只有这个 users 表,但是这里很烦的是这个 users 表是表名前有一个 #。这个在 sql 语句中是注释符号,所以这里需要给其加上引号。这里也不在浪费篇幅了直接拿到用户名和密码

sqlmap -u "http://192.168.246.147/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=*" -D  joomladb -T "#__users"  -C  name,username,password --dump

image-20231028215837673

很显然密码是被加密过的,这里使用 john 来解密,将密文复制下来然后写到一个文件中

image-20231028220004110

这里就得到了密码 snoopy,将这个密码在 web 页面尝试登录

image-20231028220157944

很成功的登录上来了,但是经过一些测试这个页面是没有什么作用的,这里就需要将其目光放回到上面扫描的目录上,有 administrator 这样一个路由

image-20231028220725907

这样是一个管理员的登录页面,然后这里也尝试使用上面的账号登录

image-20231028220845482

也是很成功的登录上来了,然后再去找相对应的漏洞【漏洞复现 CVE-2021-23132】Joomla 远程代码执行漏洞 - StarCi - 博客园 (cnblogs.com),当前比这个文章中复现的还要简单,就已经是管理员权限了,直接去更改 php 文件

image-20231028221521118

在这个 error.php 文件中加上 phpinfo (); 尝试一下,然后访问 http://192.168.246.147/templates/beez3/error.php

image-20231028221602963

可以看到,这里就已经成功执行了。写入 system 来反弹一个 shell

image-20231028222114175

然后起一个监听即可

image-20231028222135520

这里已经突破边界了拿到了一个普通权限的 shell,接下来需要做的就是提权

尝试 sudo -l 发现这里需要密码,然后查询了一下内核版本

image-20231028222950641

这里版本很低,去检索了一下对应的漏洞

image-20231028223049642

这里利用这个 linux/local/39772.txt 这个路径的脚本

image-20231028223215557

这里直接 wget 这个地址(需要科学上网)

image-20231028223403461

这里将这个文件下载下来后解压

image-20231028223627757

这里再解压这个 exploit.tar 文件

image-20231028223808017

然后进入解压后的目录,进入到这个目录中运行./compile.sh 编译一下,然后执行./doubleput

image-20231028224011825