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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-41089 — CVE-2026-41089 PoC — переполнение буфера стека Netlogon CLDAP (CVSS 9.8 КРИТИЧЕСКИЙ) | Kitploit
Инструменты/GitHubGitHub/0xabcd01/cve-2026-41089
Анализ уязвимостейЭксплуатацияТестирование на ПроникновениеОбучение и ОбразованиеЭксплуатация Бинарных Файлов
GitHub0xabcd01/cve-2026-41089

CVE-2026-41089

CVE-2026-41089 PoC — переполнение буфера стека Netlogon CLDAP (CVSS 9.8 КРИТИЧЕСКИЙ)

Репозиторий
2096743 месяцев назадПроверено Kitploit

Популярное

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

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

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

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

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

CVE-2026-41089

root@kitploit:~
 ██████╗██╗   ██╗███████╗    ██╗  ██╗ ██╗ ██████╗  ██████╗
██╔════╝██║   ██║██╔════╝    ██║  ██║███║██╔═████╗██╔═████╗
██║     ██║   ██║█████╗      ███████║╚██║██║██╔██║██║██╔██║
██║     ╚██╗ ██╔╝██╔══╝      ██╔══██║ ██║████╔╝██║████╔╝██║
╚██████╗ ╚████╔╝ ███████╗    ██║  ██║ ██║╚██████╔╝╚██████╔╝
 ╚═════╝  ╚═══╝  ╚══════╝    ╚═╝  ╚═╝ ╚═╝ ╚═════╝  ╚═════╝

Удалённое выполнение кода через Netlogon в Windows из-за переполнения стекового буфера CLDAP

CVSS CWE Python License


Один сформированный UDP-пакет на порт 389 переполняет 528-байтный стековый буфер внутри LSASS на любом незапатченном контроллере домена Windows. Процесс падает. Контроллер домена перезагружается примерно через 60 секунд. Аутентификация не требуется.

Вектор атакиUDP 389 (CLDAP), до аутентификации, без учётных данных
ВоздействиеСбой LSASS, перезагрузка DC, возможное RCE
CWECWE-121 (Переполнение стека)
Вектор CVSSAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Опубликовано12 мая 2026 г., Microsoft

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

root@kitploit:~
python3 poc.py 10.0.50.21 corp.local

Три фазы: обычный ping для подтверждения, что DC жив, ping с переполнением с именем пользователя длиной 130 символов, проверка работоспособности. Занимает ~10 секунд.

Затронутые системы

Каждая версия Windows Server, работающая как контроллер домена:

Версия сервераИсправлено в
2012 / 2012 R2Только патчи по программе ESU
201610.0.14393.9140
201910.0.17763.8755
202210.0.20348.5074
2022 23H210.0.25398.2330
202510.0.26100.32772

Первопричина

NlGetLocalPingResponse выделяет 528-байтный стековый буфер и передаёт его BuildSamLogonResponse. Эта функция вызывает NetpLogonPutUnicodeString для записи имени сервера, имени домена, GUID и управляемого атакующим имени пользователя в буфер.

Ошибка: NetpLogonPutUnicodeString получает максимальную длину в байтах, но интерпретирует её как количество WCHAR. Каждая строка, записанная через этот путь, занимает вдвое больше ожидаемого места. Поле "User" в фильтре CLDAP (до 130 WCHAR, 260 байт по сети) превышает комбинированную запись за границу 528 байт.

root@kitploit:~
I_NetLogonLdapLookupEx
  -> NlGetLocalPingResponse           // 528-байтный стековый буфер
    -> LogonRequestHandler
      -> BuildSamLogonResponse
        -> NetpLogonPutUnicodeString   // путаница байт/WCHAR

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

root@kitploit:~
python3 poc.py <target_ip> <domain_name> [options]
ФлагОписаниеПо умолчанию
-lДлина имени пользователя в символах130
-tТаймаут приёма UDP (сек)5
-dЗадержка между переполнением и проверкой работоспособности (сек)3
root@kitploit:~
# Тест соединения (короткое имя, без переполнения)
python3 poc.py 10.0.50.21 corp.local

# Попытка переполнения по умолчанию
python3 poc.py 10.0.50.21 corp.local -l 130

# Более крупная нагрузка, больший таймаут для медленных сетей
python3 poc.py 10.0.50.21 corp.local -l 200 -t 10

Требуется Python 3.8+. Сторонние пакеты не нужны.

Как это работает

  1. Фаза 1. Обычный CLDAP ping с именем пользователя "testuser" подтверждает, что цель отвечает на UDP 389.
  2. Фаза 2. Та же структура пакета, но имя пользователя состоит из 130+ символов "A". Это выталкивает сериализованные данные за границу стекового буфера. Если LSASS падает, recv завершается по таймауту.
  3. Фаза 3. После настраиваемой задержки второй обычный ping проверяет, жив ли DC. Отсутствие ответа = подтверждение сбоя LSASS.

Переполнение вызывает отказ в обслуживании (сбой LSASS, перезагрузка DC). Теоретически возможно RCE через повреждение стека. Данный PoC не пытается выполнить код.

Обнаружение

Сеть. Анализируйте трафик CLDAP на предмет поисковых запросов, где атрибут фильтра "User" превышает 20–30 символов. Обычные ping локатора DC используют имена учётных записей служб (короткие строки).

Хост. Отслеживайте сбои LSASS, связанные с netlogon.dll (ID события 1000). Включите отладочное логирование Netlogon:

root@kitploit:~
nltest /dbflag:0x2080ffff

Смягчение

  • Установите обновление безопасности Microsoft за май 2026 г.
  • Ограничьте входящий UDP 389 доверенными подсетями управления.
  • Для устаревших версий серверов, вышедших из ESU: 0patch предлагает микропатчи (исправление одной инструкцией: mov edx, 0x40 для уменьшения максимальной длины имени пользователя вдвое).

Ссылки

  • Руководство по обновлениям безопасности Microsoft
  • NVD - CVE-2026-41089
  • Анализ и микропатч от 0patch
  • Обратная разработка от Aretiq AI
  • RFC 4511 - LDAP
  • MS-ADTS - CLDAP DC Locator

Правовая информация. Этот код существует для авторизованных исследований в области безопасности и обучения. Тестируйте только на системах, которые вам принадлежат или на которые у вас есть письменное разрешение. Несанкционированный доступ к компьютерным системам нарушает CFAA и аналогичные законы в большинстве юрисдикций.

Лицензия MIT

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