其他分享
首页 > 其他分享> > Vulnhub 靶机 CONTAINME: 1

Vulnhub 靶机 CONTAINME: 1

作者:互联网

前期准备:

靶机地址:https://www.vulnhub.com/entry/containme-1,729/

kali靶机地址:192.168.11.129
靶机ip:192.168.11.198

一、信息收集

1.使用nmap对目标靶机进行扫描

image

发现开放了 22、80、2222 和 8022 端口。

2. 80端口

image

源代码中也没有什么发现,扫一下目录:

image

检查 index.php 时发现会列出当前目录下的文件:

image

也许 index.php 有 命令注入。wfuzz 扫一下:

image

二、漏洞利用

发现可以注入:

image

简单查看一下系统中的文件:

image

发现 .ssh 文件查看不了,那就尝试写入 shell,首先在本地制作一个 shell 脚本,然后开启 http 服务:

image

查找一下哪里上传的文件能读取:

image

发现可以上传到到 /tmp 目录下:

image

查看一下是否上传成功:

image

bash 运行 shell.sh ,并开启监听:

image

image

连接成功。

三、容器一提权

查看一下系统内的可疑信息:

image

发现在 /home/mike 下有个 1cryptupx 文件很可疑,运行查看一下:

image

查看一下二进制数据:

image

命令行中复制不方便,就看的这里,复制下来,十六进制编码恢复成 1cryptupx:

image

根据文件名和 Exeinfope 发现是 upx 打包的:

image

upx解压:

image

报错了,查了没找到什么原因,后来用的 win10 上的 UPX Tool

image

解压成功了,IDA 打开:

image

在这个函数中,我们得到一个哈希字符串。这意味着如果我们输入正确的密码,该函数将以 root 身份调用“/bin/bash”。将哈希字符串保存下来,爆破一下:

image

发现文件密码是 mike,再次运行一下 1cryptupx 文件:

image

发现还是跳到了 www-data 用户,应该还有别的类似文件,查一下能执行的文件:

image

发现有个 crypt 文件。查看一下:

image

发现和之前发现的 1cryptupx 文件输出得一样,那加上之前发现的密码试一下:

image

获得了 root 账户,没找到 flag,一开始以为没有 flag,后来不经意间查了一下 ip 发现:

image

原来我在容器中。

四、容器二提权

找找同网段还有没有别的容器,容器中没有 nmap,下载一个再扫:

image

也可以用 bash 命令扫:

for i in {1..254} ;do (ping 172.16.20.$i -c 1 -w 5 >/dev/null && echo "172.16.20.$i" &) ;done

image

扫一下 172.16.20.6 开放的端口:

image

发现开放了 22 端口,但是我们不知道密码,那找找有没有密钥:

image

试试在host1上使用用户名mike和mike的id_rsa登录host2:

image

发现能成功登录到 host2.检查一下有哪些服务:

image

发现运行着数据库,尝试登录下数据库:

image

简单测试一下发现居然进去了,mike:password

image

查看表内信息发现了 root 的密码,登录 root:

image

找找有没有 flag:

image

发现一个 mike.zip 压缩包,解压发现有密码,之前在数据库中我们发现了 mike 的密码,成功解压:

image

得到了 flag。

注: 在 host2 中发现密码是 password,是猜对的,有点取巧。如果猜不对需要爆破,需要在 host1 上,使用 ssh -L 来映射 host2:3306 ==> host1:3306。再将 host1:3306 映射到 kali 然后再爆破。

标签:发现,mike,查看,文件,一下,密码,Vulnhub,靶机,CONTAINME
来源: https://www.cnblogs.com/sainet/p/15703392.html