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

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

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

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

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

Категории

Все категории
Loading categories
cve-2024-49113-ldap_nightmare_reproduction — Воспроизведение cve-2024-49113-ldap_nightmare_reproduction | Kitploit
Инструменты/GitHubGitHub/razureink/cve-2024-49113-ldap_nightmare_reproduction
Анализ уязвимостейЭксплуатацияТестирование на ПроникновениеОбучение и ОбразованиеRed TeamingЭксплуатация Бинарных ФайловЛаборатории и Практика
GitHubrazureink/cve-2024-49113-ldap_nightmare_reproduction

cve-2024-49113-ldap_nightmare_reproduction

Воспроизведение cve-2024-49113-ldap_nightmare_reproduction

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

Популярное

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

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

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

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

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

CVE-2024-49113 — LDAP Nightmare

Удаленное выполнение кода в LDAP-клиенте Windows (переполнение буфера в куче)

ПолеЗначение
CVECVE-2024-49113
ПсевдонимLDAP Nightmare
CVSS 3.19.8 — КРИТИЧЕСКИЙ
CWECWE-122 — переполнение буфера в куче
ОбнаруженоSafeBreach (опубликован PoC в январе 2025)
ЭксплуатацияПодтверждена активная эксплуатация в дикой природе
ПатчОбновления безопасности Microsoft от декабря 2024 года (KB5048685 / KB5048652)

1. Обзор

CVE-2024-49113 — это критическая уязвимость переполнения буфера в куче в клиентской библиотеке LDAP Windows (wldap32.dll). Неаутентифицированный удаленный злоумышленник может вызвать уязвимость, отправив специально сформированный LDAP-ответ на машину Windows, которая выполняет LDAP-запрос (например, контроллер домена, выполняющий поиск в каталоге).

Поскольку контроллеры домена Windows регулярно отправляют LDAP-запросы другим контроллерам домена, рядовым серверам и серверам глобального каталога, эта уязвимость особенно опасна в средах Active Directory. Успешная эксплуатация приводит к удаленному выполнению кода с правами системной учетной записи Local System (на контроллерах домена), что дает злоумышленнику полный контроль над целевым сервером.

Публичный proof-of-concept (названный «LDAP Nightmare») был выпущен SafeBreach в январе 2025 года после того, как Microsoft выпустила исправления в рамках Patch Tuesday за декабрь 2024 года.


2. Технические детали

Корневая причина

Уязвимость находится в wldap32.dll — реализации клиента Lightweight Directory Access Protocol (LDAP) в Windows, определенного в RFC 4511.

Когда LDAP-клиент получает ответ Search Result Entry (запись результатов поиска), библиотека разбирает Protocol Data Units (PDU) сообщения LDAP в цикле декодера BER (Basic Encoding Rules). Ошибка в логике выделения памяти в куче при разборе атрибутов LDAP приводит к тому, что декодер записывает данные за пределы выделенного в куче буфера.

В частности:

  1. Декодер BER считывает поле длины значения атрибута LDAP.
  2. На основе этой длины выделяется буфер в куче.
  3. Во время декодирования (особенно при обработке конструируемых строк или многобайтовых кодировок) декодер неверно отслеживает смещение в буфере.
  4. Это приводит к контролируемому переполнению кучи объемом до нескольких килобайт.

Условия срабатывания

  • Жертва должна инициировать LDAP-запрос (bind + search request).
  • Вредоносный LDAP-сервер злоумышленника отправляет сформированный ответ Search Result Entry (LDAP_RES_SEARCH_ENTRY).
  • Переполнение происходит до какой-либо проверки данных ответа на уровне приложения.
  • Аутентификация не требуется — переполнение может быть вызвано во время анонимного LDAP-bind.

Воздействие

  • Конфиденциальность: полная компрометация всех данных в системе.
  • Целостность: полная возможность записи; злоумышленник может устанавливать программы, изменять данные, создавать учетные записи.
  • Доступность: полный контроль над целью; возможен отказ в обслуживании.
  • Стойкость (persistence): RCE с правами SYSTEM на контроллерах домена обеспечивает горизонтальное перемещение по всему домену.

3. Затронутые версии

Все поддерживаемые выпуски Windows Server и Windows Client уязвимы до обновлений безопасности от 10 декабря 2024 года:

Windows Server (контроллеры домена — наибольший риск)

  • Windows Server 2025, 2022, 2019, 2016, 2012 R2, 2012, 2008 R2 SP1

Windows Client (менее вероятно срабатывание, но все равно уязвим)

  • Windows 11 24H2 / 23H2 / 22H2 / 21H2
  • Windows 10 22H2 / 21H2

Обновления Patch Tuesday за декабрь 2024 года, устраняющие эту CVE:

  • KB5048685 — Windows Server 2025 / Windows 11 24H2
  • KB5048652 — Windows Server 2022 / Windows 11 23H2
  • KB5048661 — Windows 10 22H2
  • И эквивалентные обновления для других версий (см. консультацию MSRC).

4. Шаги по воспроизведению

Архитектура

root@kitploit:~
┌──────────────────┐          LDAP Query           ┌─────────────────────┐
│   Victim Host    │ ──────────────────────────▶   │  Attacker LDAP      │
│  (Windows DC)    │                               │  Server (This PoC)  │
│                  │ ◀──────────────────────────   │                     │
│  wldap32.dll     │    Crafted LDAP Response      │  exploit.py         │
│  overflowed      │    (heap overflow payload)    │  port 389           │
└──────────────────┘                               └─────────────────────┘

Предварительные требования

  • Контроллер домена Windows (или узел Windows, настроенный на выполнение LDAP-запросов) без обновлений декабря 2024 года.
  • Python 3.8+ на машине атакующего (можно Windows, Linux или macOS).
  • Сетевая доступность от жертвы к атакующему по TCP-порту 389.
  • Для машин, не входящих в домен, может потребоваться настроить узел так, чтобы он указывал на атакующего как на свой LDAP-сервер (например, через файл hosts или DNS).

Пошаговое выполнение

1. Проверьте, что цель не пропатчена

На стороне жертвы проверьте установленные обновления:

root@kitploit:~
Get-HotFix | Where-Object { $_.HotFixID -match "KB5048685|KB5048652" }

Если результаты не возвращены, система не пропатчена и уязвима.

2. Запустите вредоносный LDAP-сервер

На машине атакующего запустите этот PoC:

root@kitploit:~
python exploit.py --listen-ip 192.168.1.100 --listen-port 389

Где 192.168.1.100 — IP-адрес атакующего.

Примечание: В Linux привязка к порту 389 требует прав root (sudo). В Windows могут потребоваться права администратора.

3. Вызовите LDAP-запрос от жертвы

На машине жертвы (PowerShell, от имени администратора):

root@kitploit:~
# Принудительно выполнить LDAP-поиск против сервера атакующего
$ldapPath = "LDAP://192.168.1.100/DC=evil,DC=local"
$searcher = New-Object DirectoryServices.DirectorySearcher($ldapPath)
$searcher.Filter = "(objectClass=*)"
$searcher.SearchRoot = $null

try {
    $results = $searcher.FindAll()
} catch {
    Write-Host "Connection attempted — check the PoC server for crash details"
}

Альтернативно используйте ldp.exe (входит в состав Windows Server / RSAT):

  1. Откройте ldp.exe
  2. Connection → Connect → Введите IP атакующего, порт 389
  3. Connection → Bind → (оставьте пустым для анонимного входа)
  4. View → Tree → Base DN: DC=evil,DC=local
  5. Нажмите Run

4. Наблюдайте переполнение

  • PoC-сервер выведет [*] Sending malicious search result entry... и отправит специально сформированный ответ.
  • В случае успеха lsass.exe на стороне жертвы или процесс LDAP-клиента завершится с ошибкой доступа (0xC0000005), либо система может уйти в BSOD.
  • Для реального RCE необходимо подготовить раскладку кучи и контролировать переполнение — включенный здесь PoC демонстрирует примитив аварийного завершения (отказ в обслуживании) как отправную точку.

Альтернативное воспроизведение с помощью Docker

Предоставлен Dockerfile для запуска PoC в изолированной среде:

root@kitploit:~
docker build -t ldap-nightmare .
docker run --rm -p 389:389 --cap-add=NET_ADMIN ldap-nightmare

5. Proof of Concept (exploit.py)

Включенный exploit.py реализует:

  • LDAP bind response — принимает анонимные и простые bind-запросы.
  • Сформированный Search Result Entry — доставляет нагрузку переполнения кучи.
  • Многопоточный обработчик подключений — обрабатывает несколько подключений жертв.
  • Настройку через аргументы командной строки (--listen-ip, --listen-port, --payload-size).

Структура нагрузки

СмещениеПолеЗначение
0x00Тег сообщения LDAP (0x30)Последовательность
0x01–0x02Общая длина (сформированная)Большое значение вызывает переполнение
0x03ProtocolOp (0x64)Search Result Entry
0x04–0x0EПоля результата LDAPСтандартный заголовок
0x0F+Список атрибутовТриггер переполнения (length = 0xFFFF)

Запуск против лабораторной цели

root@kitploit:~
# Запуск вредоносного сервера
sudo python exploit.py --listen-ip 0.0.0.0 --listen-port 389

# В другом терминале наблюдайте за подключениями
tcpdump -i any port 389 -X

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

Патч

Установите обновления Patch Tuesday от 10 декабря 2024 года:

  • Центр обновления Windows: Проверьте наличие обновлений и установите кумулятивное обновление за декабрь 2024 года.
  • WSUS / SCCM: Одобрите и разверните KB5048685 / KB5048652 / KB5048661 (в зависимости от версии).
  • Каталог Microsoft: Загрузите автономные пакеты из Каталога обновлений Microsoft.

Временные меры (если установка патча откладывается)

Если патч невозможно применить немедленно:

  1. Сегментация сети — Заблокируйте трафик LDAP (TCP 389 / 636) из недоверенных сетей к контроллерам домена.
  2. Отключите анонимные LDAP-запросы — На контроллерах домена ограничьте анонимный доступ:
    root@kitploit:~
    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\NTDS\Parameters" `
      -Name "LDAPServerIntegrity" -Value 2 -Type DWord
    Restart-Service NTDS
    
  3. Мониторинг сбоев LDAP — Включите аудит сбоев LDAP-клиента:
    root@kitploit:~
    wevtutil qe "Windows PowerShell" /f:text /q:"*[System[EventID=1000]]"
    

7. Ссылки

ИсточникURL
Microsoft Security Response CenterMSRC CVE-2024-49113
SafeBreach (первоначальное обнаружение)SafeBreach Blog — LDAP Nightmare
NVDNVD CVE-2024-49113
CWE-122Переполнение буфера в куче
RFC 4511Протокол LDAPv3
Patch Tuesday, декабрь 2024 годаПримечания к выпуску Microsoft

8. Правовое уведомление

Данный материал предоставлен исключительно в образовательных целях и для авторизованного тестирования безопасности. Несанкционированная эксплуатация CVE-2024-49113 в отношении систем без явного разрешения незаконна. Авторы не несут ответственности за любое неправомерное использование этой информации. Всегда получайте письменное разрешение перед тестированием любой системы.


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