Pentest & Bug Bounty
  • 🥷Pentest et Bug Bounty
    • 👾Pentest Methodology
    • 💸Bug Bounty Methodology
      • 📓Ecrire un bon rapport
      • ⚖️Aspect Juridique (FR)
  • 👣OSINT / Recon
    • 🧦Sock Puppet
    • 🧠Mindmaps
    • 🏢Entreprise
    • 👀Leaks
    • 👊Manuel / Dorks
      • Google dorks
      • Github dorks
      • Twitter Dorks
      • Shodan Dorks
    • 👥Réseaux sociaux (SOCMINT)
      • 🕵️Telegram OSINT
      • 👻Snapchat OSINT
      • 🤵‍♂️Linkedin OSINT
      • 🗣️Facebook OSINT
      • 🎼Tik tok OSINT
      • 📷Instagram OSINT
      • 🐦Twitter OSINT
      • 🔊Discord OSINT
    • 🖇️Domaines et Sous-domaines
    • 🚪Scan de ports / web
    • ✉️Emails
    • 🔗Réseau
    • 📷Screenshots
    • 📹Live camera
    • 🧔Reconnaissance faciale / images
    • 🌆Images
    • 🗺️Maps
    • 👁️Active Directory
    • ☁️Cloud
    • Autre
  • 🌐Pentest Web
    • ✊Brute force / Fuzzing
    • 💉Injections
      • 🍪XSS
        • PDF injection
      • 📄HTMLi
      • 📃XXE
      • 7️⃣SSTI
      • 🔢SQLi
        • 👫UNION based
        • ⏳Time based
        • 🥽Boolean based / Error Based
        • 📤Out-Of-Band
      • ↩️CRLF
      • 🐚OS injection
      • ☕Log4Shell
      • 🥠CSV
      • 🍻ESI
      • 😎XSLT
      • 💌Injections dans emails
      • 🔀ELi
        • OGNLi
    • ↪️Open redirect
    • 📁Path Traversal / LFI / RFI
    • 🔓Bypass
      • 〰️WAF / Filter bypass
      • 2️2FA
    • ☠️Charges utiles
    • 📚CMS (Content Management System)
      • WordPress
      • Joomla!
      • Magento
      • Drupal
    • 🎭SOP bypass
      • CORS
      • postMessage()
      • JSONP
    • 🖱️Clickjacking
    • ⚙️Insecure deserialization
    • ☣️Web Cache Poisoning / Deception
    • 🤝HTTP Smuggling
    • 👋OAuth
    • ⛔SAML
    • 🗝️JSON Web Token
    • 🎣CSRF
      • 🚀Cross-site WebSocket Hijacking (CSWSH)
    • 🎯IDOR
    • 🕹️SSRF
      • Cloud SSRF
      • Protocol Smuggling
    • ⚙️APIs
      • 🍽️REST
      • 📶GraphQL
    • ❓Mot de passe oublié
    • 🛒Fonctions d'achat et de facturation
    • 👽Broken authentication / register
    • 🏁Panneaux d'administration
    • ⏬Upload features
    • 🔗Broken Link Hijacking
    • 🎮Prise de contrôle de sous-domaine
    • 🛂Prise de contrôle de DNS
    • ☝️One liners
    • 🚧Misconfigurations
    • 🗿Analyse statique
      • PHP
      • Ruby On Rails
      • Perl
      • JAVA
      • Javascript
      • Python
      • Golang
      • .NET
    • 🪣AWS S3
    • 🤖Captcha
    • 🪞Race conditions
    • ☄️.git exposé
    • 💭Business logic
    • 🥡Prototype pollution
    • 💣Dependency confusion
    • 🛑DoS
      • 🤯ReDoS
      • 👏Hash flooding
      • 🧨Cookie bomb
    • Autre
      • Flask
      • Symphony
      • Spring Boot
      • Django
      • Jenkins
  • 🌩️Pentest Cloud
    • IaC (Infrastructure as Code)
      • Terraform
      • Helm
      • Kustomize
    • AWS
      • Enumeration
    • Azure
      • Entra ID
      • Azure Resource Manager (ARM)
        • Enumeration
    • GCP
      • GCP IAM
      • Authentification
      • Enumeration
    • Kubernetes
  • 🕸️Pentest Réseau
    • 🪡Protocoles réseau
    • 📡Wifi
    • 🔋BLE
    • 📍VPN
  • 🗂️Pentest AD
    • 👺GPP
    • ➡️Mouvements latéraux
      • 🔪Pass The Hash
      • 🗡️Over Pass The Hash
    • 📜ADCS
  • 📱Pentest Mobile
    • 🤖Android
      • 👾Méthodologie
      • 🌳Setup environnement
      • 🍇Collecte d'informations
      • 🔠Enumeration des données locales
      • 🔙Reverse engineering
        • 🪢Dé-obfuscation
      • ⛰️Analyse statique (Android)
      • 🐞Debug
      • 🎰Stockage de données non sécurisé
        • 📰Logs
        • 🤝Shared Preferences
        • 🔤Strings
        • 🗄️SQLite DB
        • 🗃️Realm DB
        • 🧠Mémoire
        • 📍Copy/Paste buffer caching
        • ⌨️Keyboard press caching
        • 🔙Backup
        • Carte SD
      • 🌩️Firebase/Appspot misconfig
      • 🔗Deeplinks vulns
        • Interception de contenu
        • WebView hijacking (via deeplink)
        • Invalid Digital assets links
      • 🖼️WebView vulns
        • WebView Hijacking
        • Exfiltration de données
        • RXSS
        • Vol de token
      • Guides outils
        • ⛏️Outil Drozer
          • Injections SQL (Android)
          • Path traversal (Android)
        • 🔬Outil Objection
        • 🪝Outil Frida
        • Outil Medusa / Mango
      • Bypass
        • 📲Contournement de détection d'emulateur
          • 📂Fichiers d'emulateurs
          • 🙋‍♂️Network Operator Name
        • 🦷Contournement des détections de rootage
          • 🧮Root management
          • 🗝️Clé de signature du noyau
          • 🧊Props dangereux
          • 🦸‍♂️Binaire "su"
          • ❌Permissions sur les repertoires
        • ☝️Contournement des protections biometriques
        • 📜SSL pinning bypass
        • Contournement de code PIN
      • 🔳Lecteur de code QR/EAN/Barres...
      • 💔Injection de backdoor
      • 🪧Task hijacking
      • 🎭Overlay attacks
        • Tapjacking
        • Invisible Keyboard
      • 📵Résilience
        • ⌨️Third Party Keyboards
        • ©️Allowed Copy/Paste on sensitive fields
        • 🛤️Background screen caching
        • 🖋️Schémas de signature
        • ⬆️In-App updates
      • 🤯Corruption de Mémoire
    • 🍏iOS
      • 🥅Méthodologie
      • 🧱Setup environnement (iOS)
      • ⏮️Reverse engineering (iOS)
      • 🏔️Analyse statique (iOS)
      • 🧿Contournement de détection de Jailbreak
      • 📌SSL pinning bypass (iOS)
      • 👇Contournement d'authentification biométrique
      • 🐛Contournement d'anti-Hooking/Debugging
      • 🙈Stockage de données non sécurisé (iOS)
        • 💭Mémoire (iOS)
        • 🏓Copy/Paste buffer caching (iOS)
        • 🍪Cookies (iOS)
        • 🗞️Logs (iOS)
        • ⌨️Cache du clavier (IOS)
        • Backup (IOS)
      • 📱Background screen caching
      • 🧑‍🚀WebView vulns (iOS)
      • Deeplinks vulns (iOS)
      • Lecteur de code QR
      • Firebase misc
  • 👷Pentest physique
    • 🔐Crochetage
    • 💳RFID
    • ⚙️Equipements
    • 💾Hardware Hacking
      • 📈UART
      • 🧪JTAG
      • ⚡SWD
      • 🪢SPI
      • 🚌I²C
      • 🔴Fault Injection
      • Side-Channel Attacks
    • 🐣Firmware hacking
  • 🖨️Pentest IoT
    • ⏪Replay de stream camera
    • 🗣️Assistants vocaux
    • 📹Camera IP
    • ⬇️DoS
    • 🖨️Imprimantes
    • 🎬Chromecast
  • 💀Hacking protocols
    • 😩Telnet - port 23
    • 🔐SSH - port 22
    • 📤FTP - port 21
    • ❔Whois - port 43
    • 👉DNS - port 53
    • 🐕‍🦺Kerberos - port 88
    • 💼SNMP - ports 161-162
    • 📨SMB - ports 445-139
    • 📧SMTP - ports 25-587
    • 🎦RTSP - port 554
    • 🔎MS-RPC - ports 135-593
    • ➕Rsync - port 873
    • 🔢MS-SQL - port 1433
    • 🏗️Docker - port 2375
    • 🔡MySQL - port 3306
    • 📝LDAP - ports 389, 636, 3268, 3269
    • 🖥️RDP - port 3389
    • ⌨️VNC - ports 5800,5801,5900,5901
  • 😈Ingénierie sociale
    • 🧠Concepts / Principes / Attaques
    • 🪧Ethique
    • 👤Profils comportementaux
  • 🔓Crack
  • 🛠️Autres outils utiles
    • 🚿Sandbox / Sanitizer
    • 🔤Générateurs de wordlists personnalisées
  • 🌜Post-Exploitation
    • 👔Énumération /Élévation de privilèges
      • 🐧Linux
        • CVE-2022-0847 (Dirty Pipe)
        • CVE 2021-4034 (PwnKit)
        • CVE 2021-3560 (Polkit)
      • 🪟Windows
        • 🖨️PrintNightmare
        • 🖨️SpoolFool
        • 🆔Usurpation de SAMAccountName
        • ⏲️Scheduled task/job (T1573.005)
        • 🐝HiveNightmare
        • 🔑Stored Credentials
        • 🎩SeImpersonatePrivilege
        • 🎒SeBackupPrivilege
        • 🍞Unquoted Service Path
        • 🧩DLL Hijacking
        • ©️SeBackupPrivilege
      • ⛴️Docker
    • 👻Effacement des traces
    • ⚓Persistance / Downloaders
    • 🛡️Defense evasion
    • 📦Exfiltration de Données
  • 🔎Forensic
    • 💡Méthodologie
    • 📺Live forensic
    • 💻Mémoire non volatile
    • 🕊️Mémoire volatile
    • 📄File forensic
Propulsé par GitBook
Sur cette page
  • Sites
  • PingCastle
  • BloodHound
  • Remote bloodhound ingestion with bloodhound-python
  • RustHound
  • Local bloodhound ingestion with SharpHound
  • Impacket - GetADUsers.py
  • rpcclient
  • AD Explorer
  • Utiliser AD explorer pour bloodhound
  • ADModule
  • Enumération d'Active Directory avec Powerview
  • Enumération du domaine
  • Enumération des utilisateurs
  • Enumération des ordinateurs
  • Enumération des groupes
  • Enumération par machine
  • Partages
  • GPO
  • Domain Trust Enumeration
  • Recherche d'élévation
  • Enumération des ACL

Cet article vous a-t-il été utile ?

  1. OSINT / Recon

Active Directory

Liste d'outils dédiés à la reconnaissance d'active directory

PrécédentMapsSuivantCloud

Dernière mise à jour il y a 3 mois

Cet article vous a-t-il été utile ?

Sites

PingCastle

PingCastle est un outil multifonction permettant d'auditer un environnement d'Active Directory.

ressource:

BloodHound

BloodHound utilise la théorie des graphes pour révéler les relations cachées et souvent involontaires au sein d'un environnement Active Directory ou Azure. Les attaquants peuvent utiliser BloodHound pour identifier facilement des chemins d'attaque très complexes qui seraient autrement impossibles à identifier rapidement.

ressource:

Remote bloodhound ingestion with bloodhound-python

$ bloodhound-python -u <username> -p <password> -d <domain> -v --zip -c All -dc <Domain Controller> -ns <Target IP>

RustHound

RustHound est un ingestor pour BloodHound écrit en Rust

Exemple d'utilisation:

$ rusthound -d domain.local -u '<username>' -p '<password>' -o /tmp/demo -z

Local bloodhound ingestion with SharpHound

Exemple d'utilisation:

> SharpHound.exe --CollectionMethod all -d <domain>

Impacket - GetADUsers.py

GetADUsers.py est un code exemple de la suite Impacket permettant d'énumérer les utilisateurs d'un domaine avec les identifiant d'un utilisateur du domaine.

Exemple d'utilisation:

$ python3 GetADUsers.py -all -dc-ip <dc_ip> <domain>/<username>

rpcclient

rpcclient est un utilitaire initialement développé pour tester la fonctionnalité MS-RPC dans Samba lui-même.

Voir la section Hacking protocols pour plus d'informations sur comment l'utiliser dans le cadre de tests d'intrusion.

AD Explorer

Active Directory Explorer (AD Explorer) est un visualiseur et un éditeur avancés d'Active Directory (AD). Vous pouvez utiliser AD Explorer pour naviguer facilement dans une base de données AD, définir des emplacements favoris, afficher les propriétés et les attributs des objets sans avoir à ouvrir de boîtes de dialogue, modifier les autorisations, afficher le schéma d'un objet et exécuter des recherches sophistiquées que vous pouvez enregistrer et réexécuter.

Utiliser AD explorer pour bloodhound

Il est possible de faire un snapshot dans AD Explorer en allant dans File > Create snapshot...

Cela vous permettra de créer un snapshot du Domaine en ".dat" que vous devrez alors convertir dans un format compatible avec BloodHound.

ADExplorerSnapshot

ADExplorerSnapshot est un outil capable de convertir ce fichier .dat en .json importable dans BloodHound.

Exemple d'utilisation:

$ python3 ADExplorerSnapshot.py <snapshot.dat>

ADModule

Module PowerShell ActiveDirectory signé par Microsoft.

Enumération d'Active Directory avec Powerview

Enumération du domaine

> Get-NetDomain  #Donne des informations sur le domaine courrant

Forest                : target.com
DomainControllers     : (DC-01.target.com)
Chilldren             :
DomainMode            :
...

> Get-NetDomain -domain <domain>  #Donne des infomations sur un domaine spécifique

> (Get-DomainPolicy).”system access” #Permet de relever les politiques du domaine courant

PasswordConplexity       <1>
MaximumPasswordAge       <42>
MinimumPasswordLength    <8>
...

> Get-NetDomainController  #Donne des informations sur le controleur de domaine courant

Forest            : target.com
CurrentTime       : ...
OSVersion         : Windows Server 2012 R2 Standard Evaluation
Roles             : (...)
...

Enumération des utilisateurs

> Get-NetUser  #Donne l'ensemble des utilsateurs du domaine courant avec leurs informations

> Get-UserProperty –Properties pwdlastset
  #Donne la date de la derniere màj de mot de passe faite pour chaque utilisateur

# Certains administrateurs font parfois l'erreur de mettre le mot de passe d'un compte utilisateur du domaine dans le champ description de celui-ci (souvent lors de création de compte test).
# Cette commande vous permettra de rechercher correspondance avec un mot clé (ici pass) dans le champs Description de chaque utilisateur
> Find-UserField -SearchField Description –SearchTerm “pass”

samaccountname                        Description
--------------
UserTest                              password P@ssw0rd123



Enumération des ordinateurs

> Get-NetComputer  #Donne la liste des ordinateurs dans le domaine courant

> Get-NetComputer –OperatingSystem "Windows Server 2012"  #Permet de rechercher les ordinateurs avec un OS spécifique

> Get-NetComputer -Ping  #Donne tous les ordinateurs actifs dans le domaine courant


Enumération des groupes

> Get-NetGroup  #Donne l'ensemble des groupes du domaine courant

> Get-NetGroup *admin*
  #Donne l'ensemble des groupes contenant "admin" dans leur nom

> Get-NetGroupMember -GroupName "Domain Admins" #Donne l'ensemble des utilisateurs du groupe spécifié

> Get-NetGroup –UserName "<username>"  #Inversement, donne l'ensemble des groupes auxquels appartient l'utilisateur spécifié




Enumération par machine

> Get-NetLocalGroup –ComputerName <computername> #Donne la liste des utilisateurs locaux sur la machine (nécessite des droits administrateur)

> Get-NetLoggedon –ComputerName <computername>  #Donne les utilisateur actuellement connectés à une machine spécifique

> Get-LastLoggedOn –ComputerName <computername>  #Donne le dernier utilisateur qui s'est connecté à la machine



Partages

> Invoke-ShareFinder
 #Permet de trouver les partages présents sur l'hôte et dans le domaine courant

GPO

> Get-NetGPO -ComputerName <computername> #Donne la liste des GPO sur une machine spécifique

> Find-GPOComputerAdmin –Computername <computername> #Utilisez cette commande pour rechercher des utilisateurs disposant de droits d'administrateur local sur la machine


> Find-GPOLocation -UserName <username> #Utilisez cette commande pour rechercher tous les ordinateurs sur lesquels l'utilisateur spécifié dispose de droits d'administrateur local dans le domaine actuel via le GPO appliqué.

> Get-NetOU  #Utilisez cette commande pour obtenir toutes les unités d'organisation pdu domaine actuel.


Domain Trust Enumeration

Dans un environnement AD, la confiance est une relation entre deux domaines ou forêts qui permet aux utilisateurs d'un domaine ou d'une forêt d'accéder aux ressources de l'autre domaine ou forêt.

Par exemple, un utilisateur du domaine A peut demander ou accéder aux ressources du domaine B (comme interroger les ordinateurs du domaine B).

Direction des approbations :

  • Approbation bidirectionnelle (bidirectionnelle) : les utilisateurs du domaine A peuvent accéder aux ressources du domaine B et vice versa.

  • Confiance unidirectionnelle (Unidirectionnelle) : Les utilisateurs du domaine de confiance peuvent accéder aux ressources du domaine de confiance mais l'inverse n'est pas vrai.

Transitivité des confiances :

  • Confiance parent-enfant : Elle est créée automatiquement entre le nouveau domaine et le domaine qui le précède dans la hiérarchie de l'espace de noms, chaque fois qu'un nouveau domaine est ajouté dans une arborescence. Par exemple, usa.target.com est un enfant de target.com). Cette confiance est toujours transitive dans les deux sens.

  • Approbation de racine d'arborescence : elle est créée automatiquement chaque fois qu'une nouvelle arborescence de domaine est ajoutée à une racine de forêt. Cette confiance est toujours transitive dans les deux sens.

Approbations externes : entre deux domaines dans des forêts différentes lorsque les forêts n'ont pas de relation d'approbation. Il peut être unidirectionnel ou bidirectionnel et non transitif.

En tant que red teamers, il est important d'énumérer les approbations de domaine afin d'étendre la surface d'attaque.

> Get-NetDomainTrust  #Utilisez cette commande pour obtenir une liste de toutes les approbations de domaine pour le domaine actuel

> Get-NetForest
  #Utilisez cette commande pour obtenir des détails sur la forêt actuelle.

> Get-NetForest -Forest <forestname>  #Donne des détails sur une forêt spécifique

> Get-NetForestDomain
  #Utilisez cette commande pour obtenir tous les domaines de la forêt actuelle.

> Get-NetForestCatalog  #Utilisez cette commande pour obtenir tous les catalogues globaux de la forêt actuelle.

> Get-NetForestTrust
  #Utilisez cette commande pour mapper les relations de confiance d'une forêt.




Recherche d'élévation

> Find-LocalAdminAccess #Utilisez cette commande pour rechercher toutes les machines du domaine actuel sur lesquelles l'utilisateur actuel dispose d'un accès administrateur local.

> Invoke-EnumerateLocalAdmin
 #Utilisez cette commande pour rechercher des administrateurs locaux sur toutes les machines du domaine (nécessite des privilèges d'administrateur sur des machines non DC).

> Invoke-UserHunter
 #Utilisez cette commande pour rechercher des ordinateurs sur lesquels un domaine s'est connecté

> Invoke-UserHunter -UserName "<username>" #Utilisez cette commande pour rechercher des ordinateurs sur lesquels un utilisateur spécifique a des sessions

> Invoke-UserHunter -CheckAccess #Utilisez cette commande pour rechercher des ordinateurs sur lesquels un administrateur de domaine est connecté et auxquels l'utilisateur actuel a accès

Enumération des ACL

> Get-ObjectAcl -SamAccountName "<grouname>" -ResolveGUIDs #Utilisez cette commande pour énumérer les ACL du groupe spécifié

> Get-NetGPO | %{Get-ObjectAcl -ResolveGUIDs -Name $_.Name}  #tilisez cette commande pour voir si un utilisateur dispose de droits de modification sur un objet de stratégie de groupe.

> Get-ObjectAcl -SamAccountName <username> -ResolveGUIDs -RightsFilter "ResetPassword" #Utilisez cette commande pour vérifier si l'utilisateur spécifié dispose de l'autorisation réinitialiser le mot de passe.




ressource:

ressource:

ressource:

ressource:

ressource:

ressource:

👣
👁️
https://podalirius.net/en/articles/useful-ldap-queries-for-windows-active-directory-pentesting/
https://www.pingcastle.com/
https://github.com/BloodHoundAD/BloodHound
https://github.com/OPENCYBER-FR/RustHound
https://github.com/SecureAuthCorp/impacket/tree/master/examples
https://www.samba.org/samba/docs/current/man-html/rpcclient.1.html
https://docs.microsoft.com/en-us/sysinternals/downloads/adexplorer
https://github.com/c3c/ADExplorerSnapshot.py
https://github.com/samratashok/ADModule