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

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

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

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

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

Категории

Все категории
Loading categories
cve-2019-15107-lab — Лаборатория на базе Docker, демонстрирующая CVE-2019-15107 — неаутентифицированное RCE в Webmin, охватывающая развёртывание, эксплуатацию, обнаружение и устранение. | Kitploit
Инструменты/GitHubGitHub/shambhavim18/cve-2019-15107-lab
Оборонительные ИнструментыБезопасность контейнеровАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и ОбразованиеЛаборатории и Практика

Популярное

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

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

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

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

Смотреть все инструменты →
GitHub
shambhavim18/cve-2019-15107-lab

cve-2019-15107-lab

Лаборатория на базе Docker, демонстрирующая CVE-2019-15107 — неаутентифицированное RCE в Webmin, охватывающая развёртывание, эксплуатацию, обнаружение и устранение.

Репозиторий
10 ч 37 мин назадЕщё не проверено
Поделиться

CVE-2019-15107 – Лаборатория неаутентифицированного RCE в Webmin

1. Обзор проекта

Этот проект демонстрирует CVE-2019-15107 — критическую уязвимость удалённого выполнения кода (RCE) в Webmin — в контролируемой и изолированной среде Docker. Лаборатория охватывает полный жизненный цикл уязвимости: от развёртывания и эксплуатации до обнаружения и устранения.

2. Предварительные требования и требования к окружению

Предварительные требования

  1. Docker Desktop (установлен и запущен)
  2. Docker Compose
  3. Терминал / PowerShell с поддержкой curl.exe

Требования к окружению

  1. ОС (локальная хостовая среда): Windows / Linux / macOS

  2. Доступность порта: порт 10000 должен быть свободен на хост-машине.

3. Уязвимое приложение и версия

  1. Приложение: Webmin
  2. Уязвимая версия: 1.910 (затронутые версии: 1.880–1.920)
  • Исправленная/пропатченная версия: 1.930 и выше
  • Тип уязвимости: Некорректная нейтрализация специальных элементов, используемых в командах ОС (CWE-78)
  • Оценка CVSS: 9.8 (критическая)
  • 4. Шаги установки и настройки

    1. Клонируйте или скачайте репозиторий этого проекта на локальную машину.

    2. Откройте терминал и перейдите в каталог проекта, содержащий docker-compose.yml.

    3. Убедитесь, что Docker Desktop активен в вашей системе.

    5. Как запустить и остановить лабораторию

    Как запустить лабораторию

    Выполните следующую команду из корневого каталога проекта, чтобы загрузить и запустить уязвимый контейнер в фоновом режиме: docker-compose up -d

    Проверить статус контейнера можно командой: docker compose ps

    Откройте интерфейс приложения в веб-браузере по адресу: https://localhost:10000 (примите предупреждение о локальном SSL-сертификате).

    Как остановить лабораторию

    Чтобы остановить и удалить запущенную среду контейнера, выполните: docker-compose down

    6. Как эксплуатировать уязвимость

    Уязвимость существует в неаутентифицированной конечной точке смены пароля (/password_change.cgi), где входные параметры передаются напрямую в системную оболочку без должной санитизации.

    Выполните следующую команду в терминале (PowerShell/Bash), чтобы запустить диагностическую команду (id) в качестве proof-of-concept:

    curl.exe -k https://localhost:10000/password_change.cgi -e "https://localhost:10000" -d "user=root&pam=&old=test|id&new1=test&new2=test"

    7. Ожидаемые результаты

    Успешная эксплуатация: сервер обрабатывает внедрённый символ вертикальной черты (|), что приводит к неаутентифицированному выполнению команд с привилегиями root. Терминал выведет HTML-ответ вместе с обратной связью от оболочки контейнера (uid=0(root)), подтверждая успешное удалённое выполнение кода.

    8. Как запустить механизм обнаружения

    Обнаружение этой уязвимости можно выполнить с помощью:

    1. Идентификации версии: проверка версии запущенного экземпляра Webmin на предмет попадания в уязвимый диапазон (1.880–1.920).

    2. Мониторинга сети / журналов: анализ журналов доступа веб-сервера или WAF на предмет входящих HTTP POST-запросов к /password_change.cgi, содержащих подозрительные управляющие символы оболочки (такие как | или ;) внутри значений параметров.

    9. Устранение уязвимости

    Для смягчения и устранения CVE-2019-15107:

    1. Обновление: обновите Webmin до версии 1.930 или выше, которая должным образом санитизирует входные данные, передаваемые в нижележащие модули.

    2. Контроль доступа: ограничьте сетевой доступ к порту 10000 с помощью межсетевых экранов или VPN-туннелей, чтобы предотвратить прямое воздействие из недоверенных сетей.

    10. Примечания по устранению неполадок

    1. Демон Docker не запущен: если возникают ошибки подключения, убедитесь, что Docker Desktop полностью запущен, и проверьте с помощью docker version.

    2. Конфликт портов (10000 уже используется): убедитесь, что никакое другое локальное приложение или служба не занимает порт 10000.

    3. Ошибка синтаксиса curl в PowerShell: используйте curl.exe вместо стандартного curl в Windows PowerShell, чтобы избежать проблем с сопоставлением параметров из-за встроенного псевдонима Invoke-WebRequest в PowerShell.

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