
O ADRecon é uma ferramenta que coleta informações sobre o Active Directory e gera um relatório que pode fornecer uma visão holística do estado atual do ambiente de AD alvo.
ADRecon é uma ferramenta que extrai e combina vários artefactos (como destacado abaixo) de um ambiente de AD. As informações podem ser apresentadas num relatório do Microsoft Excel formatado especialmente, que inclui vistas resumidas com métricas para facilitar a análise e fornecer uma visão holística do estado atual do ambiente de AD alvo.
A ferramenta é útil para várias classes de profissionais de segurança, como auditores, DFIR, estudantes, administradores, etc. Também pode ser uma ferramenta de pós-exploração inestimável para um testador de penetração.
Pode ser executado a partir de qualquer estação de trabalho ligada ao ambiente, mesmo anfitriões que não sejam membros do domínio. Além disso, a ferramenta pode ser executada no contexto de uma conta não privilegiada (ou seja, utilizador de domínio padrão). A Política de Palavras-passe de Granularidade Fina, LAPS e BitLocker podem exigir contas de utilizador privilegiadas. A ferramenta utilizará as Ferramentas de Administração de Servidores Remotos (RSAT) da Microsoft, se disponíveis, caso contrário comunicará com o Controlador de Domínio utilizando LDAP.
As seguintes informações são recolhidas pela ferramenta:
ADRecon foi apresentado em: - Apresentação de slides
Bay Area OWASP - Apresentação de slides
CHCON - Apresentação de slides
Estas instruções irão obter uma cópia da ferramenta e colocá-la a funcionar na sua máquina local.
Se tiver o git instalado, pode começar por clonar o repositório:
git clone https://github.com/sense-of-security/ADRecon.git
Caso contrário, pode baixar um arquivo zip da última versão. A intenção é manter sempre o ramo master num estado funcional.
Para executar o ADRecon num anfitrião membro do domínio.
PS C:\> .\ADRecon.ps1
Para executar o ADRecon num anfitrião membro do domínio como um utilizador diferente.
PS C:\>.\ADRecon.ps1 -DomainController <IP or FQDN> -Credential <domain\username>
Para executar o ADRecon num anfitrião não membro utilizando LDAP.
PS C:\>.\ADRecon.ps1 -Protocol LDAP -DomainController <IP or FQDN> -Credential <domain\username>
Para executar o ADRecon com módulos específicos num anfitrião não membro com RSAT. (O OutputType predefinido é STDOUT com o parâmetro -Collect)
PS C:\>.\ADRecon.ps1 -Protocol ADWS -DomainController <IP or FQDN> -Credential <domain\username> -Collect Domain, DomainControllers
Para gerar o ADRecon-Report.xlsx com base na saída do ADRecon (Ficheiros CSV).
PS C:\>.\ADRecon.ps1 -GenExcel C:\ADRecon-Report-<timestamp>
Quando executa o ADRecon, será criada uma pasta ADRecon-Report-<timestamp> que conterá o ADRecon-Report.xlsx e uma pasta CSV com os ficheiros brutos.
-Protocol <String>
Qual protocolo usar; ADWS (predefinido) ou LDAP
-DomainController <String>
Endereço IP do Controlador de Domínio ou FQDN do Domínio.
-Credential <PSCredential>
Credenciais do Domínio.
-GenExcel <String>
Caminho para a pasta de saída do ADRecon contendo os ficheiros CSV para gerar o ADRecon-Report.xlsx. Use-o para gerar o ADRecon-Report.xlsx quando o Microsoft Excel não estiver instalado no anfitrião utilizado para executar o ADRecon.
-OutputDir <String>
Caminho para a pasta de saída do ADRecon para guardar os ficheiros CSV/XML/JSON/HTML e o ADRecon-Report.xlsx. (A pasta especificada será criada se não existir) (Predefinição pwd)
-Collect <String>
Quais módulos executar (separados por vírgula; ex: Forest,Domain. Predefinição todos exceto Kerberoast)
Os valores válidos incluem: Forest, Domain, Trusts, Sites, Subnets, PasswordPolicy, FineGrainedPasswordPolicy, DomainControllers, Users, UserSPNs, PasswordAttributes, Groups, GroupMembers, OUs, ACLs, GPOs, gPLinks, GPOReport, DNSZones, Printers, Computers, ComputerSPNs, LAPS, BitLocker, Kerberoast DomainAccountsusedforServiceLogon.
-OutputType <String>
Tipo de saída; separado por vírgulas; ex: CSV,STDOUT,Excel (Predefinição STDOUT com o parâmetro -Collect, caso contrário CSV e Excel).
Os valores válidos incluem: STDOUT, CSV, XML, JSON, HTML, Excel, All (exclui STDOUT).
-DormantTimeSpan <Int>
Período de tempo para contas dormentes. (Predefinição 90 dias)
-PassMaxAge <Int>
Idade máxima da palavra-passe da conta de máquina. (Predefinição 30 dias)
-PageSize <Int>
O PageSize a definir para o objeto de pesquisa LDAP. (Predefinição 200)
-Threads <Int>
O número de threads a usar durante o processamento de objetos (Predefinição 10)
-Log <Switch>
Criar registo do ADRecon usando Start-Transcript
Por favor, reporte todos os bugs, problemas e pedidos de funcionalidades no rastreador de issues. Ou informe-me diretamente (@prashant3535).
Pull requests são sempre bem-vindos.
Agradecimentos pelo trabalho fantástico de @_wald0, @CptJesus, @harmj0y, @mattifestation, @PyroTek3, @darkoperator, a equipa Sense of Security e outros.
ADRecon é uma ferramenta que recolhe informações sobre o Active Directory e gera um relatório que pode fornecer uma visão holística do estado atual do ambiente de AD alvo.
Copyright (C) Sense of Security
Este programa é software livre: pode redistribuí-lo e/ou modificá-lo sob os termos da Licença Pública Geral Affero GNU, conforme publicada pela Free Software Foundation, seja a versão 3 da Licença, ou (à sua escolha) qualquer versão posterior.
Este programa é distribuído na esperança de que seja útil, mas SEM QUALQUER GARANTIA; sem sequer a garantia implícita de COMERCIALIZAÇÃO ou ADEQUAÇÃO A UM PROPÓSITO PARTICULAR. Consulte a Licença Pública Geral Affero GNU para obter mais detalhes.
Deverá ter recebido uma cópia da Licença Pública Geral Affero GNU juntamente com este programa. Caso contrário, consulte http://www.gnu.org/licenses/.
Este programa empresta e utiliza código de muitas fontes. Todos os esforços são feitos para creditar o autor original. Se encontrar que o seu código é utilizado sem o devido crédito, por favor envie um insulto para @prashant3535, Obrigado.