Translated ['src/windows-hardening/active-directory-methodology/ad-certi

This commit is contained in:
Translator 2025-07-10 10:09:02 +00:00
parent 42613802b1
commit 6de0aa40bf

View File

@ -23,17 +23,17 @@
### Autoridades Certificadoras (CAs) no Active Directory (AD)
O AD CS reconhece certificados CA em uma floresta AD através de contêineres designados, cada um servindo a papéis únicos:
O AD CS reconhece certificados de CA em uma floresta AD através de contêineres designados, cada um servindo a papéis únicos:
- O contêiner **Certification Authorities** contém certificados CA raiz confiáveis.
- O contêiner **Certification Authorities** contém certificados de CA raiz confiáveis.
- O contêiner **Enrolment Services** detalha CAs Empresariais e seus modelos de certificado.
- O objeto **NTAuthCertificates** inclui certificados CA autorizados para autenticação AD.
- O contêiner **AIA (Authority Information Access)** facilita a validação da cadeia de certificados com certificados CA intermediários e cruzados.
- O objeto **NTAuthCertificates** inclui certificados de CA autorizados para autenticação AD.
- O contêiner **AIA (Authority Information Access)** facilita a validação da cadeia de certificados com certificados de CA intermediários e cruzados.
### Aquisição de Certificado: Fluxo de Solicitação de Certificado do Cliente
1. O processo de solicitação começa com os clientes encontrando uma CA Empresarial.
2. Um CSR é criado, contendo uma chave pública e outros detalhes, após gerar um par de chaves pública-privada.
2. Um CSR é criado, contendo uma chave pública e outros detalhes, após a geração de um par de chaves pública-privada.
3. A CA avalia o CSR em relação aos modelos de certificado disponíveis, emitindo o certificado com base nas permissões do modelo.
4. Após a aprovação, a CA assina o certificado com sua chave privada e o retorna ao cliente.
@ -43,7 +43,7 @@ Definidos dentro do AD, esses modelos delineiam as configurações e permissões
## Inscrição de Certificado
O processo de inscrição para certificados é iniciado por um administrador que **cria um modelo de certificado**, que é então **publicado** por uma Autoridade Certificadora Empresarial (CA). Isso torna o modelo disponível para a inscrição do cliente, um passo alcançado adicionando o nome do modelo ao campo `certificatetemplates` de um objeto do Active Directory.
O processo de inscrição para certificados é iniciado por um administrador que **cria um modelo de certificado**, que é então **publicado** por uma Autoridade Certificadora Empresarial (CA). Isso torna o modelo disponível para a inscrição do cliente, um passo alcançado ao adicionar o nome do modelo ao campo `certificatetemplates` de um objeto do Active Directory.
Para que um cliente solicite um certificado, **direitos de inscrição** devem ser concedidos. Esses direitos são definidos por descritores de segurança no modelo de certificado e na própria CA Empresarial. As permissões devem ser concedidas em ambos os locais para que uma solicitação seja bem-sucedida.
@ -72,9 +72,9 @@ Os certificados podem ser solicitados através de:
1. **Windows Client Certificate Enrollment Protocol** (MS-WCCE), usando interfaces DCOM.
2. **ICertPassage Remote Protocol** (MS-ICPR), através de pipes nomeados ou TCP/IP.
3. A **interface web de inscrição de certificados**, com o papel de Inscrição Web da Autoridade Certificadora instalado.
4. O **Serviço de Inscrição de Certificados** (CES), em conjunto com o serviço de Política de Inscrição de Certificados (CEP).
5. O **Serviço de Inscrição de Dispositivos de Rede** (NDES) para dispositivos de rede, usando o Protocolo Simples de Inscrição de Certificados (SCEP).
3. A **interface web de inscrição de certificados**, com o papel de Web Enrollment da Autoridade Certificadora instalado.
4. O **Serviço de Inscrição de Certificado** (CES), em conjunto com o serviço de Política de Inscrição de Certificado (CEP).
5. O **Serviço de Inscrição de Dispositivos de Rede** (NDES) para dispositivos de rede, usando o Protocolo Simples de Inscrição de Certificado (SCEP).
Usuários do Windows também podem solicitar certificados via GUI (`certmgr.msc` ou `certlm.msc`) ou ferramentas de linha de comando (`certreq.exe` ou o comando `Get-Certificate` do PowerShell).
```bash
@ -108,16 +108,52 @@ Certify.exe cas
# Identify vulnerable certificate templates with Certify
Certify.exe find /vulnerable
# Use Certipy for enumeration and identifying vulnerable templates
certipy find -vulnerable -u john@corp.local -p Passw0rd -dc-ip 172.16.126.128
# Use Certipy (>=4.0) for enumeration and identifying vulnerable templates
certipy find -vulnerable -dc-only -u john@corp.local -p Passw0rd -target dc.corp.local
# Request a certificate over the web enrollment interface (new in Certipy 4.x)
certipy req -web -target ca.corp.local -template WebServer -upn john@corp.local -dns www.corp.local
# Enumerate Enterprise CAs and certificate templates with certutil
certutil.exe -TCAInfo
certutil -v -dstemplate
```
---
## Vulnerabilidades Recentes & Atualizações de Segurança (2022-2025)
| Ano | ID / Nome | Impacto | Principais Conclusões |
|-----|-----------|---------|----------------------|
| 2022 | **CVE-2022-26923** “Certifried” / ESC6 | *Escalação de privilégios* ao falsificar certificados de conta de máquina durante o PKINIT. | O patch está incluído nas atualizações de segurança de **10 de maio de 2022**. Controles de auditoria e mapeamento forte foram introduzidos via **KB5014754**; os ambientes devem agora estar em modo *Full Enforcement*. citeturn2search0 |
| 2023 | **CVE-2023-35350 / 35351** | *Execução remota de código* nos papéis de Inscrição da Web do AD CS (certsrv) e CES. | PoCs públicos são limitados, mas os componentes vulneráveis do IIS estão frequentemente expostos internamente. Patch a partir de **julho de 2023** Patch Tuesday. citeturn3search0 |
| 2024 | **CVE-2024-49019** “EKUwu” / ESC15 | Usuários com privilégios baixos e direitos de inscrição poderiam substituir **qualquer** EKU ou SAN durante a geração de CSR, emitindo certificados utilizáveis para autenticação de cliente ou assinatura de código, levando a *comprometimento de domínio*. | Abordado nas atualizações de **abril de 2024**. Remover “Supply in the request” dos templates e restringir permissões de inscrição. citeturn1search3 |
### Cronograma de endurecimento da Microsoft (KB5014754)
A Microsoft introduziu um rollout em três fases (Compatibilidade → Auditoria → Aplicação) para mover a autenticação de certificados Kerberos para longe de mapeamentos implícitos fracos. A partir de **11 de fevereiro de 2025**, controladores de domínio alternam automaticamente para **Full Enforcement** se o valor de registro `StrongCertificateBindingEnforcement` não estiver definido. Os administradores devem:
1. Aplicar patches em todos os DCs e servidores AD CS (maio de 2022 ou posterior).
2. Monitorar o ID do Evento 39/41 para mapeamentos fracos durante a fase de *Auditoria*.
3. Reemitir certificados de autenticação de cliente com a nova **extensão SID** ou configurar mapeamentos manuais fortes antes de fevereiro de 2025. citeturn2search0
---
## Detecção & Melhorias de Endurecimento
* O **Defender for Identity AD CS sensor (2023-2024)** agora apresenta avaliações de postura para ESC1-ESC8/ESC11 e gera alertas em tempo real, como *“Emissão de certificado de controlador de domínio para um não-DC”* (ESC8) e *“Impedir Inscrição de Certificado com Políticas de Aplicação arbitrárias”* (ESC15). Certifique-se de que os sensores estão implantados em todos os servidores AD CS para se beneficiar dessas detecções. citeturn5search0
* Desative ou restrinja rigorosamente a opção **“Supply in the request”** em todos os templates; prefira valores SAN/EKU definidos explicitamente.
* Remova **Any Purpose** ou **No EKU** dos templates, a menos que absolutamente necessário (aborda cenários ESC2).
* Exija **aprovação do gerente** ou fluxos de trabalho dedicados de Agente de Inscrição para templates sensíveis (por exemplo, WebServer / CodeSigning).
* Restringir a inscrição na web (`certsrv`) e os endpoints CES/NDES a redes confiáveis ou atrás da autenticação de certificado de cliente.
* Aplicar criptografia de inscrição RPC (`certutil setreg CA\InterfaceFlags +IF_ENFORCEENCRYPTICERTREQ`) para mitigar ESC11.
---
## Referências
- [https://www.specterops.io/assets/resources/Certified_Pre-Owned.pdf](https://www.specterops.io/assets/resources/Certified_Pre-Owned.pdf)
- [https://comodosslstore.com/blog/what-is-ssl-tls-client-authentication-how-does-it-work.html](https://comodosslstore.com/blog/what-is-ssl-tls-client-authentication-how-does-it-work.html)
- [https://support.microsoft.com/en-us/topic/kb5014754-certificate-based-authentication-changes-on-windows-domain-controllers-ad2c23b0-15d8-4340-a468-4d4f3b188f16](https://support.microsoft.com/en-us/topic/kb5014754-certificate-based-authentication-changes-on-windows-domain-controllers-ad2c23b0-15d8-4340-a468-4d4f3b188f16)
- [https://advisory.eventussecurity.com/advisory/critical-vulnerability-in-ad-cs-allows-privilege-escalation/](https://advisory.eventussecurity.com/advisory/critical-vulnerability-in-ad-cs-allows-privilege-escalation/)
{{#include ../../banners/hacktricks-training.md}}