L'injection de l'historique de l'identifiant de sécurité (SID) est un vecteur de cyberattaque sophistiqué qui cible les environnements Windows Active Directory. Cette attaque exploite l'attribut SID History, qui est destiné à maintenir les droits d'accès des utilisateurs lors des migrations d'un domaine à un autre. En injectant des valeurs SID malveillantes dans cet attribut, un attaquant peut élever ses privilèges et obtenir un accès non autorisé aux ressources de l'environnement Active Directory.
Qu'est-ce que l'injection de l'historique des SID ?
L'injection de l'historique SID implique la modification non autorisée de l'attribut Historique SID d'un compte utilisateur compromis dans Active Directory. Cet attribut stocke généralement les anciens SID d'anciens domaines lorsqu'un utilisateur ou un groupe est migré vers un nouveau domaine. L'objectif est de maintenir l'accès de l'utilisateur ou du groupe aux ressources.
Les attaquants exploitent cette fonctionnalité en insérant dans l'attribut un SID correspondant à un groupe disposant de privilèges élevés, tel que les administrateurs de domaine. L'attaquant peut alors utiliser le compte pour élever les privilèges, créer des portes dérobées ou exfiltrer des données.
L'injection de l'historique du SID est considérée comme un vecteur d'attaque sophistiqué parce qu'elle :
- Nécessite une connaissance approfondie d'Active Directory et des privilèges élevés.
- contourne les mesures de sécurité standard qui recherchent les modifications directes de l'appartenance à un groupe
- Exploite une connaissance approfondie des mécanismes d'authentification d'Active Directory et de Windows.
Comment fonctionne l'injection de l'historique des SID ?
Certains éléments peuvent rendre les environnements particulièrement vulnérables à l'injection de l'histoire des SID. Ces aspects sont les suivants :
- Systèmes anciens : Les anciens systèmes, en particulier ceux qui ont subi plusieurs migrations de domaines, peuvent conserver des protocoles et des configurations de sécurité obsolètes qui ne sont pas conformes aux meilleures pratiques de sécurité modernes. Ces systèmes ont souvent des attributs résiduels de l'historique SID qui peuvent être négligés lors des audits de sécurité.
- SID oubliés : Au cours des migrations, les attributs de l'historique des SID peuvent s'accumuler. Les anciens SID qui ne sont plus pertinents ou qui ont été déclassés peuvent ne pas être effacés correctement, ce qui laisse une porte dérobée aux attaquants.
- Migrations complexes : Dans les environnements complexes où les migrations impliquent la consolidation de plusieurs domaines, l'historique des SID peut devenir un dépôt de nombreux SID hérités, ce qui augmente la surface d'attaque.
- Permissions mal configurées : Il est essentiel de configurer correctement les autorisations dans Active Directory. Des autorisations mal configurées qui permettent à des comptes non administratifs d'écrire dans les attributs de l'historique du SID peuvent être catastrophiques.
- Contrôles d'accès trop larges : L'octroi d'autorisations trop larges peut permettre à des utilisateurs non administratifs de modifier des attributs sensibles, soit directement, soit par le biais de l'appartenance à un groupe.
- L'administration déléguée : Dans les grandes organisations, la délégation de tâches administratives est courante. Si elle n'est pas correctement supervisée, elle peut conduire les utilisateurs à disposer de plus d'autorisations que nécessaire, y compris la possibilité de modifier l'historique du SID.
- Absence de systèmes d'alerte : De nombreuses organisations ne disposent pas de systèmes d'alerte configurés pour notifier les changements d'attributs critiques dans Active Directory.
- Politiques d'audit inadéquates : Active Directory peut ne pas avoir de paramètres d'audit par défaut configurés pour suivre les modifications des attributs de l'historique des SID, en particulier si l'organisation n'a pas identifié l'injection de l'historique des SID comme un risque potentiel.
Une attaque par injection de l'historique du SID comporte plusieurs étapes qui permettent à l'attaquant d'accroître son emprise sur l'environnement compromis.
Étape 1. Compromis initial
Un attaquant lance souvent une attaque par injection de l'historique du SID en commençant par prendre pied dans le réseau. Cette pénétration peut être réalisée par différentes méthodes :
- Hameçonnage : envoi de courriels élaborés qui semblent légitimes et qui incitent les utilisateurs à fournir des informations d'identification.
- Exploiter des vulnérabilités connues : Cibler des systèmes non corrigés ou utiliser des exploits de type "zero-day".
- Ingénierie sociale : Manipuler les individus pour qu'ils enfreignent les protocoles de sécurité standard.
Dans un exemple, les attaquants ont ciblé une institution financière. Les acteurs malveillants ont incité un employé à ouvrir un document qui exploitait une vulnérabilité dans le logiciel de lecture de documents de l'entreprise. Cet exploit a conduit à l'exécution d'un code malveillant et à l'établissement d'une porte dérobée.
Étape 2 : Enumération de l'environnement AD
Une fois à l'intérieur, l'attaquant énumère l'environnement Active Directory. Cette étape peut impliquer l'utilisation de :
- Requêtes LDAP pour récupérer des informations sur les comptes d'utilisateurs et les autorisations qui leur sont associées
- Scripts PowerShell pour automatiser la collecte de données concernant la structure Active Directory
- les outils de reconnaissance d'Active Directory, tels que BloodHound, qui permettent d'illustrer les relations de privilèges dans Active Directory
Cette énumération permet aux attaquants de découvrir des comptes dotés de privilèges élevés (mais mal contrôlés).
Étape 3 : Modification de l'historique du SID
Muni de l'accès adéquat, l'attaquant procède ensuite aux opérations suivantes :
- Identifier un compte cible : Il peut s'agir d'un compte qui n'est pas très utilisé ou surveillé, connu sous le nom de compte orphelin.
- Modifier l'attribut SID History : À l'aide d'un outil comme Mimikatz, l'attaquant injecte un SID dans l'historique SID du compte ciblé. Ce SID correspond au SID d'un groupe à haut privilège, tel que Domain Admins.
Un cas notable concerne une entreprise technologique. Un pirate a ajouté le SID du groupe Enterprise Admins à un compte de service qui ne nécessitait généralement pas de privilèges aussi élevés.
Étape 4 : escalade des privilèges
Avec l'attribut SID History modifié, l'attaquant peut maintenant :
- Accès aux ressources : Le compte cible - et donc l'attaquant - peut désormais accéder aux ressources qui ne sont autorisées qu'au groupe à privilèges élevés correspondant.
- Créer des portes dérobées : L'attaquant peut créer des comptes supplémentaires ou modifier les comptes existants afin de garantir un accès permanent à l'environnement.
Lors de la violation d'une entité gouvernementale, des acteurs malveillants ont utilisé cette méthode pour élever les privilèges et créer des comptes de porte dérobée pour un accès permanent. Les attaquants ont ensuite utilisé ces comptes pour exfiltrer des données sensibles sur une longue période.
Quels sont les risques associés à l'injection de l'histoire des MSI ?
Les risques liés à l'injection de l'histoire des MSI sont les suivants
- Accès non autorisé : Les attaquants accèdent aux zones sensibles du réseau, ce qui entraîne des violations de données.
- L'escalade des privilèges : Les attaquants élèvent les privilèges sans modifier directement l'appartenance à un groupe afin d'éviter d'être détectés.
- Persistance : Les attaquants peuvent utiliser les SID injectés pour conserver l'accès même après un changement de mot de passe ou une désactivation du compte.
- Mouvement latéral : L'injection de l'historique des SID facilite les mouvements latéraux au sein du réseau, ce qui conduit à une compromission plus large.
Les cyberattaquants ont utilisé cette méthode dans des intrusions en plusieurs étapes, aggravant la brèche initiale par l'injection de l'historique du SID et provoquant une exfiltration importante de données et des dommages au système.
Comment détecter une attaque par injection de l'historique du SID ?
Pour détecter l'injection de l'historique du SID :
- Examiner les journaux d'audit : Examinez régulièrement les journaux d'audit d'Active Directory pour détecter toute modification inattendue de l'attribut SID History.
- Configurer les alertes SIEM : Configurez les systèmes de gestion des informations et des événements de sécurité (SIEM) pour qu'ils émettent des alertes sur les modifications de l'historique des SID. En l'absence d'une surveillance adéquate, les modifications des attributs de l'historique des SID peuvent passer inaperçues.
- Auditer régulièrement la surface d'attaque d'Active Directory : Utilisez les outils de sécurité Active Directory pour rechercher les comptes dont les attributs de l'historique SID ne correspondent pas aux migrations connues. Ces outils peuvent également détecter des indicateurs de compromission que les systèmes SIEM pourraient manquer.
Comment atténuer les effets d'une attaque par injection de l'historique du SID ?
En comprenant et en traitant les aspects vulnérables, les organisations peuvent réduire de manière significative le risque d'injection de l'histoire de la PID. Les stratégies d'atténuation sont les suivantes :
- Mettre à niveau les systèmes existants : Mettez à niveau ou déclassez les systèmes existants et veillez à ce que tous les attributs de l'historique SID soient correctement gérés et effacés lors des migrations de domaines.
- Examinez les autorisations : Vérifiez que seuls les comptes de confiance ont le droit d'écrire dans l'attribut SID History.
- Mettre en œuvre le principe du moindre privilège : Vérifier régulièrement les autorisations et s'assurer que seuls les droits nécessaires sont accordés aux utilisateurs.
- Utiliser des solutions PAM : Mettre en œuvre des solutions de gestion des accès privilégiés (PAM) pour limiter et contrôler les accès privilégiés.
- Améliorer la surveillance : Mettre en œuvre des solutions avancées de surveillance d'Active Directory qui alertent sur les changements d'attributs critiques tels que l'historique du SID.
- Corrections et mises à jour : maintenir tous les systèmes corrigés et mis à jour afin de prévenir les vecteurs de compromission initiaux.
En outre, les administrateurs d'Active Directory doivent prendre les mesures suivantes :
- Activer l'audit : Auditer Active Directory pour détecter les modifications apportées à l'historique des SID. Dans l'idéal, activez l'annulation automatique de ces modifications jusqu'à ce que leur légitimité puisse être vérifiée.
- Mettre en œuvre le principe du moindre privilège : Appliquer le principe du moindre privilège à tous les comptes Active Directory.
- Former le personnel : Former le personnel informatique à reconnaître les signes d'une injection d'histoire de SID et à réagir de manière appropriée.
- Procéder à des examens réguliers : Effectuer des contrôles d'accès périodiques pour les groupes à haut niveau de privilèges.
Protection contre l'injection de l'historique du SID
L'injection de l'historique du SID est une attaque furtive qui peut entraîner des failles de sécurité importantes. La subtilité et la complexité de l'attaque la rendent particulièrement dangereuse, car elle peut souvent rester indétectée en l'absence de contrôles et de surveillances spécifiques axés sur l'attribut SID History. Les incidents réels soulignent la nécessité de mesures de sécurité robustes et d'une vigilance constante.
Les organisations doivent mettre en place des pratiques de sécurité robustes - y compris une surveillance régulière, un accès à moindre privilège et une formation des utilisateurs - pour se protéger contre de telles attaques.
Les organisations doivent également rester vigilantes et proactives dans la protection de leurs environnements Active Directory pour contrer l'injection de l'historique du SID et d'autres menaces émergentes.