2021年12月报Log4j1.2网络安全漏洞排查和修复建议

  • 漏洞影响范围

Apache Log4j2远程代码执行漏洞CVE-2021-4104:Apache Log4j 1.2

Apache Log4j2远程代码执行漏洞CVE-2021-44228:Apache Log4j 2.0-beta9 - 2.12.1 、Apache Log4j 2.13.0 -

2.15.0-rc1

Apache Log4j2 拒绝服务攻击漏洞CVE-2021-45046:Apache Log4j 2.0-beta9 - 2.12.1、Apache Log4j 2.13.0-2.15.0

Apache Log4j2 拒绝服务漏洞CVE-2021-45105:Apache Log4j 2.0-beta9 - 2.16.0

  • Log4j1.2  受影响

远程代码执行漏洞CVE-2021-4104

修复方法如下优先采用缓解措施):

ApacheLog4j 1.2中存在RCE漏洞(CVE-2021-4104,仅配置为使用JMSAppender时存在,非默认),建议相关用户升级到Log4j 2的最新版本。

缓解措施:

注释或删除 Log4j 配置中的 JMSAppender。

使用此命令从log4j jar包中删除 JMSAppender 类文件:

zip -q -d log4j-*.jar org/apache/log4j/net/JMSAppender.class

参考链接:

http://mail-archives.apache.org/mod_mbox/www-announce/202112.mbox/%3C1a5a0193-71c4-0613-ca92-f50f801543d9@apache.org%3E

  • Log4j2.x  受影响

拒绝服务漏洞CVE-2021-45046

修复方法如下优先采用缓解措施):

Java8或更高版本应升级到 Apache Log4j 2.16.0 版本。

使用Java 7 的用户应升级到Apache Log4j 2.12.2版本。

删除 JndiLookup 类:

zip-q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class

参考链接:

http://mail-archives.apache.org/mod_mbox/www-announce/202112.mbox/%3C13e07d4e-ceb6-e510-be98-7d2ee8fa0a85@apache.org%3E

下载链接:

https://logging.apache.org/log4j/2.x/download.html

注:只有log4j-core JAR文件受CVE-2021-44228和CVE-2021-45046漏洞的影响。只使用log4j-api JAR文件而不使用log4j-core JAR文件的应用程序不会受到影响

远程代码执行漏洞CVE-2021-44228

修复方法如下优先采用缓解措施):

受影响用户应升级到Apache Log4j 2.15.0-rc2及以上版本,建议升级到 2.16.0 版本(Java 8或更高版本)。

使用Java 7的用户应升级到Apache Log4j 2.12.2版本。

删除 JndiLookup 类:

zip -q -dlog4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class

参考链接:

Log4j – Apache Log4j 2

拒绝服务漏洞CVE-2021-45105

Log4j 1.x:不受 CVE-2021-45105 漏洞影响。

Log4j 2.x:Java 8 或更高版本用户建议升级到 2.17.0 版。

缓解措施:

1、在日志配置的 PatternLayout 中,用线程上下文映射模式(%X,%mdc 或%mdc)

替换上下文查找,如${ctx:loginId}或$${ctx:loginId}。

2、否则,在配置中,删除对上下文查找的引用,如 ${ctx:loginId} 或 $${ctx:

loginId},它们源自应用程序外部的源,如 HTTP 头或用户输入。

下载链接:

https://logging.apache.org/log4j/2.x/download.html

注 : 只 有 log4j-core JAR 文件受 CVE-2021-44228 、 CVE-2021-45046 和

CVE-2021-45105 漏洞的影响。只使用 log4j-api JAR 文件而不使用 log4j-core JAR 文件的应用程序不会受到影响。

通用临时方案(CVE-2021-44228)

  1. 建议JDK使用6u211、7u201、8u191、11.0.1及以上的版本;
  2. 对于>=2.10版本:
  3. 添加jvm启动参数:-Dlog4j2.formatMsgNoLookups=true;在log4j2.component.properties配置文件中增加如下内容:log4j2.formatMsgNoLookups=true;系统环境变量中将LOG4J_FORMAT_MSG_NO_LOOKUPS设置为true;
  4. 对于2.7-2.14.1版本:
  5. 可以修改所有PatternLayout模式,将消息转换器指定为%m{nolookups},而不仅仅是%m。
  6. 对于2.0-beta9-2.7版本:
  7. 唯一的缓解措施是删除jndiookup类:

zip -q -dlog4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class

  1. 禁止安装log4j的服务器访问外网,并在边界对dnslog相关域名访问进行检测。

  • log4j本地检测使用方法

检测结果出现log4j 1.2、log4j 2.x表示受漏洞影响,具体受影响漏洞类型及修复参考第一、二、三章节。

  • windows系统

建议将程序放到磁盘根目录下面,通过cmd控制台执行。若文件较多,时间较长,请耐心等待。

  • linux系统

需将程序放到磁盘 / 根目录下面后,将程序设置为执行权限;

chmod +x log4j_vul_check_linux

 

 附:排查的小工具分享

log4j漏洞排查小工具-网络安全文档类资源-CSDN下载

 

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JavinLu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值