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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-35196 — Вторая CVE — снова удалённое выполнение кода | Kitploit
Инструменты/GitHubGitHub/kx00007/cve-2026-35196
Анализ уязвимостейАнализ КодаЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и Образование
GitHubkx00007/cve-2026-35196

CVE-2026-35196

Вторая CVE — снова удалённое выполнение кода

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

Популярное

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

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

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

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

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

CVE-2026-35196 · Chamilo LMS · Внедрение команд ОС → RCE


CVE CVSS CWE Auth Type Shell



Исследователь: K
Тип раскрытия: Ответственное раскрытие
Статус: Исправлено Затронутый продукт: Chamilo LMS < 2.0 (подтверждено на v1.11.32)


📋 Сводка об уязвимости


🔍 Описание

Критическая уязвимость внедрения команд ОС существует в действии export_all_certificates файла main/inc/ajax/gradebook.ajax.php в Chamilo LMS v1.11.32.

Приложение получает код курса через api_get_course_id(), который читает значение напрямую из $_SESSION['_cid']. Это значение, полученное из сессии, конкатенируется без санитизации в вызов shell_exec() — без escapeshellarg(), без проверки по белому списку, без контроля типов.

Злоумышленник, способный манипулировать или отравить переменную _cid своей сессии (через отравление сессии, цепочки IDOR или другие примитивы манипуляции сессией), может внедрить произвольные метасимволы оболочки и добиться полного удалённого выполнения кода от имени пользователя веб-сервера (www-data).


🧩 Анализ первопричины

Уязвимый файл: main/inc/ajax/gradebook.ajax.php
Уязвимая функция: export_all_certificates

Когда пользователь запускает действие export_all_certificates, скрипт пытается запустить фоновый процесс для обработки сертификатов:

root@kitploit:~
$courseCode = api_get_course_id(); // Retrieves the value from $_SESSION['_cid']
$sessionId = api_get_session_id();
// ...
$commandScript = api_get_path(SYS_CODE_PATH).'gradebook/cli/export_all_certificates.php';
$userList = implode(',', $userList);

// Flaw: Variables like $courseCode are passed directly to the shell without escapeshellarg()
shell_exec("php $commandScript $courseCode $sessionId $categoryId $userList > /dev/null &");

Поскольку приложение неявно доверяет содержимому переменных сессии и не экранирует их должным образом перед передачей системной оболочке, злоумышленник с изменённой сессией может добавлять и выполнять вредоносные команды. Например, если _cid содержит "; touch /tmp/remote_code_by_k; #", команда, интерпретируемая оболочкой bash/sh, становится:

root@kitploit:~
php /var/www/chamilo/main/gradebook/cli/export_all_certificates.php ; touch /tmp/remote_code_by_k; # ... > /dev/null &

Оболочка выполняет CLI-скрипт, затем внедрённую полезную нагрузку и игнорирует остальную часть исходной командной строки.

💣 Доказательство концепции

  1. Отравление сессии: Злоумышленник должен сначала повлиять на переменную $_SESSION['_cid']. Этого можно достичь, скомбинировав данную уязвимость с уязвимостью отравления сессии или изменив значение кода курса через IDOR или небезопасную обработку параметров в другом месте приложения, чтобы обновить контекст своей сессии.
  2. Внедрение полезной нагрузки: Установите переменную сессии _cid в значение: "; [MALICIOUS_COMMAND]; #"
  3. Выполнение: Отправьте GET-запрос на: /main/inc/ajax/gradebook.ajax.php?a=export_all_certificates&cat_id=1 с отравленной cookie сессии.
  4. Результат: Сервер вслепую выполняет внедрённую команду с привилегиями пользователя веб-приложения (www-data).

📊 Анализ воздействия


🛡️ Рекомендации

  • Применяйте escapeshellarg(): Оборачивайте все переменные, полученные от пользователя (например, $courseCode, $sessionId и $userList), в PHP-функцию escapeshellarg() перед передачей в shell_exec(), чтобы нейтрализовать произвольные метасимволы ОС.
  • Обеспечьте строгую валидацию сессии: Убедитесь, что переменные, хранящиеся в состоянии сессии (например, $_SESSION['_cid']), строго типизированы и санитизированы, чтобы потенциальные атаки «отравления сессии» или цепочки IDOR блокировались на входе.
  • Соблюдайте принцип минимальных привилегий: Настройте службу веб-сервера ( www-data) с ограниченными правами на запись в файловой системе и ограничьте доступ приложения только необходимыми исполняемыми файлами оболочки Linux, чтобы снизить возможности пост-эксплуатации.

🧪 Окружение

📎 Ссылки

  • Официальный репозиторий Chamilo LMS
  • CWE-78: Внедрение команд ОС
  • OWASP: Внедрение команд
  • CVE-2026-29041 — Предыдущая RCE-уязвимость Chamilo (CWE-434, CVSS 8.8) от того же исследователя

👤 Исследователь

root@kitploit:~
Handle  : K
GitHub  : https://github.com/kx00007
Focus   : Server-Side Vulnerability RCE, CVE Hunting, Vulnerability Research, Exploit Development
Prior   : CVE-2026-29041 (Chamilo LMS — Authenticated RCE via File Upload)

⚡Постарайся сильнее.

Скачать инструмент
ПолеСведения
ПродуктChamilo LMS
Затронутая версия< 2.0 (подтверждено на v1.11.32)
УязвимостьВнедрение команд ОС
CWECWE-78 — Некорректная нейтрализация специальных элементов, используемых в команде ОС
Оценка CVSSv3.18.8 (ВЫСОКАЯ)
ВекторCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Требуется аутентификацияДа (любой аутентифицированный пользователь с отравленной сессией)
Тип эксплуатацииАутентифицированное удалённое выполнение кода
Уязвимый файлmain/inc/ajax/gradebook.ajax.php
АспектВоздействие
КонфиденциальностьПолный доступ на чтение — исходный код, конфигурации, учётные данные БД, /etc/passwd
ЦелостностьПроизвольная запись файлов, развёртывание веб-шелла, манипуляция базой данных
ДоступностьНарушение работы сервиса, уничтожение файловой системы, развёртывание программ-вымогателей
Область воздействияПроцесс веб-сервера (www-data); потенциальное боковое перемещение из-за раскрытия учётных данных
КомпонентСведения
ОСUbuntu Server (Docker)
Веб-серверApache / Nginx
PHP7.x / 8.x
ПриложениеChamilo LMS v1.11.32-v2.0
Оболочка/bin/sh → bash