1. Domain Enumeration

  • Importar o PowerView

. .\PowerView.ps1
  • Obter domínio atual

Get-Domain 
Get-ADDomain
  • Obter objeto de outro domínio

Get-Domain -Domain example.local
Get-ADDomain -Identity example.local
  • Obter SID de domínio para o domínio atual

Get-DomainSID
(Get-ADDomain).DomainSID
  • Obter política de domínio para o domínio atual

(Get-DomainPolicyData).systemaccess
  • Obter política de domínio para outro domínio

(Get-DomainPolicyData -domain example.local).systemaccess
  • Obter controlador de domínio para o domínio atual

Get-ADDomainController
  • Obter controladores de domínio para outro domínio

Get-DomainController -Domain example.local
  • Obtenha uma lista de usuários no Domínio Atual

Get-DomainUser
Get-DomainUser -Identity user1
Get-DomainUser | select SamAccountName

Get-ADUser -Filter * -Properties *
Get-ADUSer -Identity user1 -Properties *
  • Obter lista de todas as propriedades do usuário no domínio atual

Get-DomainUser -Identity user1 -Properties *
Get-DomainUser -Properties SamAccountName,logonCount

Get-ADUser -Filter * -Properties * | select -First 1 | Get-Member -MemberType *Property | select Name

Get-ADUser -Filter * -Properties Name, LogonCount, PasswordLastSet | 
    Select-Object Name, LogonCount, @{Name='PasswordLastSet'; Expression={[DateTime]::FromFileTime($_.PasswordLastSet)}}
  • Pesquisar uma sequência específica nos atributos de um usuário

Get-DomainUser -LDAPFilter "Description=*built*" | Select name,Description
Get-ADUser -Filter 'Description -Like "*built*"' -Properties Description | Select Name,Description
  • Obtenha uma lista de computadores em um domínio atual

Get-DomainComputer | select Name
Get-DomainComputer -OperatingSystem "*Server 2022*"
Get-DomainComputer -Ping

Get-ADComputer -Filter * | Select Name
Get-ADComputer -FIlter * | -Properties *
Get-AdComputer -Filter 'OperatingSystem -Like "*Server 2022*"' -Properties OperatingSystem | Select name,OperatingSystem
GEt-ADComputer -Filter * -Properties DNSHostName | %{Test-Connection -Count 1 -ComputerName $_.DNSHostName}
  • Obter todos os grupos no domínio atual

Get-DomainGroup | Select Name
Get-DomainGroup -Domain <targetdomin>

Get-ADGroup -Filter * | Select Name
Get-ADGroup -Filter * -Properties *
  • Gel todos os grupos que contêm o trabalho 'admin' no nome do grupo

Get-DomainGroup *admin*

Get-ADGroup -Filter 'Name -Like "*admin*"' | Select Name
  • Obtenha todos os membros do grupo 'Administradores de Domínio'

Get-DomainGroupMember -Identity "Domain Admins" -Recurse
Get-ADGroupMember -Identity "Domain Admins" -Recursive
  • Obtenha todos os membros do grupo 'Administradores corporativos'

Get-DomainGroupMember -Identity "Enterprise Admins" -Domain example.local -Recurse
  • Obtenha a Associação de Grupo para o usuário

Get-DomainGroup -UserName "user1"
Get-ADPrincipalGroupMember -Identity user1
  • Listar todos os grupos locais na máquina (precisa de privilégios de administrador na máquina não-DC)

Get-NetLocalGroup -ComputerName dcorp-dc
  • Obter membros do grupo local "Administradores" em uma máquina (precisa de privilégios de administrador em máquinas não-DC) -

Get-NetLocalGroup -ComputerName dcorp-dc -GroupName Administrators
  • Obter usuários conectados ativamente em um computador (precisa de direitos de administrador local no alvo)

Get-NetLoggedOn -ComputerName dcorp-dc
  • Obter usuários conectados localmente em um computador (precisa de mais registro no destino - iniciado por padrão no sistema operacional do servidor)

Get-LoggedOnLocal -ComputerName dcorp-adminsrv
  • Obter os últimos usuários conectados em um computador (precisa de direitos administrativos e registro remoto no destino)

Get-LastLoggedOn -ComputerName dcorp-adminsrv
  • Encontre compartilhamentos no host no domínio atual

Invoke-ShareFinder -Verbose
  • Encontre arquivos confidenciais em um computador no domínio atual

Invoke-FileFinder -Verbose
  • Obter todos os servidores de arquivos do domínio

Get-NetFileServer
  • Obter lista de GPO no domínio atual

Get-DomainGPO
Get-DomainGPO -ComputerName xcorp-user1
  • Obter GPO(s) que usam grupos restritos ou groups.xml para usuários interessantes

Get-DomainGPOLocalGroup
  • Obter usuários que estão em um grupo local de uma máquina usando GPO

Get-DomainGPOComputerLocalGroupMapping -ComputerIdentity xcorp-user1
  • Obter máquinas onde o usuário fornecido é membro de um grupo específico

Get-DomainGPOUSerLocalGroupMapping -Identity user1 -Verbose
  • Obter UOs em um domínio

Get-DomainOU
Get-DomainOU | select Name

Get-ADOrganizationallUnit -Filter * -Properties *
  • Obter GPO aplicado em uma OU. Ler nome de GPO do atributo gplink de Get-DomainOU

Get-DomainGPO -Identity "GPO_NAME"
  • Listar todos os computadores na StudentMachinesOU - [específico do CRTP]

(Get-DomainGPO -Identity StudentMachines).distinguishedname | %{Get-DomainComputer -SearchBase $_} | Select Name

Last updated