Como objetivo de colaborar com o dia-a-dia das tarefas diárias dos Administradores de Redes e Analista de Segurança da Informação eu optei em compartilhar esta ferramenta que desenvolvi utilizando PowerShell, HTML e JavaScript. O objetivo do ADRT é basicamente extrair informações úteis do Active Directory e exibir-las de forma amigável a fim de auxiliar na geração de indicadores e na realização de auditorias.
O ADRT pode ser baixado em github.com/100security/adrt. Abaixo segue um passo a passo para utilizar a ferramenta.
Passo 1
Após realizar o download do adrt.zip descompacte em qualquer diretório (recomendado: C:\adrt). Execute o comando dir para listar os scripts
PS C:\adrt> dir
Passo 2
Execute o script principal adrt.ps1 para visualizar o menu com todas as opções de relatórios.
PS C:\adrt> .\adrt.ps1
Passo 3
Informe o número 00 para realizar as configurações, tais como: Nome da Empresa, Seu Nome e Dados de E-mail.
[ 00 ] Config Tool
Enter a number: 00
Altere os valores nas linhas: 8, 10, 12, 14, 16 e 18
Para o envio de e-mail você pode utilizar um serviço de SMTP autenticado ou um Servidor Local. No artigo abaixo eu mostro como montar um servidor de e-mail local usando Postfix, mas você tem diversas alterativas para fazer isso.
Artigo: Servidor de E-mail com Postfix + SquirrelMail + Outlook [ visualizar ]
Passo 4
Após alterar as configurações com os seus dados, basta informar um número correspondente a um relatório que deseja receber. Exemplo:
[ 01 ] All Users
Enter a number: 01
Passo 5
O relatórios gerados são armazenados na pasta ad-reports\ad-users. Abaixo pode-se ver os arquivos em HTML (ad-users-2018-7-9.html) e CSV (ad-users-2018-7-9.csv).
Visualizando o relatório em HTML: ad-users-2018-7-9.html
Passo 6
Abaixo pode-se ver o e-mail enviado com os relatórios em anexo.
Passo 7
Outa opção é a extração completa de todos os relatórios disponíveis na opção 14.
[ 14 ] All Reports
Enter a number: 14
Esta opção executa uma interface Web para facilitar a navegação em todos os relatórios gerados. Basta clicar no botão correspondente ao relatório que deseja visualizar:
Deixo também um vídeo que pode lhe ajudar a utilizar o ADRT – Active Directory Report Tool.
Caso tenha dúvidas, utilize a área de comentários abaixo!
23 Comentários
Fantástico!!
Olá Marcos obrigado pela materia, estou iniciando no Powershell, vai me ajudar muito esse script.
obrigado
🙂
Parabéns e obrigado por colaborar com a comunidade de Segurança da Informação!!!
Valew, pessoal obrigado pelo apoio e fiquem atentos as atualizações!
Ao colocar a pasta no servidor, o Windows defender identificou que o arquivo 100security.js é um trojan.
Poderia me ajudar?
Rogério,
Você pode executar o ADRT a partir do seu computador basta instalar o RSAT.
Sobre o alerta de vírus é um “falso positivo” pois você pode ver que é apenas um código em javascript que gera as datas dos arquivos. Você pode verificar a integridade do arquivo no Vírus Total (https://www.virustotal.com/#/file/6cd69da133671da41b2abd75dc17f28c5f42330fa1b4cea8c66905f524b8563f/detection).
Olá Marcos,
Ferramenta bem interessante. Há alguma restrição na versão do Windows Server? Testei no 2012R2 e 2008 e gerar os relatórios, porém não traz informação.
Diego,
Não há nenhum tipo de restrição, faça um teste simples, abra o PowerShell e tente executar o comando: PS C:\> Get-ADUser -Filter * , se exibir a lista de usuários a ferramenta deveria funcionar sem problemas, caso contrario certifique-se que instalou o RSAT em seu computador. Qualquer coisa compartilhe o erro aqui!
Maravilhoso! Fantástico! E muito obrigado!
Ronaldo,
Obrigado pelo apoio! Compartilhe o ADRT com seus contatos e acompanhe as novas versões em breve! abraços..
Marcos, boa tarde!
Parabens pelo conteudo!
Grande abraço!
Parabéns, rodei em windows server 2008 R2, rodou liso, incrível, muito útil.
Excelente contribuição para a comunidade TI.
Olá, muito legal os scripts, estou tentando ajustar o arquivo .config.txt, porem quando executo algum script ele tras sempre as informaçoes do dominio defaut da sua empresa, como posso fazer para ajustar ele para a minha empresa?
PARABÉNS! Ótima Ferramenta!! Me ajudou muitoooo. FANTÁSTICO
Excelente ferramenta. Me poupou um tempo precioso. Parabéns!
Parabéns, porem o link para baixar está indisponível, pode me dar outra fonte de download?
Pode ser baixado aqui:
https://github.com/100security/adrt
Abraços!
Boa tarde Marcos,
não sei porque parou de retornar as informações totalmente preenchidas na tabela. Estava usando normal.
Ele executa mas não preenche toda a tabela.
O que poderia ser?
Boa tarde Marcos!
Agradeço desde já pela ferramenta, ajudou bastante aqui, gotaria de saber como posso extrair um relatório de logon dos usuário da minha rede, indica alguma ferramenta?
Olá Marcos, tudo bem?
Ferramenta bem interessante, porém procuro algo um pouco mais específico, e talvez com sua experiência já tenhas visto algo que possa me ajudar, preciso fazer uma auditoria em “tempo real”, ou seja, se um usuário for bloqueado, ou se algum usuário for inserido no grupo domain admin por exemplo, gostaria que uma notificação fosse enviada via e-mail, Sabes me dizer se existe alguma ferramenta gratuita que faça isso?
Vi que é possível ativar essas opções de auditoria via GPO, mas a tratativa dessas informações em tempo real, somente achei softwares de gerenciamentos de eventos pagos.
Desde já obrigado.
Muito legal essa sua ferramenta. Gostaria de fazer uma contribuição: Na pesquisa pelos grupos de administradores, eu coloquei o seguinte código:
$domainSID = (Get-ADDomain).DomainSID
$enterpriseAdmins = Get-ADGroup -Identity $domainSID-519
$t_da = (Get-ADGroupMember -Identity $enterpriseAdmins).count
———-
$domainSID = (Get-ADDomain).DomainSID
$domainAdmins = Get-ADGroup -Identity $domainSID-512
$t_da = (Get-ADGroupMember -Identity $domainAdmins).count
———-
Assim, usando a SID do grupo que é a SID do domínio variando o final, a busca se torna universal e independente do idioma do sistema operacional instalado no computador.
Parabéns pela ferramenta e pelo compartilhamento.
ótima ferramenta.
Para contribuir um pouco, segue abaixo uma alteração que fiz no arquivo ad-membergroups.ps1 para deixar a coluna de Membros do grupo um pouco mais limpa, mostrando apenas o nome do usuário, tirando as OU e DC
$result = @($membergroups | Select-Object Name, @{n=’MemberOf’; e= { $_.memberof | Out-String}}, @{n=’Members’; e= { ($_.members -replace ‘CN=(.+?),(OU|DC)=.+’,’$1,’) | Out-String }})
basta substituir a linha origial por este acima.
A linha origial fica logo abaixo de
#– Filter
$membergroups = @(Get-ADGroup -Filter {Name -like “*”} -Properties *)
gostei pratico e ajustavel no meu ainda determinados relatorios apresentou alguns erro no power shell mas achei legal