Import-Module ./ActiveDirectory/ActiveDirectory.psd1 # Des fois le module associé à la dll n'est pas écrit au bon format et le chargement du psd1 permet l'association avec la dll sous n'importe quelle format.
On commence par une énumération du/des domaines et sous domaines :
Get-NetDomain #PowerView
Get-NetDomain -Domain moneycorp.local
Get-ADDomain #AD Modules
Get-ADDomain -Identity moneycorp.local
On part ensuite sur une énumération des utilisateurs du domaine :
whoami #votre user
whoami /all #votre user et les groupes auxquels vous appartenez
whoami /priv #vos privilège en tant que user
net user # liste les utilisateurs de votre machines
net user /domain # liste tous les utilisateurs du domaine
Get-NetUser #PowerView
Get-NetUser –Username student1
Get-ADUser -Filter * -Properties * #AD module
Get-ADUser -Identity student1 -Properties *
Invoke-EnumerateLocalAdmin -Verbose #Trouver les admins locaux
Faites vous ensuite une idée des différents groupes :
net localgroup #groupe locaux
net localgroup <GroupName> #Voir les membres du groupe
Get-NetGroup #PowerView
Get-NetGroupMember
Get-NetLocalGroup -ComputerName dcorp-dc.dollarcorp.moneycorp.local -ListGroups #Liste local group - droit admin requis
Get-NetLocalGroup -ComputerName dcorp-dc.dollarcorp.moneycorp.local -Recurse #Liste membre local group - droit admin requis
Listez ensuite les différentes machines présente sur le réseaux :
Get-NetComputer
Vous pouvez ensuite chercher les shares et fichiers pouvant etre lu :
Find-DomainShare -CheckShareAccess
Invoke-FileFinder -Verbose
Vous pouvez mapper les différentes TRUST entre les domaines :
Get-NetDomainTrust #Affichez les TRUSTS des domaines (parent, children et external)
Get-NetForestDomain | Get-NetDomainTrust #Enumère les TRUSTS de tous les domaines
Vous pouvez alors chercher aussi si votre utilisateurs à des droits d'admin sur d'autres machines du domaine (Interrogation du DC pour chaque ordinateur) :
PS : Très bruyant. Vous devez ouvrir les ports RCP et SMB.
Find-LocalAdminAccess
Un autre type d'énumération est de savoir si des admins on des sessions ouvertes sur d'autres ordinateurs :
(Recueille les membres du groupe Domain Admins et vérifie si l'un des utilisateurs est connecté à une machine (liste des machines du domaine) en exécutant Get-NetSession/Get-NetLoggedon sur chaque hôte. Si vous activez l'option "-Checkaccess", alors il vérifie également l'accès en LocalAdmin.