核弹级漏洞——Apache Log4j 2 远程代码执行漏洞事件详情及修复方式
2021-12-10 16:31:59 Author: mp.weixin.qq.com(查看原文) 阅读量:40 收藏

编辑:左右里

昨晚一直到现在安全圈可谓是沸腾了,所有人都在关注着一个漏洞——Apache Log4j 2远程代码执行。

Apache Log4j 2是一款非常优秀且流行的开源Java日志记录组件,在各大项目中有着广泛应用。利用该漏洞,攻击者可通过构造恶意请求在目标服务器上执行任意代码,从而实施窃取数据、挖矿、勒索等行为。

事件详情:

2021年12月9日,Apache官方发布了紧急安全更新以修复该远程代码执行漏洞,但更新后的Apache Log4j 2.15.0-rc1 版本被发现仍存在漏洞绕过,多家安全应急响应团队发布二次漏洞预警。

12月10日凌晨2点,Apache官方紧急发布log4j-2.15.0-rc2版本,以修复Apache log4j-2.15.0-rc1版本远程代码执行漏洞修复不完善导致的漏洞绕过。

据了解,此次漏洞是由 Log4j2 提供的 lookup 功能造成的,该功能允许开发者通过一些协议去读取相应环境中的配置。但在处理数据时,并未对输入(如${jndi)进行严格的判断,从而造成注入类代码执行。

漏洞影响范围:

Java类产品:Apache Log4j 2.x < 2.15.0-rc2

受影响的应用及组件(包括但不限于)如下:

Apache Solr、Apache Flink、Apache Druid、Apache Struts2、srping-boot-strater-log4j2等。

更多组件可参考如下链接:

https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core/usages?p=1

紧急补救措施:

(1)设置jvm参数 -Dlog4j2.formatMsgNoLookups=true。
(2)设置log4j2.formatMsgNoLookups=True。
(3)设置系统环境变量 FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS 为 true。
(4)采用 rasp 对lookup的调用进行阻断。
(5)采用waf对请求流量中的${jndi进行拦截。
(6)禁止不必要的业务访问外网。

攻击检测:

(1)可以通过检查日志中是否存在“jndi:ldap://”、“jndi:rmi”等字符来发现可能的攻击行为。
(2)检查日志中是否存在相关堆栈报错,堆栈里是否有JndiLookup、ldapURLContext、getObjectFactoryFromReference等与 jndi 调用相关的堆栈信息。

修复建议:

目前漏洞POC已被公开,官方已发布安全版本,若是使用Java开发语言的系统需要尽快确认是否使用Apache Log4j 2插件,并尽快升级到最新的 log4j-2.15.0-rc2 版本。

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

参考:360网络安全响应中心、 阿里云应急响应、绿盟科技CERT、 奇安信 CERT、斗象智能安全、默安科技


推荐文章++++

2021年报告的漏洞总数揭露,创历史新高
全球范围多家知名平台受波及,亚马逊云服务中断
商店或关闭或只支持现金,英国北部SPAR遭遇IT中断
加密货币失窃超1.2亿美元,金融平台BadgerDAO遭黑客攻击
近两万钱骡,欧洲第七次联合打击洗钱行动落幕
家贼难防,Ubiquiti前雇员窃取公司数据并实施勒索
数百万恶意短信肆虐,芬兰发布严重警报


公众号ID:ikanxue
官方微博:看雪安全
商务合作:[email protected]

球分享

球点赞

球在看

“阅读原文一起来充电吧!

文章来源: http://mp.weixin.qq.com/s?__biz=MjM5NTc2MDYxMw==&mid=2458408303&idx=1&sn=2e402eb8b45a26a0cdc75fb14d4d4ca3&chksm=b18f65e586f8ecf31797c832b27a0fe6c70e1cd21d9b5f21a040e636fba2360b4f3b859c1e1b#rd
如有侵权请联系:admin#unsafe.sh