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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-D0cker — Эксплойт proof-of-concept для критической уязвимости побега из контейнера runC (CVE-2026-Pending) с состоянием гонки на символьных ссылках, включая PoC на Go, анализ и рекомендации по патчу. | Kitploit
Инструменты/GitHubGitHub/nicetop1027/cve-2026-d0cker
Повышение привилегийБезопасность контейнеровАнализ уязвимостейЭксплуатацияОбучение и ОбразованиеПобег из Контейнера
GitHubnicetop1027/cve-2026-d0cker

CVE-2026-D0cker

Эксплойт proof-of-concept для критической уязвимости побега из контейнера runC (CVE-2026-Pending) с состоянием гонки на символьных ссылках, включая PoC на Go, анализ и рекомендации по патчу.

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

Популярное

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

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

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

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

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

CVE-2026-Pending: Побег из контейнера через уязвимость runC maskPaths

Серьёзность: Критическая (CVSS 9.8)
Компонент: opencontainers/runc (libcontainer)
Тип уязвимости: CWE-59: Неправильное разрешение ссылок перед доступом к файлу ('Link Following')

🚨 Краткое описание

Критическая уязвимость существует в функции maskPaths в runc. При маскировании чувствительных путей (например, /proc/kcore) внутри контейнера runc использует os.OpenFile(path, O_PATH, 0) без флага O_NOFOLLOW. Это позволяет вредоносному процессу в контейнере заменить целевой путь симлинком на чувствительный файл хоста (например, /etc/shadow), в результате чего runc выполняет операции монтирования с файлом хоста, а не с путём контейнера.

💥 Доказательство концепции эксплойта

Прилагаемый файл exploit.go демонстрирует поведение ядра, которое позволяет осуществить этот обход.

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

Скомпилируйте и запустите в среде Linux (или в контейнере с CAP_SYS_ADMIN, если тестируете рекурсию):

root@kitploit:~
go run exploit.go

Анализ кода эксплойта

root@kitploit:~
// Vulnerable Code Pattern in runC:
// 1. Path is typically provided as a string (e.g. from config)
// 2. runC calls os.OpenFile(path, O_PATH...)
// 3. MISSING: unix.O_NOFOLLOW flag
// Result: Kernel follows symlink if attacker swapped the path.

🛡️ Устранение уязвимости

Требуется патч: Обновите libcontainer/rootfs_linux.go, чтобы добавить unix.O_NOFOLLOW при открытии целевых путей для маскирования.

root@kitploit:~
- dstFh, err := os.OpenFile(path, unix.O_PATH|unix.O_CLOEXEC, 0)
+ dstFh, err := os.OpenFile(path, unix.O_PATH|unix.O_CLOEXEC|unix.O_NOFOLLOW, 0)

📂 Структура репозитория

  • exploit.go: Функциональный код PoC на Go.
  • analysis.md: Подробный технический разбор состояния гонки.
  • cve_draft.md: Шаблон отчёта для подачи.

Отказ от ответственности: Этот код предназначен только для исследований в области безопасности и образовательных целей.

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