美文网首页收藏
Apache Log4j2远程代码执行漏洞风险处理办法

Apache Log4j2远程代码执行漏洞风险处理办法

作者: 架构师奶爸 | 来源:发表于2021-12-16 16:52 被阅读0次

    1、漏洞描述
    一个Apache Log4j2反序列化远程代码执行漏洞细节已被公开,Apache Log4j-2中存在JNDI注入漏洞,当程序将用户输入的数据进行日志记录时,即可触发此漏洞,成功利用此漏洞可以在目标服务器上执行任意代码。

    Apache Log4j2是一个基于Java的日志记录工具。该工具重写了Log4j框架,并且引入了大量丰富的特性。该日志框架被大量用于业务系统开发,用来记录日志信息。大多数情况下,开发者可能会将用户输入导致的错误信息写入日志中。

    2、漏洞修复方式:
    2.1、jvm 增加启动参数:

    -Dlog4j2.formatMsgNoLookups=true
    

    2.2、java 日志输出前增加代码:

    System.setProperty("com.sun.jndi.rmi.object.trustURLCodebase", "true");
    

    备注说明:必须为true
    2.3、升级安全版本:
    spring boot 项目

    <dependency> <!-- 引入log4j2依赖 -->
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-log4j2</artifactId>
    </dependency>
    

    单独引包:

    Apache log4j-2.15.0-rc2
    

    (2.15.0-rc1版,经腾讯安全专家验证可以被绕过)

    2.4、项目文件配置参数

    log4j2.formatMsgNoLookups=True
    

    参考链接:

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

    相关文章

      网友评论

        本文标题:Apache Log4j2远程代码执行漏洞风险处理办法

        本文链接:https://www.haomeiwen.com/subject/ffuvfrtx.html