Le PAD pour proposer une amélioration à cette page : https://pad.zenk-security.com/p/merci
intro
Le problème est que la plus part des Active Directory ont été mis en place vers 2005 et ils n'ont pas été conçu pour les menaces d'aujourd'hui.
Les Active Directory gèrent tout qu'on parle de local ou en cloud.
La sécurité périmétrique (règles ACL , Firewall), ne corrigent que 10% de la sécurité.
Ce wiki vient en plus du document de l'ANSSI “Recommandations de sécurité relatives à Active Directory.”, https://www.ssi.gouv.fr/uploads/IMG/pdf/NP_ActiveDirectory_NoteTech.pdf
Une recommandation des meilleurs pratiques : https://docs.microsoft.com/fr-fr/windows-server/identity/ad-ds/plan/security-best-practices/best-practices-for-securing-active-directory
Petits QCM, Pour voir quel est le niveau de sécurité de votre Active Directory ? Répondez par oui ou non
Question1
Sans vérifier , pouvez vous me dire combien de comptes sont administrateurs de vos domaine d'Active Directory?
Question2
Avez vous la liste de tous les changements réalisés ? par qui ? quoi ? sur votre Active Directory depuis 90 jours?
Question3
Avez vous une trace vidéo ou texte de l'ensemble des actions réalisés par vos comptes à pouvoir ?
Question4
Êtes vous capable de restaurer toute la forêt de l'Active Directory dans les 24h?
Question5
Si un utilisateur utilise un outil pour accéder à la mémoire du PC, êtes vous capable de le détecter ?
Question6
Est ce qu'un compte d'administrateur de domaine à la possibilité d'ouvrir une session sur un serveur membre afin de l'administrer ?
Question7
Est ce que le compte de service utilisé pour faire tourner vos antivirus sur vos poste de travail est membre du groupe “Domain admins” ?
Question8
Est ce que vos comptes administrateurs de domaine utilisent un deuxieme facteur d'authentification pour ouvrir une session ?
Question9
Dans votre RACI lié à l'activité de gestion Active Directory, avez vous identifier la notion de Data et services ?
Question10
Utilisez vous un systeme de recertification de vos objets GPOs et Security Group sur un intervalle inférieur à 1 ans.
Question 11
Connaissez-vous la version du Schéma Active Directory actuellement utilisée ?
Réponse
Question 1
Oui
Question 2
Oui
Il faut avoir des outils pour suivre les changements ( les outils qui auditent les logs et qui enregistrent un flux vidéos des actions utilisateurs)
Question 3
Oui
C'est obligatoire pour être habilité PCI DSS
Question 4
Oui
Question 5
Oui
La plus part des attaques ransomware et pour dump les hashs utilisent la ram.
Question 6
Non
Il faut empêcher absolument un admin de se connecter n'importe où pour eviter qu'un pirate crack le mot de passe de l'admin si par erreur l'admin s'est connecté à un serveur infecté
Question 7
Non
Question 8
Oui
Question 9
Oui
Il faut séparer la partie service et data. La partie data c 'est elle qui gère le contenu et la partie service qui gère les privilèges.
Question 10
Oui
La notion de recertification . Il faut recertifier les GPO ou les objets non utilisé depuis plus de 5ans
Question 11
Oui
Les antivirus sur l'Active Directory utilisent le compte de services admin qui est executé sur une machine en local.
Pour la démo :
On se connecte sur une compte local admin de la machine pour ce hack. On creé un service démo comptedeservicetest
Dans les options du service (via l'acces à la gestion de service de win) , on met le mot de passe du compte de service)
Pour le hack :
On rentre dans un invite de command : psexec.exe -s -i -d cmd.exe
Le but est d'executer un invite de command uniquement en local
on lance l'outil scpd pour cracker le mot de passe d'un utilisateur de service : scpd.exe comptedeservicetest
on crack le mot de passe .
Utiliser des smartcards pour vérifier l'intégrité des identités des utilisateurs
Ne pas utiliser un LDAP pour se connecter à un Active Directory mais utiliser un Kerberos pour s'authentifier
Limiter les admins
Avoir un MFA (Multificator Authentification) , par exemple un token , smartcard; apel téléphonique, .. .
Avoir une MFA pour une authentification et pour une action que demande des droits.
Par exemple si un compte non admin demande une action pour élever les privilèges il a besoin de MFA.
Gérer les privilèges depuis un seul point, chaque groupe d'utilisateur a des rôles dans l'Active Directory .
Auditer en temps réel une sessions,
Avoir une session vidéo de chaque machine à l'ouverture de session et sur une demande d’augmentation des droits.
Limiter les machines qui peuvent se connecter à l'Active Directory .Autoriser dans l'AD que certaines machine à se connecter sur l'Active Directory .
Il faut utiliser trois couches qui correspondent à des niveaux de couche de l'Active Directory .
Par exemple : la première couche, la couche domain controller ( Domain controller, domain admin)
la deuxième couche, les serveurs membres.
la troisième couche, les devices (workstation , imprimante , les téléphones ..)
Il faut que ces couches n’accèdent pas aux autres couches directement.
Certain serveur doivent être dans plusieurs couches
Le but est que si on a une couche compromise , elle ne compromet pas tout
Par exemple si je suis admin , j'ai 4 comptes un compte admin local et un compte par couche.
Se protéger du social engineering
no comment.. Il faut former les utilisateurs..
Se protéger de l'élévation de privilége verticale d'un compte
Chiffrer le disque dur
Avoir un mot de passe bios
Pas d'authentification admin sur Worksation
Rotation des mots de Passe
Respect de design 3 tiers
Aucun user ne doit être admin local .
Limiter le nombre de sessions en cache qui se connecte sur la machine
Faire du MFA
Mettre en place un compte admin comme honey pot. (Mettre une règle dans le système de log qui vérifie des tentative de connexion de ce compte ou de changement de groupe de ce groupe)
Avoir un plan B en cas d'attaque. Il y a deux façons de le faire , restaurer via des outils de Microsoft . Ou utiliser un outil tiers pour faire un backup de la forêt.
+ Lancer sharphound sur le PC cible
+ Charger les données de sharphound dans bloodhound
+ Exécuter des requêtes :
hausec: https://hausec.com/2019/09/09/bloodhound-cypher-cheatsheet/
CompassSecurity : https://github.com/CompassSecurity/BloodHoundQueries
seajaysec : https://gist.github.com/seajaysec/a4d4a545047a51053d52cba567f78a9b
Active-Directory-Exploitation-Cheat-Sheet : https://github.com/S1ckB0y1337/Active-Directory-Exploitation-Cheat-Sheet
Un très bon siteweb complet sur la sécurité Active Directory : https://adsecurity.org/
Recommandations de sécurité relatives à Active Directory : https://www.ssi.gouv.fr/uploads/IMG/pdf/NP_ActiveDirectory_NoteTech.pdf
Outil pour auditer an Active Directory (Engie) : https://www.pingcastle.com/
Outil pour auditer an Active Directory (Airbus Group) : https://bitbucket.org/iwseclabs/bta
Outil pour auditer an Active Directory (ANSSI): https://github.com/ANSSI-FR/AD-control-paths
Outil pour auditer an Active Directory (): https://www.open-scap.org/tools/
Active Directory & Enterprise Security, Methods to Secure Active Directory, Attack Methods & Effective Defenses, PowerShell, Tech Notes, & Geek Trivia… : https://adsecurity.org/
L’administration en silo, Aurélien Bordes , SSTIC – 7 juin 2017,Powerpoint : https://www.sstic.org/media/SSTIC2017/SSTIC-actes/administration_en_silo/SSTIC2017-Slides-administration_en_silo-bordes.pdf Video : https://static.sstic.org/videos2017/SSTIC_2017-06-07_P02.mp4
Recommandations de sécurité relatives à Active Directory, https://www.ssi.gouv.fr/uploads/IMG/pdf/NP_ActiveDirectory_NoteTech.pdf
OpenScap tutorial (for RedHat), https://martin.preisler.me/wp-content/uploads/2016/07/RedHat-Summit2016-OpenSCAP-slides.pdf
OpenScap tutorial (for Windows),https://www.vutbr.cz/www_base/zav_prace_soubor_verejne.php?file_id=181284
Top 25 Active Directory Security Best Practices : https://activedirectorypro.com/active-directory-security-best-practices/
Alsid Directory Security Compliance: https://alsid.eu/media/Alsid_Directory_Security_Compliance_Datasheet.pdf