PetitPotam et bug d'imprimante : Relais NTLM vers AD CS

ACCUEIL » BLOG » PetitPotam et bug d'imprimante : Relais NTLM vers AD CS

L'attaque PetitPotam, publiée sur GitHub, oblige un serveur distant à s'authentifier auprès d'un serveur cible avec NTLM, à l'aide d'une commande MS-EFSRPC appelée EfsRpcOpenFileRaw. MS-EFSRPC est un protocole qui permet l'accès à distance aux fichiers chiffrés. Faire en sorte qu'un serveur s'authentifie à distance avec NTLM est mauvais, car cela peut être utilisé pour déclencher des attaques de relais NTLM.

Une attaque relais NTLM particulièrement dangereuse est celle qui cible Active Directory Services de certificats (AD CS). Dans un whitepaper (voir ESC8), SpecterOps explique comment utiliser une attaque de relais NTLM sur AD CS pour prendre le contrôle d'une machine ou se faire passer pour cette machine. Pour emprunter l'identité de la machine, un certificat client est demandé par la machine. Après avoir obtenu le certificat client, l'attaquant peut alors utiliser l'une des techniques suivantes pour prendre le contrôle du domaine ou de la machine cible :

  1. Si la machine est un contrôleur de domaine ou un autre ordinateur privilégié, elle peut utiliser les informations d'identification pour synchroniser les secrets de l'annuaire, compromettant ainsi le domaine.
  2. L'attaquant peut utiliser le protocole S4U2Self pour obtenir un ticket de service sur la machine cible comme n'importe quel utilisateur.
  3. L'attaquant peut utiliser PKInit pour obtenir le hachage NT de la machine, puis lancer une attaque Silver Ticket.

Le bogue de l'imprimante

Cette vulnérabilité est liée mais différente de la Bogue de l'imprimante (présenté à la DerbyCon 2018 par Will Schroeder). Cette vulnérabilité permet à un attaquant de déclencher un NTLM authentification par n'importe quel client exécutant le service PrinterSpooler. Les atténuations fournies ci-dessous empêcheront PetitPotam et Printer Bug d'effectuer un relais NTLM vers le serveur AD CS, mais ne bloqueront pas une attaque de relais NTLM vers une cible différente. Étant donné que plusieurs vulnérabilités du spouleur d'imprimante ont été publiées récemment, nous vous recommandons de désactiver le spouleur d'imprimante sur tous les serveurs membres et contrôleurs de domaine qui n'ont pas besoin d'impression.

Conseils Microsoft

Microsoft ne corrigera pas cette vulnérabilité, mais conseille plusieurs possibilités atténuations. L'atténuation préférée est assez extrême - pour désactiver complètement NTLM dans le domaine. D'après mon expérience, ce n'est pas un conseil pratique, NTLM prend généralement un pourcentage à deux chiffres de toute l'authentification sur le réseau. Réduire cela à zéro est généralement peu pratique. L'autre mesure d'atténuation qu'ils recommandent est de restreindre le trafic NTLM entrant dans le serveur AD CS. Si restreindre NTLM à l'ensemble du serveur est trop sévère, Microsoft indique comment désactiver NTLM pour les services "Certificate Authority Web Enrollment" ou "Certificate Enrollment Web Service" au niveau IIS. En dernier recours, Microsoft recommande activation de l'EPA pour AD CS.

Conseils Silverfort

La partie délicate de la recommandation de Microsoft est de choisir l'atténuation qui convient à votre environnement. Nous recommandons ce qui suit pour nos clients:

  1. Répertoriez tous les serveurs AD CS de votre domaine. Nous vous recommandons de consulter spécifiquement le groupe de sécurité des éditeurs de certificats pour trouver une liste des serveurs AD CS suspects. Pour chacun, filtrez les logs Silverfort pour l'authentification NTLM sur ce serveur.
  2. S'il n'y a pas d'authentification NTLM sur l'un des serveurs AD CS, désactiver NTLM dans les serveurs AD CS.
  3. Sinon, suivez les instructions de Microsoft pour activation de l'EPA pour AD CS.

Arrêtez les menaces sur l'identité