Amenez-moi à votre contrôleur de domaine : comment les attaquants se déplacent latéralement dans votre environnement
Dan Gould a également contribué à cet article.
Dans la première partie de cette série de blogs, nous avons vu les différentes façons dont un acteur de la menace peut exécuter la phase de découverte du cadre ATT&CK pour se familiariser avec le terrain après une première infection. Cela leur permet d'obtenir des informations importantes sur le réseau et le domaine, même avec des privilèges de domaine standard. Nous avons également noté certains des composants utilisés par un contrôleur de domaine qui peuvent être attaqués directement ou exploités dans le cadre d'une attaque.
Nous allons développer ce point en montrant des exemples d'attaques et d'outils qui peuvent être utilisés contre ces composants pour exécuter la phase suivante d'une attaque : le mouvement latéral.

Armé de ces informations utiles, comme celles présentées dans l'article précédent lors de la phase de découverte, l'acteur de la menace peut maintenant tenter en toute confiance un déplacement latéral sur le chemin du contrôleur de domaine. Cependant, ils auront besoin des informations d'identification nécessaires, des systèmes cibles intermédiaires et des informations sur les composants, ainsi que des outils d'attaque correspondants, pour atteindre leur cible finale.

ATT&CK : Mouvement latéral
Les mouvements latéraux, en particulier dans un domaine Windows, peuvent se produire à deux niveaux. Tout d'abord, au niveau de l'application, où l'attaquant peut utiliser des techniques basées sur les informations d'identification comme le "pass-the-hash" ou le "pass-the-ticket" qui, à leur tour, tirent parti du réseau où ils se déplacent de machine en machine jusqu'à la cible finale qui, dans le cas présent, est le contrôleur de domaine.
Cela nous amène aux techniques basées sur les références.
Techniques de mobilité latérale fondées sur les titres de compétences
Honnêtement, une fois que les identifiants de l'administrateur de domaine sont découverts, le contrôleur de domaine n'est plus qu'à une invite de commande.
Les attaquants cherchent à vider les informations d'identification mises en cache dans des emplacements courants, tels que Local Security Authority Subsystem Service (LSASS), utilisé pour authentifier les utilisateurs, les connexions et les autorisations sous Windows. Pourquoi les informations d'identification (mots de passe hachés/tickets) sont-elles conservées en mémoire ? Dans le cas de l'authentification unique, il s'agit de faire en sorte que les utilisateurs n'aient pas à se réauthentifier en permanence.
Si les attaquants ont de la chance, ils compromettent un système qui a gardé en mémoire des identifiants d'administrateurs antérieurs. Ces informations d'identification peuvent être obtenues avec Mimikatz ou d'autres outils similaires de sondage de la mémoire LSASS. Comme vous le savez maintenant, Mimikatz et d'autres outils similaires permettent aux acteurs de la menace de trouver et d'extraire des informations d'authentification telles que des hachages NTLM et des informations sur les tickets Kerberos de la mémoire du noyau d'un ordinateur en cours d'exécution utilisée par LSASS.
L'exemple ci-dessous montre l'extraction de données d'identification à l'aide de Mimikatz.

Dans la plupart des cas, le compte initialement compromis n'a besoin que d'être un compte d'administrateur local sur la machine Windows pour pouvoir exécuter avec succès des outils tels que Mimikatz. Cela signifie qu'il disposera des privilèges nécessaires, comme le privilège de débogage de Windows, pour lire le noyau ou la mémoire privilégiée de certains processus Windows cruciaux comme LSASS. Comme nous l'avons déjà mentionné, les domaines Windows s'appuient fortement sur la capacité d'authentification unique pour offrir une expérience presque transparente aux utilisateurs et aux machines qui demandent des ressources à travers le domaine. Pour faciliter cette opération, Windows a utilisé la possibilité de stocker en mémoire des informations d'identification hachées et, pour les versions plus anciennes, des mots de passe en texte brut. C'est l'un des principaux moyens dont disposent des outils comme Mimikatz pour récupérer les hachages NTLM et, dans certains cas, les mots de passe en texte clair pour des techniques telles que les attaques "pass-the-hash" et "pass-the-ticket".
Voici à quoi ressemble l'extraction de tickets Kerberos de la mémoire :

Rubeus est un autre outil qui peut être utilisé pour les attaques liées aux tickets Kerberos. Il dispose de capacités telles que les demandes de tickets Kerberos, qui permettent de récupérer un Ticket-Granting-Ticket (TGT) sur la base du mot de passe ou du hachage d'un utilisateur dans un cas ou sur la base du magasin de certificats d'un utilisateur. Rubeus peut également être utilisé pour abuser de la délégation contrainte dans les domaines Windows en effectuant une délégation contrainte Service-for-User (S4U) au sein d'un domaine spécifique ou même entre les domaines d'une forêt.

Dans l'exemple ci-dessous, nous pouvons voir que l'acteur de la menace est en mesure d'extraire de la mémoire les informations de hachage des informations d'identification et de localiser un nom de compte spécifique identifié comme un compte d'administrateur. Ce compte est présent parce qu'il s'est connecté à cette machine à un moment donné.

Ce dump spécifique comprendra également des informations telles que le serveur de connexion dans le domaine. Cette information peut être corroborée par les informations recueillies lors de la phase de découverte afin de confirmer le contrôleur de domaine cible.
Dans l'exemple ci-dessous, à partir du hash NTLM du compte "itadmin" qui a été récupéré plus tôt, nous avons pu passer ce hash pour lancer un nouveau processus Windows cmd avec le jeton privilégié "admin". Cela signifie que le nouveau processus cmd peut effectuer des actions dans le contexte d'un compte privilégié, même si l'utilisateur connecté n'a que des droits d'administrateur local sur la machine compromise.

Ce nouveau processus s'exécutera avec le jeton élevé de "itadmin", ce qui signifie que nous pouvons l'utiliser pour exécuter d'autres outils d'accès à distance afin de cibler le contrôleur de domaine et de s'y connecter via le réseau. Dans l'image ci-dessous, nous pouvons voir qu'après une attaque réussie de type "pass-the-hash", un outil secondaire comme PAexec de Power Admin peut être utilisé pour poursuivre le reste de l'attaque en se connectant à distance au contrôleur de domaine. La commande du nom d'hôte dans l'image confirme la réussite du mouvement latéral au niveau de l'application et du réseau.

Nous pouvons vérifier les services en cours d'exécution sur la machine du contrôleur de domaine pour vérifier que PAExec a établi une connexion avec un processus correspondant. La technique "pass-the-hash" utilisée pour créer le jeton d'administrateur sur l'ordinateur portable compromis, qui a ensuite été utilisé pour exécuter l'outil de gestion à distance PAExec, a été couronnée de succès, comme le montre l'image ci-dessous.

Il s'agit d'une simple démonstration de la manière dont les attaquants peuvent se déplacer latéralement, du niveau de l'application (vol d'informations d'identification dans la mémoire du processus) au niveau du réseau (traversée de machine smb, msrpc ou http), pour atteindre la cible ultime - le contrôleur de domaine.
ATT&CK : Impact
A ce stade, après avoir atteint le contrôleur de domaine, l'attaquant est en charge. Ils peuvent ensuite copier à distance d'autres fichiers malveillants sur le contrôleur de domaine. Par exemple, ils peuvent maintenant copier Mimikatz sur le contrôleur de domaine et l'utiliser pour extraire le hachage du compte utilisateur intégré KRBTGT - en plus d'autres informations sur le domaine - afin de lancer l'attaque Golden Ticket. Il peut ensuite être utilisé pour des attaques de type "pass-the-ticket" dans l'ensemble du domaine.
L'attaquant peut même utiliser les outils déjà en place, en vivant de la terre, pour déployer quelque chose comme un ransomware et se connecter à d'autres serveurs sensibles, comme les serveurs de bases de données ou d'applications, pour continuer à exfiltrer des données. Il peut s'agir de PsExec, PowerShell, SCCM - tout outil d'administration informatique capable de déployer des logiciels.
En fonction de la sophistication de l'attaque, un attaquant peut utiliser tous les outils personnalisés ou exécuter le code uniquement en mémoire, de sorte que l'analyse des signatures d'outils tels que Mimikatz devient difficile à détecter et à prévenir pour les outils de sécurité. Dans le même ordre d'idées, l'analyse comportementale peut également être gourmande en ressources, de sorte que ces techniques d'analyse peuvent être désactivées, en particulier dans les environnements de serveurs ou les anciens systèmes d'exploitation qui exécutent d'anciennes applications critiques.
Ne manquez pas notre prochain article qui examinera les mesures d'atténuation de ces attaques.