昨天,开源地震:Apache Log4j2 发现远程代码执行漏洞,高危!

小哈学Java

共 581字,需浏览 2分钟

 ·

2021-12-14 07:18

点击关注公众号,Java干货及时送达👇



1、漏洞简介

Apache Log4j2是一款非常优秀的Java日志框架。该工具重写了Log4j框架,并且引入了大量丰富的特性,压测表现远超log4j和logback。该日志框架被大量用于业务系统开发,用来记录日志信息。

此次漏洞的出现,是由用于 Log4j 2 提供的 lookup 功能造成的,该功能允许开发者通过一些协议去读取相应环境中的配置。但在实现的过程中,并未对输入进行严格的判断,从而造成漏洞的发生。“微步在线研究响应中心”做了漏洞复现。简单来说,就是在打印日志时,如果发现日志内容中包含关键词 ${,那么这个里面包含的内容会当做变量来进行替换,导致攻击者可以任意执行命令。详细漏洞披露可查看:https://issues.apache.org/jira/projects/LOG4J2/issues/LOG4J2-3201?filter=allissues


2、漏洞危害

漏洞利用无需特殊配置,攻击者可直接构造恶意请求,触发远程代码执行漏洞。

3、漏洞编号

暂无

4、影响范围

Apache Log4j 2.x <= 2.14.1

根据目前对于此类漏洞的研究积累,我们建议企业可以通过监测相关流量或者日志中是否存在“jndi:ldap://”、“jndi:rmi”等字符来发现可能的攻击行为。


5、修复措施

紧急缓解措施:

1、修改 jvm 参数 -Dlog4j2.formatMsgNoLookups=true
2、修改配置 log4j2.formatMsgNoLookups=True
3、将系统环境变量 FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS 设置为 true


最终修复措施:

升级Apache Log4j 2所有相关应用到最新的 log4j-2.15.0-rc2 版本,地址 https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc2(重要说明:12 10 日上午,阿里云安全团队再次发出预警,发现 Apache Log4j 2.15.0-rc1 版本仍然存在漏洞绕过,建议及时更新至 Apache Log4j 2.15.0-rc2 版本


5、关联影响

由于logj4j2几乎成为了日志工具的标准,所以非常多大名鼎鼎的开源工具也受到了影响。升级已知受影响的应用及组件包括但不限于

1. srping-boot-strater-log4j2

2. Solr

3. Flink

4. Druid

5. kafka

6. elasticsearch

7. druid

8. flink


1. 都在建议你不要直接使用 @Async 注解,为什么?

2. 系统架构性能问题诊断及优化思路,纯干货!

3. MySQL 跨库分页/ 分表分页/ 跨库分页,为什么这么难?

4. 为什么下载小电影时,经常会卡在99%?

最近面试BAT,整理一份面试资料Java面试BATJ通关手册,覆盖了Java核心技术、JVM、Java并发、SSM、微服务、数据库、数据结构等等。

获取方式:点“在看”,关注公众号并回复 Java 领取,更多内容陆续奉上。

文章有帮助的话,在看,转发吧。

谢谢支持哟 (*^__^*)

浏览 45
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报