Blog
TrueConfCVE-2026-72529CISA KEVSupply Chain

TrueConf CVE-2026-72529: una porta aperta, e ogni dipendente riceve malware

CVE-2026-72529 si concatena con CVE-2026-72530 per prendere root su un TrueConf Server tramite una porta aperta di default, poi sostituisce l'installer del client e distribuisce PhantomCore a ogni partecipante.

Zero Hunt Research··7 min di lettura

La videoconferenza on-premise doveva essere la scelta sicura. Le riunioni restavano fuori dal cloud altrui, il server girava nel tuo rack, e agli auditor dicevi che i dati non lasciavano mai l'edificio. Head Mare ha appena mostrato il rovescio di quella scelta: una singola porta TCP non autenticata trasforma il server di conferenza on-prem in un canale di distribuzione malware che spinge client compromessi a ogni dipendente che si collega.

Il 20 agosto 2026 la CISA ha aggiunto CVE-2026-72529 e CVE-2026-72530 al catalogo Known Exploited Vulnerabilities, con scadenza di patch a tre giorni per la prima e due settimane per la seconda per le agenzie federali. Il vendor aveva rilasciato la correzione il 18 giugno 2026. Tra "patch disponibile" e "sfruttata attivamente, in KEV" sono passate nove settimane — nove settimane in cui la catena era abbastanza pubblica da farsi intercettare in the wild dal Kaspersky ICS CERT e ricostruire dall'inizio alla fine.

Cosa fanno davvero CVE-2026-72529 e CVE-2026-72530

Due bug, concatenati, portano un attaccante dalla rete a NT AUTHORITY\SYSTEM sull'host senza una sola credenziale.

CVE-2026-72529 CVE-2026-72530
Classe RCE non autenticata via funzione non documentata Evasione dall'ambiente isolato (sandbox)
CVSS 9.3 9.5
ID Kaspersky KLCERT-26-057 KLCERT-26-058
Effetto Esegue script arbitrario nell'interprete isolato del server Esce dall'isolamento ed esegue sull'host come SYSTEM

Il punto d'ingresso è la porta TCP 4307, che la documentazione TrueConf indica come aperta di default. Davanti non c'è nessun prompt di login. Un attaccante con visibilità di rete richiama una funzione non documentata del server, trasmette uno script e lo esegue dentro la sandbox di TrueConf (CVE-2026-72529). Quella sandbox era l'unica cosa tra l'interprete e il sistema operativo — e CVE-2026-72530 la rimuove, lasciando l'attaccante sull'host con privilegi pieni.

È lo stesso schema strutturale di cui scriviamo di continuo: l'"autenticazione" che tutti davano per scontata è una porta di management aperta di default, e l'isolamento di cui tutti si fidavano è profondo un bug. Raggiungere la porta è il login.

La parte che cambia tutto: è il server a distribuire il malware

La maggior parte delle storie di RCE finisce a "l'attaccante ha root sulla macchina". La kill chain di Head Mare è interessante per ciò che hanno fatto con root — ed è il motivo per cui riguarda ogni threat model che includa la distribuzione interna di software.

Dopo l'escalation a SYSTEM, secondo l'analisi Securelist di Kaspersky, gli operatori hanno:

  • Piazzato una web shell sostituendo il legittimo …\public\js\locale.php con un file PHP malevolo.
  • Enumerato l'infrastruttura e ottenuto accesso al database.
  • Sostituito gli installer legittimi del client TrueConf ospitati sul server con versioni trojanizzate.

Quest'ultimo passo è il payload. Quando un dipendente scarica il client di conferenza dal server TrueConf aziendale — la fonte interna, autorizzata, "di fiducia" — riceve un client TrueConf funzionante più PhantomCore, caricato in sideload come %LOCALAPPDATA%\TrueConf\Client\api-ms-win-crt-time-l1-1-0-2.dll, camuffato da DLL della Universal CRT. La persistenza è un COM hijack via HKCU\Software\Classes\CLSID\{0340F119-A598-4ed9-B0AC-6F6A12D3E755}\InprocServer32.

"Ma l'installer arrivava dal nostro server." Questa frase è esattamente l'assunto che l'attacco monetizza. Le distribuzioni malevole recuperate da Kaspersky non avevano una firma digitale valida — l'unico segnale che avrebbe fermato un utente attento, e l'unico controllo che quasi nessuno fa prima di lanciare un tool interno.

Un solo host compromesso si propaga all'intero elenco dei partecipanti. Un server di conferenza è un punto di distribuzione quasi perfetto: lo tocca tutta l'organizzazione, il client si aspetta di auto-aggiornarsi, e nessuno tratta un download interno come input non fidato.

Post-exploitation: OneDrive, GitHub e comandi spezzati per eludere l'EDR

PhantomCore è un loader per un framework modulare. Insieme, Head Mare ha dispiegato PhantomGraph, due servizi (SysExcSvc.dll, SysReadSvc.dll) installati via PowerShell codificato in Base64 che usano Microsoft OneDrive come canale di command-and-control — un modulo riceve i task, l'altro li legge, li esegue tramite file batch e riscrive i risultati. Kaspersky nota che gli operatori "hanno deliberatamente spezzato il comando malevolo in due componenti per renderlo più difficile da rilevare agli strumenti EDR". Altre varianti usano GitHub come beacon e aprono tunnel SSH inversi verso l'infrastruttura dell'attaccante. Tra le attività hands-on-keyboard osservate: dump della memoria di LSASS e ricognizione con whoami e hostname.

Rileggete quella lista di C2: OneDrive, GitHub, SSH. Tutti e tre sono egress in allow-list su praticamente ogni rete aziendale. EDR e NDR basati su firma che cercano domini noti come malevoli non vedono nulla — le destinazioni sono Microsoft e GitHub. È il punto cieco di cui parla la seconda metà di questo articolo.

Remediation

Il targeting attuale di Head Mare colpisce organizzazioni industriali e IT russe, ma le vulnerabilità sono universali, la catena è ormai pubblica e la CISA le ha inserite entrambe in KEV. Trattate qualsiasi TrueConf Server raggiungibile da internet come urgente.

1. Sono esposto?

Controllate la build del server. Vulnerabili: tutte le release di TrueConf Server dal 2022, nello specifico 5.3.x fino a 5.3.9 inclusa, 5.4.x fino a 5.4.9, 5.5.x fino a 5.5.5, e precedenti. Poi verificate l'esposizione — la porta 4307 non dovrebbe mai affacciarsi su internet:

# Dall'esterno del perimetro — la porta di management è raggiungibile?
nmap -Pn -p 4307 <ip_server_trueconf>
# Sull'host — chi è in ascolto e chi ci parla?
ss -tnp | grep ':4307'

2. Patch — versioni corrette esatte

Aggiornate a TrueConf Server 5.3.9, 5.4.9 o 5.5.5 (rilasciate il 18 giugno 2026) o successive sul vostro ramo. Sono le build corrette dal vendor per entrambe CVE-2026-72529 e CVE-2026-72530. La patch è necessaria ma non sufficiente — se il server era raggiungibile prima dell'aggiornamento, date per scontato che gli installer siano già stati sostituiti (vedi passo 4).

3. Non potete applicare la patch subito? — controlli compensativi

  • Filtrate la porta 4307/TCP alle sole subnet di management. Non ha motivo di essere esposta su internet, patchata o meno.
  • Mettete il server di conferenza dietro una VPN o un reverse proxy che termini l'autenticazione prima della logica di TrueConf.
  • Ripubblicate gli installer del client da una fonte sicura e verificate la firma digitale prima che qualcuno li scarichi.

4. Cercate la compromissione (mappata ATT&CK)

Applicare la patch a una macchina già compromessa vuol dire solo chiudere gli strumenti dell'attaccante dentro insieme a voi. Cacciate sia sul server sia su ogni endpoint che ha installato il client:

  • Server — web shell (T1505.003): un …\public\js\locale.php modificato; IOC Kaspersky MD5 4d27b4eb1c5dbb3d8160f29b8119523e.
  • Endpoint — client trojanizzato (T1195.002 / T1574.001): la DLL in sideload %LOCALAPPDATA%\TrueConf\Client\api-ms-win-crt-time-l1-1-0-2.dll; installer MD5 748c9f8cb1065000616204935f96207f (trueconf_windows_update.exe).
  • Persistenza (T1546.015): la chiave di COM hijack HKCU\Software\Classes\CLSID\{0340F119-A598-4ed9-B0AC-6F6A12D3E755}\InprocServer32.
  • Servizi PhantomGraph (T1543.003): SysExcSvc / SysReadSvc, file sotto C:\Windows\System32\inetsrv\ (SysExcSvc.dll, SysReadSvc.dll, graphi-refresh.dat, share\input_*.txt, share\output_*.txt).
  • C2 (T1567.002 / T1071): traffico in uscita verso OneDrive e GitHub da processi del server; SSH verso 194.87.239[.]71, 194.87.93[.]153; host tra cui 81.177.32[.]12, 38.244.205[.]244, 31.59.102[.]61; domini penzadogshelter[.]site, nova-stream[.]site, vks.gossopka[.]forum e altri nel set IOC di Securelist.
  • Accesso alle credenziali (T1003.001): dump di LSASS su ogni host che ha eseguito il client trojanizzato.

5. Bonifica + verifica

Ricostruite l'host TrueConf da un'immagine pulita — una web shell a livello SYSTEM più l'accesso al database rendono indifendibile una bonifica parziale. Reimmaginate o bonificate completamente ogni endpoint che ha installato un client tra la finestra di esposizione e la vostra correzione. Ruotate ogni credenziale che il server poteva raggiungere, prima i service account, e ruotate ogni segreto che i dump di LSASS di PhantomGraph possono aver catturato. Confermate la pulizia dopo la patch, poi riemettete installer firmati.

Dove si inserisce Zero Hunt: validare la macchina prima che lo faccia un APT

Tre cose dovevano essere vere perché tutto funzionasse: il server era raggiungibile da internet sulla 4307, girava una build precedente alla correzione di giugno, e nessuno l'ha rivalidato dopo l'uscita della patch. Il pentest annuale che "ha coperto il server di conferenza a novembre scorso" le avrebbe mancate tutte e tre.

Il pentest generativo a 10 agenti di Zero Hunt è costruito proprio per questa lacuna. L'agente Recon trova il server TrueConf nel momento in cui appare sul perimetro — le campagne change-triggered avviano una valutazione completa entro un'ora dalla comparsa di un nuovo asset, non alla finestra trimestrale successiva. L'agente Exploit scrive poi una catena per-target: un LLM locale genera l'exploit per la versione e la configurazione che ha davanti, invece di rigiocare un modulo statico di ExploitDB, così il finding è "questo server specifico è rootabile via 4307", backtestato nell'AI Gym contro il corpus Vulhub/CVE prima ancora di girare, e firmato ECDSA nella catena di evidenze per l'auditor. Un server patchato ma ancora esposto non riceve una promozione perché è patchato — viene testato.

E poiché il C2 di Head Mare si nasconde dentro OneDrive, GitHub e SSH — destinazioni che nessuna blocklist di domini segnalerà mai — la rete è l'unica superficie su cui il client trojanizzato si tradisce. L'AI Traffic Analysis di Zero Hunt fa girare un modello di deep learning con quattro teste di inferenza (traffico sospetto, classificazione malware, identificazione del tipo di attacco, fingerprinting applicativo) sulla GPU dell'appliance a velocità di linea, imparando con chi parlano normalmente i vostri host di conferenza. Un server TrueConf che all'improvviso apre tunnel SSH inversi, o un endpoint la cui "DLL della CRT" inizia a caricare file su un OneDrive personale, è un'anomalia comportamentale mentre accade — non un match di firma nel digest SIEM di domani. Quando il malware arriva da una fonte di cui vi fidate e comunica verso un cloud che consentite, il comportamento è l'unica cosa che vi dice ancora la verità.