漏洞概述
微软持续分析2021年12月9日披露的Apache Log4j(众多Java应用使用的日志工具)远程代码执行漏洞。目前除Minecraft: Java Edition外,微软企业服务尚未发现受影响案例。
安全团队正在分析所有产品和服务,识别并修复CVE-2021-44228和CVE-2021-45046漏洞实例。受影响微软产品已在安全更新指南发布补丁。
修复方案
安全更新建议
- Java 8+:升级至Log4j 2.16.0+
- Java 7:升级至Log4j 2.12.2+
已升级至2.15.0的系统应尽快升级至2.16.0以获得CVE-2021-45046的额外防护
临时缓解措施
- 从classpath删除JndiLookup.class:
|
|
- 对于Log4j 2.10-2.14.1:
- 设置JVM参数:
-Dlog4j2.formatMsgNoLookups=true
- 或设置环境变量:
LOG4J_FORMAT_MSG_NO_LOOKUPS=true
- Kubernetes集群可通过命令批量设置:
|
|
微软云服务专项指南
Azure应用服务
|
|
Azure Functions
消耗计划:
- Linux:设置
languageWorkersjavaarguments="-Dlog4j2.formatMsgNoLookups=true"
- Windows:设置
languageWorkers:java:arguments="-Dlog4j2.formatMsgNoLookups=true"
Azure HDInsight
- 2021年12月16日前创建的集群已自动修补
- 新集群需执行修补脚本后重启节点:
|
|
SQL Server大数据集群
设置Elasticsearch环境变量:
|
|
安全运营建议
- 使用Microsoft Defender检测攻击活动
- 检查日志中的异常JNDI请求
- 监控异常网络连接(特别是LDAP/RMI协议)
- 实施最小权限原则
完整检测指南详见:Microsoft安全博客
时间线
- 2021/12/11:首次发布
- 2021/12/16:新增HDInsight指南
- 2022/04/06:补充Azure Bot服务说明