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

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

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

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

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

Категории

Все категории
Loading categories
cve-2025-9074-poc — Демонстрация уязвимости Docker Desktop, опубликованной 20 августа 2025 года (исправленной). | Kitploit
Инструменты/GitHubGitHub/xrayzen/cve-2025-9074-poc
Повышение привилегийБезопасность контейнеровАнализ уязвимостейЭксплуатацияБезопасность облачных средОбучение и Образование
GitHubxrayzen/cve-2025-9074-poc

cve-2025-9074-poc

Демонстрация уязвимости Docker Desktop, опубликованной 20 августа 2025 года (исправленной).

Репозиторий
21 год назадЕщё не проверено

Популярное

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

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

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

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

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

CVE-2025-9074 (учебный PoC / код доказательства концепции)

Этот репозиторий содержит PoC, демонстрирующий в образовательных целях риск создания привилегированного контейнера с доступом на чтение/запись к файловой системе хоста через неаутентифицированный удалённый API Docker Engine.
Исполняемый файл — poc.go.

Важно: используйте этот PoC только в образовательных и защитных целях. Запрещается запуск в чужих средах или на системах без разрешения.

Оценка опасности

  • Общая оценка: критическая
  • Предполагаемая базовая оценка CVSS v3.1: 9.8 (AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H)
  • Обоснование:
    • Доступ к TCP/2375 без аутентификации → PR:N, UI:N, AV:N
    • Привилегированный контейнер + bind mount хоста приводят к изменению области воздействия и высокому влиянию на конфиденциальность/целостность/доступность → S:C, C/I:A:H
    • Атака выполняется всего несколькими HTTP-запросами к API Docker Engine → AC:L
  • Область воздействия:
    • Вся ОС хоста, другие контейнеры, активы в той же сети (включая кражу учётных данных и горизонтальное перемещение)
  • Требуемые права:
    • Без аутентификации (PR:N). Права администратора не требуются

Предыстория

  • Docker Engine предоставляет удалённый API, управлять которым можно через такие конечные точки, как /version, /info, /containers/create.
  • Если контейнер доступен извне, в некоторых случаях можно без аутентификации создавать контейнеры, предоставлять привилегии и выполнять bind mount каталогов хоста.
  • В среде Windows + Docker Desktop существуют пути монтирования, позволяющие получить доступ к дискам Windows-хоста через /run/desktop/mnt/host/<drive> или /host_mnt/<drive>. Данный PoC использует этот путь для наглядной демонстрации воздействия путём создания файла на хосте.

Обзор работы

poc.go выполняет следующее:

  • Вызывает API Docker Engine по адресу http://192.168.65.7:2375 для проверки доступности (/version)
  • Проверяет список доступных образов (/images/json) и, если их нет, пытается загрузить alpine:latest
  • Создаёт привилегированный контейнер и монтирует диски хоста (например, C:, N:) в /host_root через bind mount
  • Записывает проверочный файл (например, cve_2025_9074_poc.txt) в /host_root из контейнера для наглядной демонстрации воздействия
  • После выполнения удаляет контейнер

Риски (предполагаемое злоупотребление)

  • Чтение и запись файловой системы хоста (в пределах прав, предоставляемых Docker Engine)
  • Хищение конфиденциальной информации (пароли, SSH-ключи и т.д.)
  • Подмена файлов системных настроек
  • Установка вредоносного ПО, закрепление в системе
  • Горизонтальное перемещение на другие контейнеры и в сеть
  • Повышение привилегий

Требования

  • Go 1.20+ или новее (работает через go run)
  • Запущенный Docker Desktop/Engine (с уязвимостью)
  • Запуск этого кода внутри Docker-контейнера, работающего на Docker Desktop/Engine (с уязвимостью)
  • Состояние, при котором API Docker Engine отвечает по адресу http://192.168.65.7:2375 (значение по умолчанию для PoC)

Использование

  1. Клонирование репозитория

    root@kitploit:~
    git clone <this-repo>
    cd cve-2025-9074
    
  2. Запуск PoC

    root@kitploit:~
    go run poc.go
    
  3. Пример вывода

    • Отображение успешной проверки доступности /version
    • Обнаружение используемого образа или загрузка alpine:latest
    • Создание привилегированного контейнера, результат создания файла на хосте
    • Отображение выдержки системной информации на основе /info
  4. Примеры curl для демонстрации (выводятся на экран)

    • Пример JSON для /containers/create, пример запуска /containers/{id}/start

Настройка конфигурации

  • Массив путей-кандидатов в attemptHostWrite (/run/desktop/mnt/host/<drive>, /host_mnt/<drive>, C:/ и т.д.) можно настроить под ваше окружение.
  • Используемый образ
    • Приоритет отдаётся существующим образам. Если их нет, alpine:latest загружается автоматически.

Примечания по тестовой среде

  • Содержит примеры путей монтирования, рассчитанные на работу в среде Windows + Docker Desktop.
  • В случае macOS пути хоста отличаются, поэтому их необходимо соответствующим образом изменить.
  • В зависимости от версии и настроек Docker Desktop PoC может не сработать (= безопасно).

Отказ от ответственности

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

Лицензия

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