Kerberoasting : l’attaque qui confirme la fragilité des systèmes informatiques

Les systèmes informatiques sont souvent non seulement vulnérables mais aussi fragiles : l’exemple de l’attaque Kerberoasting est emblématique selon Vectra AI.

Pour lancer une cyberattaque, les criminels exploitent généralement les failles de sécurité non résolues : dans de nombreux cas, l’attaque devient possible parce que les administrateurs informatiques ou les utilisateurs ordinaires n’ont pas installé les correctifs importants.

Une cyberattaque peut toutefois résulter de l’adoption de mesures de sécurité trop laxistes, d’erreurs ou d’une simple « négligence » dans la configuration des systèmes.

Qu’est-ce que l’attaque Kerberoasting ?

Kerberoasting : l'attaque qui confirme la fragilité des systèmes informatiques

Le Kerberoasting est une attaque qui vise le protocole réseau Kerberos, utilisé pour gérer les processus d’authentification dans les applications client-serveur en utilisant la cryptographie à clé secrète ou symétrique.

Nous avons vu dans notre autre article ce qu’est Kerberos et pourquoi Microsoft s’est récemment empressé de distribuer des correctifs hors bande, c’est-à-dire en dehors du cycle de publication habituel.

Au sein d’Active Directory, le protocole Kerberos est délégué pour gérer la plupart des authentifications, tant au niveau des utilisateurs que des services.

Comme l’observe Alessio, ingénieur en sécurité chez Vectra AI, le Kerberoasting exploite le fait qu’avec Kerberos tout utilisateur authentifié du domaine peut demander un ticket pour accéder à un service, même s’il n’a pas le droit de s’y connecter. Ces tickets sont chiffrés à l’aide du hachage NTLM du mot de passe du compte de service.

Le contrôleur de domaine répond avec un ticket de service crypté avec la clé secrète du compte de service. L’attaquant peut alors inonder le serveur Kerberos de demandes TGS (Ticket Granting Service), extraire les tickets de la mémoire, puis tenter de craquer le mot de passe hors ligne.

L’algorithme de hachage RC4 est désormais obsolète et vulnérable : lorsqu’il est utilisé à la place de l’AES (voir ci-dessous), l’attaquant peut facilement extraire les informations d’identification du compte de service (sans avoir besoin de générer des requêtes supplémentaires) et obtenir un accès illimité à tous les systèmes et ressources auxquels le compte compromis a accès. L’attaquant est alors en mesure d’augmenter très rapidement ses privilèges et d’effectuer des mouvements latéraux au sein du système informatique de l’entreprise.

Le Kerberoasting est une attaque qui peut être réalisée en phase de post-exploitation, c’est-à-dire qu’il est nécessaire que l’attaquant ait déjà obtenu l’accès au réseau de l’entreprise d’une manière ou d’une autre en ayant un utilisateur de domaine valide. Cet aspect montre clairement, une fois de plus, que le problème de la sécurité des infrastructures informatiques doit être examiné et traité dans son ensemble, et non pas « compartimenté ».

Il souligne que la grande majorité des entreprises sont potentiellement exposées à l’attaque Kerberoasting, car 99 % d’entre elles utilisent Active Directory dans leur infrastructure.

Comment se défendre contre le Kerberoasting

Plusieurs mesures peuvent être prises pour se protéger contre des attaques telles que le Kerberoasting.

Tout d’abord, note encore notre ingénieure, il est conseillé d’agir sur les comptes utilisateurs privilégiés car ils constituent une cible prioritaire pour les attaquants.

Il est préférable, dans la mesure du possible, de ne pas avoir de comptes pouvant exécuter des services si les droits privilégiés ne sont pas nécessaires. De plus, si le compte n’est pas destiné à être utilisé en dehors d’Active Directory, il est préférable d’utiliser des comptes de services gérés (MSA) : ils garantissent que le mot de passe du compte est efficace et qu’il est modifié régulièrement et automatiquement.

Lorsqu’un compte est utilisé en dehors d’Active Directory, il est important de définir un mot de passe composé de plus de 32 caractères.

Enfin, le compte utilisateur doit être configuré pour supporter l’algorithme AES, écartant définitivement l’utilisation de l’obsolète RC4.

En résumé, la défense de l’infrastructure informatique de l’entreprise passe de plus en plus par l’adoption de bonnes pratiques de sécurité, allant bien au-delà de l’application de correctifs aux systèmes.