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

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

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

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

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

Категории

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

Популярное

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

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

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

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

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

cve-2019-15107-lab

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

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

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)
  3. Исправленная/пропатченная версия: 1.930 и выше
  4. Тип уязвимости: Некорректная нейтрализация специальных элементов, используемых в командах ОС (CWE-78)
  5. Оценка 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.

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