
Outil PowerShell pour automatiser l'énumération d'Active Directory.
Évaluation complète de la sécurité Active Directory — zéro dépendance, fichier unique, prêt à l'emploi.
adPEAS est un outil d'évaluation de la sécurité basé sur PowerShell qui identifie les mauvaises configurations, les vulnérabilités et les chemins d'élévation de privilèges dans les environnements Active Directory. Il est conçu pour les testeurs d'intrusion, les auditeurs de sécurité et les équipes rouges qui ont besoin d'un outil fiable et autonome fonctionnant sur n'importe quel système Windows — sans RSAT, sans module ActiveDirectory, sans dépendances tierces.
adPEAS v2 est une réécriture complète d'adPEAS v1. Il remplace l'approche héritée DirectoryEntry/DirectorySearcher par une architecture unifiée System.DirectoryServices.Protocols.LdapConnection et ajoute l'authentification Kerberos native, des rapports avancés et des opérations offensives — le tout en PowerShell pur.
Nouveau sur adPEAS ? Consultez le Guide de démarrage rapide ou lisez la série d'articles de blog sur blog.sekurity.de pour une analyse approfondie de l'architecture, de l'authentification et des mécanismes internes.
Aucun module ActiveDirectory, RSAT ou module PowerShell externe requis.
Les quatre versions sont fonctionnellement identiques. Choisissez en fonction de votre scénario de déploiement.
# Cloner le dépôt
git clone https://github.com/61106960/adPEAS.git
cd adPEAS
La branche main ne contient que les fichiers sources (src/). Les versions compilées sont jointes à chaque version GitHub. Si vous souhaitez compiler à partir des dernières sources, utilisez le script de compilation inclus :
git clone https://github.com/61106960/adPEAS.git
cd adPEAS
.\Build-Release.ps1
Cela produit les quatre variantes (adPEAS.ps1, adPEAS_min.ps1, adPEAS_ultra.ps1, adPEAS_obf.ps1) à la racine du dépôt. Nécessite Windows PowerShell 5.1 et aucune dépendance supplémentaire.
# Option 1 : Importer en tant que module (recommandé)
Import-Module .\adPEAS.ps1
# Option 2 : Dot-sourcing
. .\adPEAS.ps1
# Option 3 : Lire et exécuter en mémoire
Get-Content -Raw .\adPEAS.ps1 | Invoke-Expression
# Option 4 : Charger directement depuis GitHub en mémoire (aucun fichier sur disque)
Invoke-Expression (Invoke-WebRequest -Uri "https://raw.githubusercontent.com/61106960/adPEAS/main/adPEAS_obf.ps1" -UseBasicParsing).Content
# Machine jointe au domaine (utilisateur courant)
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth
# Avec identifiants
Invoke-adPEAS -Domain "contoso.com" -Username "john.doe" -Password "P@ssw0rd!"
# Mode OPSEC (ignorer Kerberoast, ASREPRoast, BloodHound)
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -OPSEC
# Se connecter une fois
Connect-adPEAS -Domain "contoso.com" -UseWindowsAuth
# Exécuter une analyse complète
Invoke-adPEAS
# Ou exécuter des contrôles individuels
Get-KerberoastableAccounts
Get-ADCSVulnerabilities
Get-DangerousACLs
# Se déconnecter une fois terminé
Disconnect-adPEAS
# Identifiants
Connect-adPEAS -Domain "contoso.com" -Credential (Get-Credential)
# Overpass-the-Hash (NT-Hash)
Connect-adPEAS -Domain "contoso.com" -Username "admin" -NTHash "32ED87BDB5FDC5E9CBA88547376818D4"
# Pass-the-Key (AES256)
Connect-adPEAS -Domain "contoso.com" -Username "admin" -AES256Key "4a3b2c1d5e6f..."
# PKINIT (Certificat)
Connect-adPEAS -Domain "contoso.com" -Certificate "user.pfx"
# Pass-the-Cert / Schannel (LDAPS, sans Kerberos)
Connect-adPEAS -Domain "contoso.com" -Certificate "user.pfx" -PassTheCert
# LDAPS
Connect-adPEAS -Domain "contoso.com" -UseWindowsAuth -UseLDAPS
# Tous les formats (par défaut) — crée .txt, .html et .json
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -Outputfile .\report
# HTML uniquement
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -Outputfile .\report -Format HTML
# Conversion de rapport hors ligne à partir de JSON
Convert-adPEASReport -InputJson ".\report.json" -OutputPath ".\new_report"
# Comparer deux analyses (rapport de différences)
Compare-adPEASReport -Baseline ".\scan_q1.json" -Current ".\scan_q2.json" -OutputPath ".\diff"
Exécuter des modules spécifiques :
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -Module Domain,Creds,ADCS
Ou exécuter tout sauf quelques modules, sans lister le reste :
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -ExcludeModule Bloodhound,Computer
La documentation complète est disponible dans le répertoire docs/ :
Une série détaillée d'articles de blog couvrant les mécanismes internes d'adPEAS v2 est publiée sur blog.sekurity.de.
adPEAS est disponible en code source ouvert. Les évaluations de sécurité internes de votre propre organisation sont gratuites. L'utilisation commerciale (conseil, MSP, missions rémunérées) nécessite une licence commerciale.
Voir LICENSE pour les conditions complètes, COMMERCIAL_AGREEMENT pour l'accord commercial, et PRICING pour les options de licence.
adPEAS est destiné uniquement aux tests de sécurité autorisés. Obtenez toujours une autorisation écrite avant de tester. N'utilisez jamais cet outil contre des systèmes que vous ne possédez pas ou pour lesquels vous n'avez pas la permission de tester. Les auteurs ne sont pas responsables d'une mauvaise utilisation de cet outil. Conformez-vous à toutes les lois et réglementations applicables.
Alexander Sturz — SEKurity GmbH
| Catégorie | Points forts |
|---|
| Authentification | Identifiants, PKINIT, Pass-the-Cert, NT-Hash, clés AES, authentification Windows, Kerberos en premier avec repli automatique |
| Contrôles de sécurité | Configuration du domaine, Kerberoast, ASREPRoast, ACL, DCSync, délégation, chemins d'escalade AD CS, abus GPO, LAPS, clés de récupération BitLocker, systèmes obsolètes |
| Rapports | Console (codage couleur), texte brut, HTML interactif, export JSON |
| Opérations offensives | Kerberoasting, AS-REP Roasting, Golden/Silver/Diamond Tickets, RBCD, Shadow Credentials, Pass-the-Ticket |
| BloodHound | Collecteur BloodHound CE intégré (export ZIP) |
| Mode OPSEC | Ignorer les tests actifs (Kerberoast, ASREPRoast, BloodHound) |
| Déploiement | Fichier .ps1 unique, sans RSAT, sans modules externes, fonctionne hors ligne et en environnement isolé |
| Fichier | Taille | Cas d'utilisation |
|---|
adPEAS.ps1 | ~4,5 Mo | Développement, débogage, revue de code |
adPEAS_min.ps1 | ~3-4 Mo | Utilisation régulière avec une empreinte réduite |
adPEAS_ultra.ps1 | ~3 Mo | Taille minimale, sans commentaires |
adPEAS_obf.ps1 | <1 Mo | Taille la plus réduite, obfusqué pour le transfert |
| Module | Description |
|---|
Domain | Configuration du domaine, approbations, stratégie de mots de passe, signature LDAP, signature SMB |
Creds | Kerberoast, ASREPRoast, accès aux clés de récupération LAPS et BitLocker, exposition d'identifiants dans SYSVOL |
Rights | ACL, DCSync, droits de réinitialisation de mot de passe, autorisations dangereuses sur les OU |
Delegation | Délégation non contrainte, contrainte, délégation contrainte basée sur les ressources |
ADCS | Modèles de certificats et autorités de certification : ESC1-ESC5, ESC8, ESC9, ESC13, ESC14, ESC15 (ESC10 via le contrôle GPO). Les chemins d'escalade nécessitant un accès administratif à l'hôte de l'autorité de certification sont hors périmètre — voir Contrôles de sécurité |
Accounts | Comptes privilégiés, utilisateurs protégés, comptes de service, historique SID |
GPO | Autorisations GPO, appartenance aux groupes locaux, tâches planifiées, scripts, paramètres de registre dangereux (WDigest, AlwaysInstallElevated, OneLogon/Zerologon, …) et stratégies de pilotes d'imprimante Point and Print (PrintNightmare) déployées via GPO |
Computer | LAPS, systèmes obsolètes, serveurs d'infrastructure |
Application | Infrastructure Exchange, SCCM, SCOM |
Bloodhound | Collecte de données BloodHound CE |
| Document | Sujet |
|---|
| Installation | Téléchargement, configuration, stratégie d'exécution |
| Démarrage rapide | Commencer en 5 minutes |
| Authentification | Toutes les options d'authentification |
| Contrôles de sécurité | Référence complète des contrôles |
| Collecteur BloodHound | Export BloodHound CE |
| Fonctions principales | Fonctions de requête LDAP |
| Modules Set- et New- | Fonctions de modification AD |
| Fonctions auxiliaires | Fonctions utilitaires |
| Architecture | Architecture technique |
| Évaluation des risques | Sévérité et scores de risque |
| Dépannage | Problèmes courants et solutions |
| FAQ | Questions fréquemment posées |