合作机构:阿里云 / 腾讯云 / 亚马逊云 / DreamHost / NameSilo / INWX / GODADDY / 百度统计
开源日志记录工具Apache Log4j曾被爆出一个严重的远程代码执行漏洞,攻击者可以借此构造恶意请求,触发远程恶意代码的执行。消息爆出后,该漏洞引起了极大的关注。小半年过去了,相关热度逐渐消退,是时候对整个过程进行一个彻底的总结回顾,并从中吸取教训,避免以后再遭遇类似的问题。
加入Client-Side Protection & Compliance,防范每一次用户数据外泄!
符合 PCI DSS v4.0 标准,助您严防网站恶意代码和漏洞!
进一步了解Akamai的网络安全服务方案!
这一系列文章总共分为四篇,Akamai将结合自身技术团队的了解,Akamai与全球客户合作过程中应对该漏洞和其他安全隐患所积累的经验,以及Akamai对整个互联网流量的洞察,向大家介绍Log4j漏洞的起因、传播范围、利用方式、演变路径,以及最重要的:我们所有人都需要从中吸取的教训。
这就开始吧,本篇主要介绍Log4j漏洞的一些背景信息。
2021年11月24日,Apache基金会接到通知,称已被广泛使用的,基于Java的日志库工具Log4j存在重大漏洞,可能导致隐私信息泄漏和远程代码执行(RCE)。而该漏洞自2013年就一直存在了。
第二天,Apache基金会保留了CVE-2021-44228并开始研究解决方案。接下来的12天里,为了解决此问题,他们对源代码进行了多处修改,并于2021年12月9日公开披露了这个漏洞。
公布后,围绕该漏洞开始出现如洪水般的攻击尝试,并且在那之后,攻击规模和范围一直以惊人的速度增长。
要真正理解该漏洞,首先需要知道Log4j到底是什么。Log4j是Java社区中一个被开发者广泛使用的库,提供了一个简单但强大的框架,可用于记录错误信息、诊断信息等。
Log4j提供了很多让人印象深刻的功能,其中之一是将日志记录至多个目标位置,包括但不限于控制台、文件、远程TCP服务器、Syslog、NT Event Log以及电子邮件。此外,它还支持对日志消息、日志事件、自定义布局等内容进行分层过滤。
简而言之,Log4j提供了完整丰富的功能,使其受到开发者的广泛欢迎,从而导致从Web应用程序到嵌入式设备,各种地方都能见到Log4j的身影。
Log4j支持多种强大功能,其中最知名的功能之一应该是查找(Lookup)。该功能使得开发者可以将变量或表达式嵌入到Log4j在进行输出之前自动评估的文本中。例如,开发者可以编写代码将下列文本记入日志:
“${date:MM-dd-yyyy} All Systems Good”
TOP