
Scrittura tecnica dettagliata e proof-of-concept per CVE-2022-26923, una vulnerabilità di escalation dei privilegi dei servizi certificati di Active Directory, inclusi passaggi di sfruttamento e approfondimenti sulla mitigazione.
Come descritto da Tenable: vulnerabilità di elevazione dei privilegi in Active Directory Domain Services
CVSS v3
Punteggio base: 8.8
Vector: CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Gravità: Alta
La CVE-2022-26923 sfrutta una vulnerabilità in Microsoft Active Directory Certificate Services (AD CS) per elevare i privilegi.
Modelli di certificato: AD CS offre due modelli predefiniti per le richieste di certificato: User e Machine.
Limitazione del modello User: il modello User non è vulnerabile perché incorpora l'UPN dell'utente nel SAN, che è univoco e non può essere facilmente modificato.
Vulnerabilità del modello Machine: il modello Machine utilizza il nome DNS per l'identificazione. Modificando il nome DNS di un host appena registrato in modo che corrisponda a un Controller di dominio, un utente malintenzionato può ottenere un certificato che consente l'impersonificazione del Controller di dominio.
Elevazione dei privilegi: questa impersonificazione può essere utilizzata per elevare i privilegi e ottenere il controllo sul dominio Active Directory.
Microsoft definisce Active Directory Certificate Services (AD CS) come, "...il ruolo del server che consente di creare un'infrastruttura a chiave pubblica (PKI) e fornire crittografia a chiave pubblica, certificati digitali e funzionalità di firma digitale per la propria organizzazione."
Un certificato è un documento firmato digitalmente in formato X.509 utilizzato per la crittografia, la firma di messaggi e/o l'autenticazione. Un certificato contiene in genere vari campi, tra cui alcuni dei seguenti:
- Code Signing (OID 1.3.6.1.5.5.7.3.3) - Il certificato serve per firmare codice eseguibile.
- Encrypting File System (OID 1.3.6.1.4.1.311.10.3.4) - Il certificato serve per crittografare i file system.
- Secure Email (1.3.6.1.5.5.7.3.4) - Il certificato serve per crittografare la posta elettronica.
- Client Authentication (OID 1.3.6.1.5.5.7.3.2) - Il certificato serve per l'autenticazione verso un altro server (ad es., verso AD).
- Smart Card Logon (OID 1.3.6.1.4.1.311.20.2.2) - Il certificato è destinato all'uso nell'autenticazione tramite smart card.
- Server Authentication (OID 1.3.6.1.5.5.7.3.1) - Il certificato serve per identificare i server (ad es., certificati HTTPS).
Fonte: whitepaper di specterops
I certificati digitali possono essere utilizzati per crittografare e firmare digitalmente documenti e messaggi elettronici, nonché per l'autenticazione di account di computer, utenti o dispositivi su una rete. Ad esempio, i certificati digitali vengono utilizzati per fornire:
🔐Riservatezza tramite crittografia.
🔏Integrità tramite firme digitali.
🖇️Autenticazione associando le chiavi del certificato agli account di computer, utenti o dispositivi su una rete di computer.
Fonte: Microsoft Learning
AD CS è una tecnologia Microsoft che fornisce un'infrastruttura centralizzata per la gestione dei certificati digitali. Offre diversi vantaggi chiave:
Associazione dell'identità: AD CS associa le identità (utenti, computer, servizi) alle chiavi private, garantendo un'autenticazione sicura e il controllo degli accessi.
Gestione dei certificati: gestisce in modo efficiente la distribuzione, l'iscrizione e la revoca dei certificati.
Integrazione con Active Directory: sfrutta le informazioni di identità esistenti in AD per una registrazione e una gestione dei certificati senza soluzione di continuità.
Configurazione tramite Criteri di gruppo: consente un controllo granulare dell'emissione e dell'utilizzo dei certificati in base a ruoli o attributi.
Supporto di varie applicazioni: AD CS supporta un'ampia gamma di applicazioni, tra cui S/MIME, reti wireless, VPN, IPsec, EFS, smart card, SSL/TLS e firme digitali.
In sostanza, AD CS fornisce un modo sicuro ed efficiente per gestire i certificati digitali, migliorando la sicurezza complessiva dell'infrastruttura IT di un'organizzazione.