Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

LDAP Injection

hacking

Définition

Le LDAP Injection est une vulnérabilité d'injection référencée sous CWE-90, survenant lorsqu'une application construit dynamiquement une requête vers un annuaire LDAP (Lightweight Directory Access Protocol) en intégrant directement des entrées utilisateur non validées, permettant à un attaquant de manipuler la logique du filtre de recherche en injectant des métacaractères spéciaux du langage de filtrage LDAP comme les parenthèses, l'astérisque (*) ou les opérateurs logiques (| pour OR, & pour AND). Une exploitation classique cible un formulaire d'authentification construisant un filtre du type (&(uid=USERNAME)(password=PASSWORD)) : en injectant *)(uid=*))(|(uid=* dans le champ nom d'utilisateur, l'attaquant referme prématurément la condition et injecte une clause toujours vraie, contournant l'authentification sans connaître aucun mot de passe valide. L'injection permet également l'énumération complète de l'annuaire — souvent un Active Directory dans les environnements Windows d'entreprise — en révélant progressivement des attributs sensibles (noms, adresses e-mail, appartenance à des groupes) par des requêtes booléennes successives, similaire dans son principe au blind SQL injection. La prévention repose sur l'échappement systématique des caractères spéciaux LDAP conformément au RFC 4515, l'usage de requêtes paramétrées lorsque la bibliothèque le permet, et l'application stricte du principe de moindre privilège sur le compte de service utilisé pour interroger l'annuaire, limitant l'impact même en cas d'exploitation réussie.

Description

L'injection LDAP exploite les filtres de requêtes LDAP en manipulant des caractères spéciaux comme *, (, ), | pour contourner l'authentification, énumérer l'annuaire Active Directory ou extraire des attributs sensibles comme les mots de passe en texte clair.

Exploitation

Un payload comme *)(uid=* dans un formulaire de connexion peut contourner l'authentification si la requête LDAP n'est pas correctement construite. L'énumération permet de récupérer la structure de l'annuaire et les comptes de service.

Défense

  • Utiliser des APIs LDAP paramétrées et encoder les caractères spéciaux dans toutes les entrées
  • Valider les entrées par whitelist stricte avant toute construction de filtre LDAP
  • Restreindre les droits du compte de service LDAP au strict minimum nécessaire

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis