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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/jelasin/cve-2026-41089
Анализ уязвимостейЭксплуатацияСетевая безопасностьТестирование на ПроникновениеRed TeamingЭксплуатация Бинарных Файлов
GitHubjelasin/cve-2026-41089

CVE-2026-41089

Pre-auth PoC для CVE-2026-41089 — переполнение стека Netlogon CLDAP через UDP/389, вызывающее сбой LSASS/перезагрузку DC. Включает скрипт эксплойта, анализ первопричины, обнаружение и рекомендации по смягчению последствий.

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

Популярное

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

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

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

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

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

CVE-2026-41089

 ██████╗██╗   ██╗███████╗    ██╗  ██╗ ██╗ ██████╗  ██████╗
██╔════╝██║   ██║██╔════╝    ██║  ██║███║██╔═████╗██╔═████╗
██║     ██║   ██║█████╗      ███████║╚██║██║██╔██║██║██╔██║
██║     ╚██╗ ██╔╝██╔══╝      ██╔══██║ ██║████╔╝██║████╔╝██║
╚██████╗ ╚████╔╝ ███████╗    ██║  ██║ ██║╚██████╔╝╚██████╔╝
 ╚═════╝  ╚═══╝  ╚══════╝    ╚═╝  ╚═╝ ╚═╝ ╚═════╝  ╚═════╝

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

CVSS CWE Python License


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

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

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

python3 poc.py 10.0.50.21 corp.local

PoC отправляет обычный ping, затем 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-байтовой границы.

I_NetLogonLdapLookupEx
  -> NlGetLocalPingResponse           // 528-byte stack buffer
    -> LogonRequestHandler
      -> BuildSamLogonResponse
        -> NetpLogonPutUnicodeString   // byte/WCHAR size confusion

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

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

# Default overflow attempt
python3 poc.py 10.0.50.21 corp.local -l 130

# Larger payload, longer timeout for slow networks
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". Длинное имя переполняет 528-байтовый стековый буфер. Если LSASS падает, вызов recv завершается по таймауту.
  3. Фаза 3. Подождите заданную задержку. Отправьте обычный ping. Отсутствие ответа означает, что LSASS остановился.

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

Обнаружение

Сеть. Ищите CLDAP-запросы поиска с атрибутом фильтра «User» длиннее 20–30 символов. Обычные ping-запросы DC Locator используют короткие имена служебных учётных записей.

Хост. Следите за падениями LSASS, связанными с netlogon.dll (Event ID 1000). Включите отладочное журналирование Netlogon:

nltest /dbflag:0x2080ffff

Смягчение последствий

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

Ссылки

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

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

MIT License

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