2021年12月9日,星云博创摘星实验室监测到网上Apache Log4j 的远程代码执行漏洞细节被公开,大量的业务框架都使用了该组件。此次漏洞是用于 Log4j2 提供的 lookup 功能造成的,该功能允许开发者通过一些协议去读取相应环境中的配置。该漏洞一旦被攻击者利用会造成严重危害。经过快速分析和确认,该漏洞影响范围极其广泛,危害极其严重,我们建议企业第一时间启动应急响应进行修复。
该漏洞影响范围极广,建议相关用户尽快采取措施进行排查与防护。
Apache Log4j2是一款优秀的Java日志框架。由于Apache Log4j2某些功能存在递归解析功能,未经身份验证的攻击者通过发送特别构造的数据请求包,可在目标服务器上执行任意代码,攻击者可直接构造恶意请求,触发远程代码执行漏洞。漏洞利用无需特殊配置,经团队验证,Apache Struts2、Apache Solr、Apache Druid、Apache Flink等均受影响。
Apache Log4j 2.x <= 2.15.0-rc2
供应链影响范围:
已知受影响应用及组件:
Apache Solr
Apache Flink
Apache Druid
srping-boot-strater-log4j2
dubbo
flume
Redis
更多组件可参考如下链接:
https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core/usages?p=1
高危、远程代码执行
目前漏洞rce-exp已网上公开
dnslog回显测试
1、紧急缓解措施:
①修改jvm参数-
Dlog4j2.formatMsgNoLookups=true
②修改配置
log4j2.formatMsgNoLookups=True
③将系统环境变量
FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS 设置为 true
2、检测方案:
①由于攻击者在攻击过程中可能使用 DNSLog 进行漏洞探测,建议企业可以通过流量监测设备监控是否有相关 DNSLog 域名的请求。
②我们建议企业可以通过监测相关流量或者日志中是否存在“jndi:ldap://”、“jndi:rmi”等字符来发现可能的攻击行为。
3、修复方案:
检查所有使用了 Log4j 组件的系统,官方修复链接如下:
https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc1
4、应对措施:
限制受影响应用对外访问互联网,并在边界对dnslog相关域名访问进行检测。
部分公共dnslog平台如下:
ceye.io
dnslog.link
dnslog.cn
dnslog.io
tu4.org
awvsscan119.autoverify.cn
burpcollaborator.net
s0x.cn