Torna agli aggiornamenti
UpdatedAug 1, 2026

CVE-2026-54121 — Updated!

Certighost POC

Condividi

CVE-2026-54121 (Certighost)

Questo è uno strumento proof-of-concept per dimostrare la CVE-2026-54121, nota anche come Certighost. Leggi qui https://gist.github.com/H0j3n/a5ef2609b5f2944ac2390a191a534c26 per l'analisi dettagliata.

Installa le dipendenze

Lo proof of concept è uno script Python autocontenuto. Richiede impacket, cryptography, pyasn1, asn1crypto e dnspython.

sudo pip install --break-system-packages git+https://github.com/fortra/impacket.git cryptography pyasn1 asn1crypto pycryptodome dnspython

Utilizzo

Esegui come root perché i servizi rogue LDAP e SMB ascoltano sulle porte ad alto privilegio 389 e 445.

sudo python3 certighost.py -d playground.local -u lowpriv -p 'Password1234' --dc-ip 192.168.1.10

Un'esecuzione riuscita scrive il certificato di destinazione (.pfx) e la cache Kerberos (.ccache) nella directory corrente.

Cosa fa questo script

  1. Crea un nuovo account computer (es. GHOSTABCDEFGH$) o riutilizza uno passato tramite --computer-name.
  2. Avvia due listener rogue: un server SMB/LSA sulla porta 445 e un server LDAP sulla porta 389.
  3. Invia una richiesta di certificato come account computer, incorporando un attributo cdc personalizzato che punta a un IP controllato (tramite --listener; opzionale, auto-rilevato se omesso) oltre a un attributo rmd che trasporta il nome DNS del DC di destinazione.
  4. La CA si riconnette ai listener rogue LSA/LDAP. Questi si autenticano come l'account creato (validato tramite il DC reale su Netlogon) e rispondono alle ricerche della CA con l'identità del DC di destinazione (sAMAccountName, SID, dNSHostName) invece.
  5. La CA emette un certificato valido appartenente al DC.
  6. Lo script esegue anche PKINIT con il pfx del DC per richiedere .ccache e NT hash.

Cronologia

  • 28 luglio 2026 — Ringraziamenti a @GregDurys per la PR che corregge il problema STATUS_NOLOGON_SERVER_TRUST_ACCOUNT. certighost ora include un hotpatch in-script del percorso NetLogon SMB rogue (impostando il bit E 0x20 insieme al bit K 0x800 in ParameterControl, secondo MS-NRPC 2.2.1.4.15), quindi l'exploit funziona contro una CA ospitata su un Domain Controller senza preoccuparsi di installare una versione diversa / fork di Impacket.
  • 28 luglio 2026 — Ringraziamenti a @Hack0ura per aver segnalato la correzione del request-SAN. Su una CA che onora i SAN forniti nella richiesta (EDITF_ATTRIBUTESUBJECTALTNAME2 / ESC6), la richiesta di certificato ora imposta l'identità SAN:dns al nome DNS del DC di destinazione (rmd_value) invece di quello del computer rogue, evitando KDC_ERR_CLIENT_NAME_MISMATCH nella fase PKINIT. Sui modelli build-from-AD il SAN della richiesta viene ignorato, quindi la modifica è un no-op sicuro.

Riferimenti

Categorie