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

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

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

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

工具目录

分类

查看所有分类
Loading categories
HTB-Pterodactyl-RCE-CVE-2025-49132 — This repo contains RCE exploit for Pterodactyl htb machine | Kitploit
工具/GitHubGitHub/symphony2colour/htb-pterodactyl-rce-cve-2025-49132
Payload GenerationVulnerability AnalysisExploitationWeb Application ExploitationCTFPenetration TestingLearning & EducationLabs & Practice

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
GitHub
symphony2colour/htb-pterodactyl-rce-cve-2025-49132

HTB-Pterodactyl-RCE-CVE-2025-49132

This repo contains RCE exploit for Pterodactyl htb machine

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

Pterodactyl Panel Locale RCE (CVE-2025-49132) — 教育 PoC

scope cve python license

仅供授权测试和防御学习使用。
本仓库仅适用于受控的实验环境(例如 CTF/HTB 风格的环境),在此环境中你拥有目标的所有权或已获得明确的书面授权进行测试。

背景

本仓库包含一个教育性 Python 概念验证 (pterodactyl_rce.py),针对影响 Pterodactyl Panel 版本 1.11.11 之前 的真实漏洞。在存在漏洞的配置下,未认证攻击者可能通过 /locales/locale.json 端点,利用对 locale 和 namespace 参数的不当处理实现远程代码执行。

此 PoC 变体针对已安装 PHP-PEAR 的环境,并在 Hack The Box 平台的退役机器 Pterodactyl 上构建并验证:https://app.hackthebox.com/machines/Pterodactyl。它也可能在满足相同条件的其他实验室设置中有效。

漏洞参考

  • GitHub Advisory: GHSA-24wv-6c99-f843 (CVE-2025-49132)
  • 受影响版本: Pterodactyl Panel < 1.11.11
  • 修复版本: v1.11.11 (补丁提交 24c82b0…)

高层思路(PoC 工作原理)

在高层,PoC 串联以下步骤:

  1. 使用 msfvenom 生成一个 Linux x64 反向 TCP ELF payload。
  2. 通过 HTTP 服务器提供该 ELF 文件(一次请求后退出)。
  3. 滥用存在漏洞的 /locales/locale.json 处理逻辑,将一个 PHP “stager” 写入 /tmp(借助 PEAR 的 pearcmd config-create 技巧)。
  4. 通过 locales 端点触发 stager,使其:
    • 将 ELF 下载到 /tmp,
    • 赋予可执行权限,
    • 执行以连接回你的监听器。

脚本在“上传”步骤中使用原始的 HTTP 客户端而非 curl,因为某些工具可能规范化或编码字符,从而破坏精心构造的请求。

注意: 本 README 有意保持在防御/教育层面。仅在你被允许测试的环境中使用代码。


要求(本地)

  • Python 3.10+(仅使用标准库测试)
  • msfvenom 在 $PATH 中可用(Metasploit Framework)
  • nc(netcat)(如果你希望 PoC 自动启动监听器)
  • 你的实验室机器与实验室 Pterodactyl 实例之间的网络连接

配置

脚本当前期望源代码中存在一个面板 HTB 主机名:

root@kitploit:~
host = "panel.pterodactyl.htb"

此外,硬编码的 PHP-PEAR 路径设置为:../../../../../usr/share/php/PEAR。如果你在 Pterodactyl 机器之外测试,需要根据你的本地配置调整此路径。


用法(仅限受控实验室)

1)基本运行(自动监听器启用)

root@kitploit:~
python3 pterodactyl_rce.py <LHOST> <LPORT>
  • <LHOST>:你的回调 IP,实验室服务器可访问
  • <LPORT>:接收反弹 Shell 的端口

2)不使用自动监听器运行

如果你希望自己运行监听器:

root@kitploit:~
python3 pterodactyl_rce.py <LHOST> <LPORT> --no-listen

然后在另一个终端中:

root@kitploit:~
nc -lvnp <LPORT>

示例(占位符)

root@kitploit:~
python3 pterodactyl_rce.py 10.10.14.225 5555

输出 / 预期效果

典型流程:

  • 生成一个 ELF payload(随机文件名,如 shell_ab12cd34)
  • 在 :8080 上启动一次性 HTTP 服务器
  • 在 /tmp/<random>.php 下创建一个 PHP stager
  • 触发 stager
  • 触发后删除本地 ELF 文件
  • 打印提示升级 Shell(PTY)的信息

成功利用的截图:

Reverse shell


已知问题 / 实验室说明

  • 实验室不稳定: 目标机器/服务可能不稳定(超时、间歇性 5xx、执行延迟)。如果执行失败,稍等片刻后重试。
  • 旧的 payload 复用: 环境有时可能触发之前上传/放置的文件。脚本仅在攻击机上清理本地文件,但不删除目标机器 /tmp/ 目录中的文件。
    解决方法:
    • 重新运行并使用新的随机 payload 名称(本脚本默认行为)。
    • 将 http.server 初始端口从 8080 改为其他端口。
    • 更改你的监听端口(例如 4444 → 5555)并重新生成 payload。
    • 确保你的 HTTP 服务器正在提供当前文件(停止之前的服务器/监听器)。
    • 如果你有访问权限,手动删除目标上的旧 /tmp/<name>.php 文件;否则等待一段时间再重试。

防御指南(如何修复 / 检测)

补丁 / 缓解措施

  • 升级 Pterodactyl Panel 到 v1.11.11 或更高版本。
  • 除了打补丁外,没有应用程序内解决方案;你可以在 Web 服务器层面阻止 /locales/locale.json 端点,但这可能破坏本地化功能。

检测思路

查找类似可疑请求:

  • 对 /locales/locale.json 的请求,其 locale= 参数包含异常的目录遍历序列
  • 奇怪的 namespace= 值(意外的名称、长字符串、奇怪字符)
  • 面板主机上 /tmp/ 目录中突然出现意外文件

将 Web 日志与以下内容关联:

  • www 用户 / PHP-FPM 用户 spawn 的新进程
  • 向非标准目标/端口的出站连接
  • 面板主机上意外使用 curl/wget

关于负责任使用的说明

  • 不要扫描或测试公共实例。
  • 如果你是易受攻击实例的操作者,请将此视为严重级别并立即打补丁。

致谢 / 鸣谢

  • 原始 PoC: Pterodactyl Panel (< 1.11.11) — Remote Code Execution (RCE)(EDB-ID: 52341, CVE-2025-49132)由 Zen-kun04 编写
    https://www.exploit-db.com/exploits/52341
  • 报告者 / 发现荣誉: GitHub Advisory 认可 @azimoff337 报告了 GHSA-24wv-6c99-f843 / CVE-2025-49132。
  • GitHub Advisory Database / CVE 流程: 用于跟踪和发布漏洞详情。
  • Hack The Box(HTB): 本 PoC 在受控的 HTB 风格实验室环境中构建/验证,用于学习和防御研究。
    不包含对活跃 HTB 内容的剧透。
下载工具