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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/grabesec/xcp_ng_cve-2026-43284_tester
Анализ уязвимостейЭксплуатацияТестирование на ПроникновениеБезопасность облачных средОбучение и ОбразованиеЭксплуатация Бинарных ФайловЛаборатории и Практика
GitHubgrabesec/xcp_ng_cve-2026-43284_tester

XCP_ng_CVE-2026-43284_tester

Тестер для CVE-2026-43284

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

Популярное

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

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

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

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

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

XCP-ng Dirty Frag Diagnostic — CVE-2026-43284

Platform Kernel CVE CVSS License

Диагностический инструмент сообщества для определения того, подвержен ли узел XCP-ng dom0 уязвимости CVE-2026-43284 («Dirty Frag»), локальному повышению привилегий в подсистеме xfrm-ESP ядра Linux.

TL;DR — Все текущие версии XCP-ng (8.1, 8.2, 8.3), работающие со стандартным ядром dom0 4.19, находятся в диапазоне уязвимого кода. Официальный патч XCP-ng по состоянию на май 2026 года не опубликован. Этот инструмент точно сообщает, подвержен ли ваш узел атаке, и предлагает безопасное временное смягчение.


Предыстория

«Dirty Frag» — это уязвимость локального повышения привилегий, публично раскрытая в мае 2026 года исследователем Hyunwoo Kim (@v4bel). Она эксплуатирует быстрый путь дешифрования на месте в подсистеме IPsec ESP ядра Linux, представленный в январе 2017 года (ядро 4.14+). Рабочий публичный proof-of-concept даёт рутовую оболочку через стандартные системные вызовы без необходимости в эксплойтах ядра.

Были опубликованы два CVE:

CVEПодсистемаПредставленаПрименимо к XCP-ng 4.19?
CVE-2026-43284xfrm-ESP (esp4/esp6)ядро 4.14, январь 2017ДА
CVE-2026-43500RxRPC (rxkad)ядро 6.4, июнь 2023Нет — rxrpc.ko не поставляется

В XCP-ng уязвимость CVE-2026-43500 не нужна для эксплуатации. Пути esp4 (CVE-2026-43284) достаточно, поскольку в XCP-ng dom0 отсутствует политика AppArmor и разрешается создание непривилегированных пространств имён пользователей — единственное предусловие, необходимое для пути esp4. См. полный анализ в TECHNICAL.md.


Что делает этот инструмент

Диагностический скрипт проверяет необходимое и достаточное предусловие для CVE-2026-43284 на XCP-ng: может ли непривилегированный процесс задействовать механизм дешифрования на месте esp4 через интерфейс XFRM netlink внутри пространства имён пользователя.

Он не:

  • Пытается повысить привилегии
  • Записывает какие-либо эксплойты
  • Изменяет системные файлы
  • Оставляет постоянные артефакты (состояние XFRM очищается при выходе)

Безопасен для запуска на рабочем dom0.


Быстрый старт

root@kitploit:~
# Клонирование репозитория
git clone https://github.com/grabesec/XCP_ng_CVE-2026-43284_tester.git
cd XCP_ng_CVE-2026-43284_tester

# Запуск диагностики (от непривилегированного пользователя для максимальной доказательности)
python3 XCP_ng_CVE_2026_43284_tester.py

Примечание: По возможности запускайте от непривилегированного пользователя. Это имитирует реальную угрозу: скомпрометированный сервисный аккаунт или побег гостевой системы на dom0. Запуск от root тоже даёт корректный результат, но менее нагляден.


Ожидаемый вывод — уязвимый узел

root@kitploit:~
=================================================================
  XCP-ng Dirty Frag Diagnostic -- CVE-2026-43284
  xfrm-ESP Page-Cache Write / Local Privilege Escalation
=================================================================
  Kernel  : 4.19.0+1
  Host    : xcpng-prod-01
  PID     : 52306  |  UID: 1000
=================================================================

[Phase 0] Pre-flight environment checks
---------------------------------------------
[*] Unprivileged user namespaces : ALLOWED
[*] esp4 blacklist in modprobe.d  : NOT FOUND
[*] CVE-2026-43284 patch in kernel RPM : NOT FOUND

[Phase 1] Baseline esp4 module state
---------------------------------------------
[*] esp4 is DORMANT -- not currently loaded in the kernel.
    The autoload mechanism may fetch it on demand via XFRM.

[Phase 2] Attempting esp4 engagement from unprivileged namespace
---------------------------------------------
[*] Spawning child in isolated user+network namespace
    (unshare -U -n -r) -- simulating a non-root local attacker

[*] Child signal    : XFRM SA accepted by kernel
[*] esp4 refcount   : 0 (before)  ->  1 (now)
[*] /proc/modules   : esp4 16384 1 - Live 0xffffffffc0a12000

[Phase 3] Engineering verdict
=================================================================

  [!!!]  PROOF OF EXPOSURE -- CVE-2026-43284  [!!!]

  esp4 refcount increased: 0 -> 1

  An unprivileged process inside a user+network namespace
  successfully registered an XFRM Security Association and
  engaged the esp4 in-place decryption engine in the host
  kernel. This is the gate condition for CVE-2026-43284.

  XCP-ng-specific analysis:
    [FAIL] Kernel 4.19 carries the vulnerable code (since 4.14)
    [FAIL] User namespaces are open -- esp4 path is reachable
    [OK]   rxrpc.ko absent -- CVE-2026-43500 does not apply
    [FAIL] esp4 path alone is sufficient on this configuration

Ожидаемый вывод — смягчённый узел

root@kitploit:~
[Phase 0] Pre-flight environment checks
---------------------------------------------
[+] esp4 blacklist found in /etc/modprobe.d/
    Module-load mitigation appears to be in place.
...
[Phase 2] Attempting esp4 engagement from unprivileged namespace
---------------------------------------------
[+] XFRM state add was REJECTED by the kernel.
    The esp4 engine was not engaged from the namespace.

[RESULT] The namespace loophole did NOT grant esp4 access.

Смягчение

Автоматизированное (рекомендуется)

Прилагаемый скрипт mitigate.sh безопасно применяет смягчение со встроенным обнаружением IPsec для предотвращения нарушения туннелей:

root@kitploit:~
# Проверка текущего состояния (без изменений)
sudo ./mitigate.sh --check

# Применение смягчения (прерывается при обнаружении IPsec)
sudo ./mitigate.sh

# Отмена смягчения (после применения официального патча ядра)
sudo ./mitigate.sh --undo

Вручную

Вариант A — Узлы, НЕ использующие IPsec (большинство dom0):

root@kitploit:~
echo 'install esp4 /bin/false' > /etc/modprobe.d/dirtyfrag-cve-2026-43284.conf
rmmod esp4 2>/dev/null || true
echo 3 > /proc/sys/vm/drop_caches

Вариант B — Узлы, использующие IPsec (strongSwan / Libreswan):

НЕ блокируйте esp4 — это немедленно нарушит все туннели. Вместо этого:

  • Ограничьте доступ к оболочке dom0 минимальным набором доверенных учётных записей администраторов
  • Следите за объявлениями об обновлениях XCP-ng для официального патча ядра

⚠️ Это ЛОКАЛЬНОЕ повышение привилегий. Злоумышленник уже должен иметь оболочку или выполнение кода на dom0. Основная защита — ограничение доступа к dom0 в первую очередь. Root на dom0 = root на гипервизоре = все гостевые ВМ скомпрометированы.


Требования

ТребованиеПримечания
Python 3.6+Поставляется с XCP-ng 8.x dom0
iproute2 (команда ip)Поставляется с XCP-ng 8.x dom0
unshareЧасть util-linux, поставляется с XCP-ng 8.x dom0
Ядро LinuxЛюбое ядро 4.14–6.x на XCP-ng dom0

Внешние библиотеки Python не требуются. Установка через pip не нужна.


Файлы

root@kitploit:~
XCP_ng_CVE-2026-43284_tester/
├── XCP_ng_CVE_2026_43284_tester.py   # Диагностический скрипт — запустите его первым
├── mitigate.sh                        # Скрипт смягчения с обнаружением IPsec
├── README.md                          # Этот файл — быстрый старт и обзор
├── TECHNICAL.md                       # Глубокий технический анализ — цепочка атак,
│                                      # почему rxrpc не нужен на XCP-ng,
│                                      # объяснение внутренностей скрипта
├── CHANGELOG.md                       # История версий
└── LICENSE                            # MIT

Технические подробности

Полное объяснение:

  • Как механически работает Dirty Frag (примитив записи в кеш страниц)
  • Почему CVE-2026-43500 (RxRPC) неактуален для XCP-ng, несмотря на завершение цепочки в Ubuntu
  • Полная 6-шаговая цепочка атаки, специфичная для XCP-ng dom0
  • Как работает каждая часть диагностического скрипта

См. TECHNICAL.md.


Статус патча

Версия XCP-ngЯдроУязвим?Официальный патч?
8.3 LTS4.19 + патчи VatesДАНе опубликован по состоянию на май 2026 г.
8.24.19 + патчи VatesДАНе опубликован по состоянию на май 2026 г.
8.1 (EOL)4.19 + патчи VatesДАНе ожидается

Следите: https://xcp-ng.org/forum/topic/365/updates-announcements


Примечание об ответственном раскрытии

Этот инструмент проверяет только предусловие эксплуатации (пространство имён + доступ к esp4). Он не содержит, не воспроизводит и не ссылается на код эксплойта. Базовая уязвимость общеизвестна, имеет опубликованный proof-of-concept от оригинального исследователя и ей присвоены CVE. Цель инструмента — помочь администраторам XCP-ng определить свою подверженность и применить временные меры смягчения в ожидании официального патча ядра от Vates.


Ссылки

  • CVE-2026-43284 — NVD
  • Оригинальная статья — Hyunwoo Kim (@v4bel)
  • Блог безопасности Microsoft — предупреждение об активных атаках
  • Sysdig — руководство по обнаружению
  • Объявления об обновлениях XCP-ng
  • Коммит фикса ядра (upstream)

Автор

Rodrigo Gracia — Вклад в безопасность сообщества
Практик XCP-ng / Xen Orchestra
https://github.com/grabesec
Май 2026

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