Flexible Security for Your Peace of Mind

Dix bonnes pratiques de sécurité pour les comptes de service Active Directory

Microsoft Active Directory est sans doute l’une des ressources les plus ciblées lors d’attaques informatiques en environnement local. La raison en est simple : il contient les « clés du royaume ». Toute l’identité en local et même dans les environnements cloud hybrides repose sur Active Directory. Certains types de comptes, en particulier, attirent l’attention des cybercriminels.

Dans l’environnement Windows, plusieurs privilèges et rôles sont accordés aux utilisateurs. Cependant, il est souvent nécessaire de restreindre certains rôles à des comptes spécialisés appelés comptes de service. Ces comptes Active Directory ont un accès plus profond à l’infrastructure du système d’exploitation et gèrent l’installation des applications ainsi que des services essentiels, ce qui en fait des cibles de choix pour les attaquants.

Deux éléments deviennent alors cruciaux : garantir la sécurité de ces comptes et définir clairement leurs périmètres fonctionnels. Comment y parvenir ? Nous allons examiner les trois types de comptes de service Active Directory et présenter dix meilleures pratiques à suivre pour renforcer leur sécurité.


Que sont les comptes de service ?

Les comptes de service Active Directory sont des comptes spécialisés qui, contrairement aux comptes utilisateur classiques, ne sont pas conçus pour se connecter à des serveurs ou des clients. Ils sont utilisés pour exécuter des services sur des serveurs Windows et remplir des fonctions spécifiques liées aux applications.

Dans Active Directory, les permissions sont associées aux comptes utilisateurs et ordinateurs. Le compte de service joue donc un rôle particulier : il sert d’objet auquel des permissions sont attribuées, permettant ainsi aux applications de s’authentifier au domaine Active Directory.

Étant donné qu’ils nécessitent souvent des permissions de haut niveau pour que les applications puissent fonctionner, ces comptes sont des cibles privilégiées pour les attaquants. Ces derniers savent qu’en compromettant un compte de service, ils peuvent accéder à un compte disposant de permissions étendues à travers l’ensemble du système.


Les types de comptes de service

Avant de gérer et sécuriser les comptes de service dans Active Directory, il est essentiel de bien comprendre les différents types disponibles.

  1. Comptes d’utilisateurs locaux : ils englobent des comptes tels que le compte Système (administration locale à privilèges multiples), le compte Service local (accès sans justificatif aux services réseau) et le compte Service réseau (accès plus robuste, avec justificatif, aux services réseau).
  2. Comptes d’utilisateurs du domaine : gérés par Active Directory et exploités par les services. Il peut s’agir d’un compte par service ou d’un compte partagé par plusieurs services. Les changements de mot de passe sont périodiquement obligatoires et les comptes sont limités aux privilèges déterminés par leurs services respectifs.  
  3. Comptes de services gérés (MSA) : ils sont soumis aux règles de l’Active Directory et chaque compte ne peut avoir qu’un seul utilisateur par ordinateur. Cependant, chaque compte peut accéder à plusieurs services (au choix) et les réinitialisations de mot de passe sont gérées automatiquement.  
  4. Comptes de services gérés par le groupe (gMSA) : Il s’agit de types d’objets similaires aux MSA, mais ils sont conçus pour être utilisés à plus grande échelle, sur plusieurs serveurs ou services. Ils permettent de disposer d’une solution plus évolutive et plus sûre.

Les comptes de service gérés (Managed Service Accounts, MSAs) sont généralement les plus sécurisés. Ils bénéficient des contrôles stricts des autorisations possibles via Active Directory, ce qui permet de mettre en œuvre efficacement le contrôle d’accès basé sur les rôles (RBAC) et d’automatiser leur gestion. Ces automatisations incluent fréquemment des tâches telles que les changements de mot de passe et les scripts programmés via PowerShell.

De plus, les mots de passe des comptes gérés surpassent largement ceux des comptes de domaine ou des comptes locaux, atteignant une longueur impressionnante de 120 caractères complexes. En comparaison, les mots de passe des comptes de domaine doivent comporter un minimum de 15 caractères, tandis que ceux des comptes locaux varient entre 1 et 14 caractères. Par ailleurs, les comptes locaux n’exigent parfois aucun mot de passe !

Les MSAs peuvent être autonomes (depuis 2008) ou associés à un groupe. Dans ce dernier cas, ils peuvent fonctionner sur plusieurs serveurs, contrairement aux comptes autonomes qui se limitent à un seul serveur ou appareil. Comme leur nom l’indique, les comptes d’utilisateurs locaux sont confinés à la machine sur laquelle ils sont configurés. Pour accéder à un service basé sur un domaine, il est préférable d’utiliser des comptes de domaine ou des MSAs. Ces comptes connectés permettent de créer des services et d’attribuer des utilisateurs de manière appropriée. Les comptes locaux, en revanche, ne sont pas identifiables par les systèmes externes, ce qui limite leur utilité à leur propre environnement.

Étant donné que les comptes de service sont généralement des comptes de haut niveau avec des autorisations étendues, ils doivent être protégés à tout prix. Voici quelques bonnes pratiques pour sécuriser les comptes de service Active Directory et des conseils pour protéger ces objets sensibles.


Dix meilleures pratiques pour sécuriser les comptes de service Active Directory

Les opinions peuvent diverger lorsqu’il s’agit de sécurité et de supervision. Cependant, il existe des principes que la plupart des professionnels considèrent comme essentiels pour gérer les comptes de service. Ces pratiques sont indispensables pour renforcer la sécurité et simplifier la gestion des tâches.


1. Accorder des privilèges avec parcimonie

L’un des premiers principes à appliquer aux comptes de service est celui du moindre privilège. Comme pour tout autre compte utilisateur, les comptes de service ne devraient disposer que des autorisations strictement nécessaires à l’exécution de leurs tâches. Attribuer des privilèges ou des permissions trop élevés, comme les intégrer au groupe des administrateurs de domaine ou des administrateurs d’entreprise, peut s’avérer extrêmement risqué. Si un attaquant parvient à compromettre un compte de service doté de ces droits, il disposera des accès nécessaires pour prendre le contrôle total du domaine et instaurer une persistance malveillante.

Pour éviter ces risques, il est préférable d’attribuer uniquement des autorisations spécifiques et précises aux comptes de service nécessaires à leurs fonctions, plutôt que de leur appliquer des permissions globales et dangereuses comme celles des administrateurs de domaine. Cette approche limite l’impact potentiel en cas de compromission du compte.

Les comptes de service dans Active Directory existent pour accomplir des tâches spécifiques. Notre rôle est de supprimer les obstacles à ces tâches, tout en garantissant que seuls les droits minimaux nécessaires sont attribués. De la même manière qu’un employé ne peut accéder qu’à certaines ressources à distance pour effectuer son travail, les comptes de service doivent être limités à l’accès aux couches essentielles du système d’exploitation, des fichiers, du réseau ou des services. Cela s’inscrit dans une logique d’authentification et d’autorisation.

Heureusement, Active Directory offre des outils permettant d’élever ou de réduire les niveaux d’accès selon les besoins. Il est rarement judicieux d’accorder un accès total et illimité à des utilisateurs distants, car cela expose le système à des abus ou à des erreurs accidentelles.


2. Utiliser les comptes de service gérés (MSAs) et les comptes de service gérés par groupe (gMSAs)

Les comptes de service spécialisés, tels que les Managed Service Accounts (MSAs) et les Group Managed Service Accounts (gMSAs), sont nettement préférables aux comptes utilisateurs traditionnels. Ces types de comptes offrent des avantages supplémentaires en matière de sécurité.

Avec les MSAs et les gMSAs, les mots de passe sont modifiés automatiquement et régulièrement, ce qui élimine la nécessité de gérer manuellement ces changements. Cela garantit une rotation continue des mots de passe, renforçant ainsi la sécurité tout en simplifiant la gestion.

Dès leur conception, ces comptes sont mieux adaptés à des usages sécurisés, car ils ne peuvent pas être utilisés pour des connexions interactives ou d’autres tâches non liées aux services. Cela limite leur exposition aux risques et renforce leur rôle strictement fonctionnel.


3. Réaliser des audits réguliers

Les comptes de service sont parmi les objets les plus critiques à surveiller dans Active Directory, car ils figurent parmi les cibles privilégiées des attaquants. Surveiller l’utilisation des comptes de service peut permettre de détecter des comportements suspects, comme l’utilisation d’un compte de service pour des connexions RDP, son invocation sur des serveurs non prévus ou encore depuis un poste de travail.

Les audits s’inscrivent directement dans cette logique. Il est crucial d’inspecter régulièrement tous les comptes de service ainsi que les journaux d’activité. L’objectif est de comprendre ce que font les utilisateurs, de vérifier les permissions attribuées, et de s’assurer qu’aucune de ces permissions ne contrevient aux règles de sécurité définies. Les audits permettent ainsi d’identifier des activités suspectes ou de repérer des vulnérabilités, qu’elles soient passives ou actives.

Active Directory dispose d’un système d’audit intégré capable de suivre les événements de connexion, les modifications des comptes, et d’autres types d’activités. Cependant, ces outils natifs sont souvent peu conviviaux sans l’aide de solutions tierces. Ces outils externes permettent d’agréger les événements d’audit, d’analyser les données et de fournir une visibilité claire sur les activités. Ils peuvent également être configurés pour déclencher des alertes en cas de comportements suspects ou d’événements indiquant une tentative de compromission de l’environnement.

Vous recherchez un outil d’audit tiers plus avancé ? Specops Password Auditor est une solution en lecture seule qui ne stocke pas les données d’Active Directory et n’effectue aucune modification sur celui-ci. Cet outil vous fournit un rapport clair et exportable détaillant les vulnérabilités liées aux mots de passe, qui pourraient constituer des points d’entrée pour des attaquants. Téléchargez-le gratuitement ici.


4. Mettre en place des politiques de mots de passe robustes

Le mot de passe est sans doute l’élément le plus crucial pour assurer la sécurité d’un compte. Appliquer des politiques de mots de passe fortes est essentiel pour garantir que les comptes de service utilisent des mots de passe difficiles à compromettre. Les MSAs et gMSAs gèrent automatiquement les mots de passe pour vous. Cependant, l’instauration de politiques de mots de passe strictes pour l’ensemble des comptes, y compris les comptes utilisateurs, renforce la sécurité globale de votre environnement Active Directory Domain Services (AD DS).

Il est recommandé d’adopter des politiques de mots de passe qui imposent les éléments suivants :

Voici un exemple typique de politique de mot de passe qui n’exige que 7 caractères. Ce type de politique permet aux utilisateurs de créer des mots de passe relativement faibles. Découvrez comment Specops Password Policy peut vous aider à appliquer des politiques de mots de passe robustes dans toute votre organisation.


5. Restreindre l’utilisation des comptes de service et contrôler l’accès des fournisseurs

Les comptes de service ne doivent jamais être utilisés pour des connexions interactives. Ces comptes ont une fonction spécifique et ne doivent être utilisés que pour les services nécessaires au fonctionnement des applications. Évitez d’utiliser le même compte de service pour plusieurs services. La création de comptes de service uniques pour chaque service réduit leur interconnexion et limite ainsi la surface d’attaque.

Il arrive que des fournisseurs externes aient besoin d’un accès aux comptes de service pour résoudre des problèmes. Dans ce cas, il est essentiel de limiter l’accès des comptes de service aux machines strictement nécessaires. Une solution équilibrée pourrait consister à créer des comptes spécialisés pour les fournisseurs, leur donnant accès à une machine virtuelle intermédiaire. Depuis cette VM, ils peuvent ensuite interagir avec les systèmes ciblés de manière contrôlée.

Bloquer en permanence plus de 4 milliards de mots de passe compromis dans votre Active Directory


6. Désactiver les comptes de service inutilisés

La gestion du cycle de vie des comptes de service dans Active Directory est cruciale. Si des comptes de service ne sont plus utilisés ou nécessaires dans l’environnement, ils doivent être désactivés. Laisser des comptes de service actifs alors qu’ils ne sont plus requis constitue rapidement une faille de sécurité majeure, car ces comptes disposent souvent d’un accès de haut niveau qui pourrait être exploité par des attaquants.

Les administrateurs système doivent régulièrement vérifier et supprimer les comptes obsolètes ou inutilisés pour garantir la sécurité de l’environnement.

Interroger les comptes avec PowerShell pour identifier ceux qui n’ont pas été utilisés pour se connecter depuis « X » jours est une méthode efficace pour repérer les comptes de service inactifs ou obsolètes, en plus des comptes d’utilisateurs classiques inactifs.

Si vous souhaitez un rapport détaillé sur les comptes obsolètes et inutilisés (ainsi que sur de nombreuses autres vulnérabilités liées aux mots de passe et aux comptes), vous pouvez effectuer une analyse en lecture seule de votre Active Directory avec notre outil d’audit gratuit : Specops Password Auditor.


7. Séparer les rôles des comptes de service

Séparer les rôles des comptes de service est une excellente méthode pour différencier les rôles et les autorisations entre les différents objets de comptes de service. Par exemple, créez des comptes de service dédiés uniquement aux services d’application. Ensuite, configurez des comptes distincts pour les services réseau, les bases de données et d’autres types de services, chacun ayant son propre compte unique.

Cette approche permet de réduire le risque qu’un seul compte soit compromis et limite l’accès aux ressources associées à chaque compte.


8. Utiliser l’authentification multi-facteurs (MFA) lorsque possible

L’une des meilleures façons de renforcer la sécurité de l’authentification est d’ajouter une authentification multi-facteurs (MFA) au processus de connexion interactive. Certes, les comptes de service ne devraient pas être utilisés pour des connexions interactives. Cependant, dans des cas exceptionnels où un compte de service spécifique doit être utilisé pour se connecter, il est impératif d’activer la MFA pour ce compte.

De plus, déployer la MFA pour tous les comptes utilisateurs améliore considérablement la posture de sécurité de votre environnement Active Directory. En augmentant la sécurité de tous les utilisateurs, la probabilité qu’un compte de service soit compromis diminue significativement.


9. Utiliser des unités organisationnelles (OUs) dédiées pour les comptes de service

Maintenir une organisation claire pour les comptes de service est une excellente méthode pour faciliter leur gestion et renforcer leur sécurité. Créer une Unité Organisationnelle (OU) dédiée dans Active Directory pour les comptes de service permet d’assurer une gestion cohérente et d’appliquer des Stratégies de Groupe (Group Policies) uniformément à tous les comptes de service de l’environnement.

De plus, regrouper les comptes de service dans une même OU simplifie leur surveillance et leur suivi, ce qui améliore l’efficacité de la gestion globale.


10. Examiner régulièrement les dépendances et les accès des comptes de service

Même si le niveau d’accès d’un compte de service est approprié aujourd’hui, ces besoins et niveaux d’accès peuvent évoluer avec le temps. Il est essentiel de passer régulièrement en revue les dépendances et les accès des comptes de service pour s’assurer qu’ils restent nécessaires et adaptés.

Identifiez également les applications, services ou scripts qui nécessitent l’utilisation d’un compte de service, et veillez à ce que ces comptes soient configurés et sécurisés en conséquence. Ces étapes permettent de prévenir les accès non autorisés et de limiter les risques liés à des permissions excessives ou inutiles.

Assurez la sécurité des comptes de service

Les comptes de service dans Active Directory sont parmi les plus dangereux s’ils ne sont pas correctement sécurisés : Les administrateurs doivent s’assurer que ces comptes sont gérés et sécurisés correctement. Un régime de sécurité approprié pour les comptes de service comprend la révision fréquente des autorisations, l’audit des accès et le contrôle de leur utilisation, la mise en œuvre de politiques de mots de passe forts, la MFA et l’utilisation des comptes spéciaux MSA et gMSA pour les comptes de service lorsque c’est possible. Appliquez toujours le principe du moindre privilège à vos comptes de service et utilisez des OU dédiés et des stratégies de groupe pour la gestion et la sécurité.

Pensez également à mettre en place un outil comme Specops Password Policy qui peut simplifier la gestion des politiques de mot de passe à grain fin dans Active Directory. Bloquez continuellement plus de 4 milliards de mots de passe uniques compromis, appliquez facilement la conformité et réduisez votre charge de support en offrant aux utilisateurs finaux une meilleure expérience de sécurité. Vous souhaitez savoir comment Specops Password Policy pourrait s’adapter à votre organisation ? Prenez contact avec nous et essayez-le gratuitement.

(Dernière mise à jour le 17/03/2025)

Revenir sur le blog