Este script PowerShell foi projetado para realizar uma auditoria abrangente do Microsoft Active Directory, focando na identificação de vulnerabilidades e fragilidades de segurança comuns. Sua execução facilita a localização de áreas críticas que exigem reforço, fortalecendo assim sua infraestrutura contra táticas prevalentes usadas em ataques de movimento lateral ou escalonamento de privilégios direcionados ao Active Directory.
Se você tiver algum one-liner decente do PowerShell que possa ser usado no script, por favor me avise. Estou tentando manter este script como um único arquivo sem requisitos de ferramentas externas (além do ntdsutil e cmd.exe)
Execute diretamente em um DC usando uma conta DA. Se você não confia no código, sugiro lê-lo primeiro e verá que é tudo inofensivo! (Mas você não deveria estar fazendo isso de qualquer forma com código baixado da internet e executado como DA??)
O que isso faz
Informações do Dispositivo
Get-HostDetails
Auditoria do Domínio
Get-LastWUDate
Get-DCEval
Get-TimeSource
Get-PrivilegedGroupMembership
Get-MachineAccountQuota
Get-DefaultDomainControllersPolicy
Get-SMB1Support
Get-FunctionalLevel
Get-DCsNotOwnedByDA
Get-ReplicationType
Get-RecycleBinState
Get-CriticalServicesStatus
Get-RODC
Auditoria de Confiança do Domínio
Get-DomainTrusts
Auditoria de Contas de Usuário
Get-InactiveAccounts
Get-DisabledAccounts
Get-LockedAccounts
Get-AdminAccountChecks
Get-NULLSessions
Get-PrivilegedGroupAccounts
Get-ProtectedUsers
Auditoria de Informações de Senha
Get-AccountPassDontExpire
Get-UserPasswordNotChangedRecently
Get-PasswordPolicy
Get-PasswordQuality
Despeja NTDS.dit
Get-NTDSdit
Auditoria de Objetos de Computador
Get-OldBoxes
Auditoria de GPO (e verificação de senhas no SYSVOL)
Get-GPOtoFile
Get-GPOsPerOU
Get-SYSVOLXMLS
Get-GPOEnum
Verificar Permissões Genéricas de Grupo no AD
Get-OUPerms
Verificar Existência de LAPS no domínio
Get-LAPSStatus
Verificar Existência de Políticas e Silos de Autenticação
Get-AuthenticationPoliciesAndSilos
Verificar zonas DNS inseguras
Get-DNSZoneInsecure
Verificar usuários e grupos recém-criados
Get-RecentChanges
Verificar vulnerabilidades do ADCS, ESC1,2,3,4 e 8.
Verificar contas kerberoastable de alto valor
Verificar contas ASREPRoastable
Verificar permissões ACL perigosas em Usuários, Grupos e Computadores.
Verificar configurações LDAP e LDAPs (Assinatura, sessões nulas, etc.)
Parâmetros de Execução
Os seguintes parâmetros podem ser usados em combinação: