当前位置:首页 » 《随便一记》 » 正文

Apache Log4j曝史诗级漏洞,Spring boot修复教程_chechengtao

2 人参与  2022年03月23日 12:34  分类 : 《随便一记》  评论

点击全文阅读


全球知名开源日志组件Apache Log4j被曝存在严重高危险级别远程代码执行漏洞,攻击者可以利用该漏洞远程执行恶意代码。据阿里云通报,由Apache Log4j2某些功能存在递归解析功能,攻击者可直接构造恶意请求,触发远程代码执行漏洞。

该漏洞于12月7日由游戏平台Minecraft用户在网上曝光,据称黑客可以通过操作日志消息(甚至在聊天信息中键入内容),并且还可以在Minecraft服务器端执行恶意代码。Apache log4j官方在7日当天便发布2.15.0-rc1版本以修复漏洞,随后,阿里云、斗象科技、绿盟科技、默安科技、奇安信等安全厂商发布危害通报。

目前受漏洞影响的主要是Apache Log4j 2.x <= log4j-2.15.0-rc1版本,当用户使用Apache Log4j2来处理日志时,漏洞会对用户输入的内容进行特殊处理,攻击者便可以在Apache Log4j2中构造特殊请求来触发远程代码执行。

如何判断是否受影响,开发者只需排查在Java应用中是否引入log4j-api, log4j-core两个jar文件,若存在,建议立即进行安全排查,采取防护措施。

如果我们的项目是基于maven的spring boot项目。查看项目依赖中是否存在log4j-api, log4j-core的依赖即可。

目录

1.打开依赖树

2.查看log4j-api依赖

3.排除log4j-to-slf4j

4.排除log4j-api

5.排除依赖的代码


1.打开依赖树

发现我们引用的log4j-api是2.13.3版本。

2.查看log4j-api依赖

发现是log4j-to-slf4j依赖了log4j-api。首先排除log4j-to-slf4j,引入最新版试试

3.排除log4j-to-slf4j

 

发现引入的log4j-api依旧是2.13.3版本。那么,我们要排除log4j-api,引入最新版。

4.排除log4j-api

 

 

发现引入的log4j-api最新版本是2.15.0版本。成功。

项目打包后,查看lib里面的jar版本:

5.排除依赖的代码

        <!-- 排除log4j-api,引入最新log4j-api -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.apache.logging.log4j</groupId>
                    <artifactId>log4j-to-slf4j</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-to-slf4j</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.apache.logging.log4j</groupId>
                    <artifactId>log4j-api</artifactId>
                </exclusion>
            </exclusions>
            <version>2.15.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>2.15.0</version>
        </dependency>
        <!-- 排除log4j-api,引入最新log4j-api END-->


点击全文阅读


本文链接:http://zhangshiyu.com/post/36563.html

排除  依赖  引入  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1