-
-
Apache Log4j拒绝服务漏洞通告
-
发表于: 2021-12-20 13:43 5597
-
2021年12月18日晚,棱镜七彩安全研究院监测到Apache官方发布了Apache Log4j 拒绝服务攻击漏洞(CVE-2021-45105),此漏洞需要在非默认配置下才能触发。当系统日志配置使用带有Context Lookups的非默认 Pattern Layout(例如$${ctx:loginId})时,攻击者可构造包含递归查找的恶意输入数据,成功利用此漏洞将触发无限循环,导致系统崩溃。
备注说明:
该漏洞利用条件严苛,影响较为有限,目前官方已有安全版本,建议使用处置建议中的缓解措施或升级到最新版本。
Apache Log4j 1.x不受此漏洞影响。只有 log4j-core 依赖受此漏洞影响,仅使用 log4j-api而不使用 log4j-core依赖的应用程序不受此漏洞影响。Apache Log4j 是唯一受此漏洞影响的日志服务子项目,Log4net 和 Log4cxx 等其他项目不受影响。
Log4j 1.x 坐标示例:
<dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.x</version> </dependency>
Log4j2 2.x 坐标示例:
<dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.x</version> </dependency>
漏洞描述:
Apache Log4j 1.x不受此漏洞影响。只有 log4j-core 依赖受此漏洞影响,仅使用 log4j-api而不使用 log4j-core依赖的应用程序不受此漏洞影响。Apache Log4j 是唯一受此漏洞影响的日志服务子项目,Log4net 和 Log4cxx 等其他项目不受影响。
漏洞类型:
拒绝服务
风险等级:
高危
漏洞CVE编号:
CVE-2021-45105
公开状态:
已公开
漏洞描述:
当系统日志配置使用带有Context Lookups的非默认 Pattern Layout(例如$${ctx:loginId})时,攻击者可构造包含递归查找的恶意输入数据,成功利用此漏洞将触发无限循环,导致系统崩溃。
受影响版本:
2.0-beta9 <= Apache Log4j <= 2.16.0
参考链接:
https://logging.apache.org/log4j/2.x/security.html
修复建议:
目前Apache Log4j官方已有可更新版本,用户可升级至安全版本。Java 8或更高版本用户可以升级至Apache Log4j 2.17.0版本:
https://logging.apache.org/log4j/2.x/download.html
https://security.netapp.com/advisory/ntap-20211218-0001/
https://nvd.nist.gov/vuln/detail/CVE-2021-45105
缓解措施
若无法及时升级至安全版本,可采用以下缓解措施来缓解此漏洞:
(1)在日志配置的 PatternLayout 中,用Thread Context Map模式(%X、%mdc 或 %MDC)替换 ${ctx:loginId} 或 $${ctx:loginId} 等Context Lookups。
(2)在系统接收应用程序外部数据(如HTTP headers或用户输入)的场景中,在配置中删除对Context Lookups的引用(如 ${ctx:loginId} 或 $${ctx:loginId})。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课