Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-41089 — CVE-2026-41089 PoC — Débordement de tampon de la pile Netlogon CLDAP (CVSS 9.8 CRITIQUE) | Kitploit
Outils/GitHubGitHub/0xabcd01/cve-2026-41089
Analyse des VulnérabilitésExploitationTests d'IntrusionApprentissage et ÉducationExploitation de Binaires
GitHub0xabcd01/cve-2026-41089

CVE-2026-41089

CVE-2026-41089 PoC — Débordement de tampon de la pile Netlogon CLDAP (CVSS 9.8 CRITIQUE)

Voir le dépôt
20967il y a 2 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2026-41089

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

Exécution de code à distance dans Windows Netlogon via un dépassement de tampon de pile CLDAP

CVSS CWE Python License


Un seul paquet UDP forgé vers le port 389 provoque un dépassement d'un tampon de pile de 528 octets dans LSASS sur tout contrôleur de domaine Windows non corrigé. Le processus plante. Le DC redémarre en environ 60 secondes. Aucune authentification n'est requise.

Vecteur d'attaqueUDP 389 (CLDAP), pré-authentification, zéro identifiants
Impactplantage LSASS, redémarrage DC, potentielle exécution de code à distance
CWECWE-121 (dépassement de tampon de pile)
Vecteur CVSSAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Publié12 mai 2026 par Microsoft

Démarrage rapide

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

Trois phases : ping normal pour confirmer que le DC est actif, ping de débordement avec un nom d'utilisateur de 130 caractères, vérification de disponibilité. Prend environ 10 secondes.

Systèmes affectés

Chaque version de Windows Server fonctionnant en tant que contrôleur de domaine :

Cause racine

NlGetLocalPingResponse alloue un tampon de pile de 528 octets et le transmet à BuildSamLogonResponse. Cette fonction appelle NetpLogonPutUnicodeString pour écrire le nom du serveur, le nom de domaine, les GUID et le nom d'utilisateur contrôlé par l'attaquant dans le tampon.

Le bogue : NetpLogonPutUnicodeString reçoit une longueur maximale en octets mais la traite comme un nombre de WCHAR. Chaque chaîne écrite via ce chemin occupe le double de l'espace prévu. Le champ 'User' dans le filtre CLDAP (jusqu'à 130 wchars, 260 octets sur le fil) pousse l'écriture combinée au-delà de la limite de 528 octets.

root@kitploit:~
I_NetLogonLdapLookupEx
  -> NlGetLocalPingResponse           // 528-byte stack buffer
    -> LogonRequestHandler
      -> BuildSamLogonResponse
        -> NetpLogonPutUnicodeString   // byte/WCHAR size confusion

Utilisation

root@kitploit:~
python3 poc.py <target_ip> <domain_name> [options]
OptionDescriptionDéfaut
-lLongueur du nom d'utilisateur en caractères
root@kitploit:~
# Test de connectivité (nom d'utilisateur court, pas de débordement)
python3 poc.py 10.0.50.21 corp.local

# Tentative de débordement par défaut
python3 poc.py 10.0.50.21 corp.local -l 130

# Charge plus grande, timeout plus long pour les réseaux lents
python3 poc.py 10.0.50.21 corp.local -l 200 -t 10

Nécessite Python 3.8+. Aucun paquet tiers.

Fonctionnement

  1. Phase 1. Un ping CLDAP normal avec le nom d'utilisateur "testuser" confirme que la cible répond sur UDP 389.
  2. Phase 2. La même structure de paquet, mais le nom d'utilisateur est constitué de 130+ caractères "A". Cela pousse les données sérialisées au-delà de la limite du tampon de pile. Si LSASS plante, la réception expire.
  3. Phase 3. Après un délai configurable, un second ping normal vérifie si le DC est toujours actif. Pas de réponse = plantage LSASS confirmé.

Le débordement déclenche un déni de service (plantage LSASS, redémarrage du DC). L'exécution de code à distance par corruption de pile est théoriquement possible. Ce PoC ne tente pas d'exécution de code.

Détection

Réseau. Analysez le trafic CLDAP pour des requêtes de recherche où l'attribut de filtre 'User' dépasse 20-30 caractères. Les pings normaux de localisation de DC utilisent des noms de comptes de service (chaînes courtes).

Hôte. Surveillez les plantages LSASS liés à netlogon.dll (ID d'événement 1000). Activez la journalisation de débogage Netlogon :

root@kitploit:~
nltest /dbflag:0x2080ffff

Atténuation

  • Installez la mise à jour de sécurité Microsoft de mai 2026
  • Restreignez le trafic UDP 389 entrant aux sous-réseaux d'administration de confiance
  • Pour les versions de serveur héritées hors ESU : 0patch fournit des micropatchs (correction d'une seule instruction : mov edx, 0x40 pour diviser par deux la longueur maximale du nom d'utilisateur)

Références

  • Guide de mise à jour de sécurité Microsoft
  • NVD - CVE-2026-41089
  • Analyse et micropatch 0patch
  • Rétro-ingénierie Aretiq AI
  • RFC 4511 - LDAP
  • MS-ADTS - CLDAP DC Locator

Légal. Ce code existe pour la recherche en sécurité et l'éducation autorisées. Testez uniquement sur des systèmes que vous possédez ou pour lesquels vous avez une autorisation écrite. L'accès non autorisé à des systèmes informatiques viole le CFAA et les lois équivalentes dans la plupart des juridictions.

MIT License

Télécharger l’outil
Version du serveurCorrigé dans
2012 / 2012 R2Correctifs ESU uniquement
201610.0.14393.9140
201910.0.17763.8755
202210.0.20348.5074
2022 23H210.0.25398.2330
202510.0.26100.32772
130
-tTimeout UDP de réception (secondes)5
-dDélai entre le débordement et la vérification de disponibilité (secondes)3