Check Point CVE-2026-91843: root pre-auth sul management server
CVE-2026-91843 è uno stack overflow pre-auth CVSS 9.8 che dà root sul Security Management Server di Check Point. La vera domanda è se sia raggiungibile da dove atterra l'attaccante.
Il 16 settembre 2026 Check Point ha divulgato CVE-2026-91843: uno stack-based buffer overflow nel processo di login del Quantum Security Management Server, del Multi-Domain Server e del Log Server. Un attaccante non autenticato invia una richiesta di login con uno username sovradimensionato, l'overflow scatta prima che venga verificata qualsiasi credenziale, e il risultato è esecuzione di codice come root. CVSS 9.8. L'advisory (sk1000155) è uscito lo stesso giorno, e il 18 settembre la lista delle versioni affette si è allargata a includere R82.20 dopo che Censys ha confermato che tutte le build di quel branch sono vulnerabili.
Non è un bug su un gateway. È un bug sulla macchina che gestisce i gateway — quella che tiene la security policy, la certificate authority SIC, la configurazione VPN e le credenziali admin di un intero parco. Root pre-auth lì non è un host compromesso. È il controllo del piano di enforcement.
Cos'è davvero CVE-2026-91843
Il difetto è CWE-121, un classico stack-based buffer overflow. Il percorso vulnerabile è il gestore del login sul servizio di amministrazione del management server. Copia lo username fornito in un buffer di stack a dimensione fissa senza limitarne la lunghezza. Manda uno username più lungo del buffer e sovrascrivi l'indirizzo di ritorno salvato; costruiscilo con precisione e reindirizzi l'esecuzione su un payload che controlli. Poiché la copia avviene prima che la password sia validata, non serve alcun account, alcun token, alcun appiglio preesistente sull'appliance. La raggiungibilità di rete al servizio di login è l'unica precondizione.
Due proprietà lo rendono peggiore di una RCE generica:
- Gira come root. Il demone di management è privilegiato, quindi non c'è un secondo passo di escalation. L'overflow ti deposita direttamente in cima.
- Il raggio d'azione è uno-a-molti. Compromettere un gateway ti costa un punto di enforcement. Compromettere un management server ti costa la policy che ogni gateway scarica, la certificate authority che firma la fiducia Secure Internal Communication (SIC) fra loro, e l'audit log che dovrebbe dirti che tutto questo è successo. L'attaccante non deve toccare direttamente nemmeno un firewall: spinge la policy a tutti.
Check Point ha distribuito la fix via LivePatch invece che con una build standalone. I sistemi con aggiornamenti automatici abilitati secondo sk175504 la ricevono senza intervento dell'operatore. Le Jumbo Hotfix Take corrette sono R82.20 Take 29, R82.10 Take 28, R82 Take 28 e R81.20 Take 28. R81.10, R81 e ogni branch R80.x sono End of Support e non ricevono fix — per quelli, l'aggiornamento è l'unica remediation.
La domanda sulla raggiungibilità a cui il CVSS non risponde
La risposta standard a un 9.8 è "dice network-exploitable, patcha subito". È corretta e va fatta. Ma il numero nasconde la domanda operativa che decide davvero la tua esposizione: il servizio di login è raggiungibile da dove l'attaccante sta realisticamente?
Le stesse linee guida di hardening di Check Point dicono che il management server non deve mai essere esposto su internet. In una rete gestita bene sta su una VLAN di management, raggiungibile solo da un jump host. Quindi due organizzazioni che girano la stessa build vulnerabile R82.10 Take 40 possono avere un rischio reale completamente diverso — una espone la porta di amministrazione a un segmento su cui si può prendere piede, l'altra no. Il CVSS non pesa nessuna delle due. Pesa il bug in astratto.
L'astrazione non è accademica. Censys ha osservato 3.836 host a livello globale che portano il ruolo Security Management / Log Server, individuabili con host.services.checkpoint_topology.common_name: "cp_mgmt". È presenza totale del prodotto, non conteggio confermato di esposti, ma dice che la popolazione che deve rispondere alla domanda sulla raggiungibilità è ampia, e che una quota non trascurabile risponde "sì" senza volerlo.
"Abbiamo patchato nella finestra." "Quali management server erano raggiungibili dalla DMZ prima della patch?" "…quelli dietro il jump host non erano esposti." "Il jump host era in scope nell'ultimo test di furto credenziali? Perché è quella la macchina che raggiunge il servizio di login."
Il buco in quel dialogo è tutto il punto. La raggiungibilità è una proprietà della tua topologia sotto un appiglio realistico, non del CVE. E non è una cosa che leggi da un advisory.
Uno schema, non una sorpresa
I bug di memory-safety nella superficie d'attacco pre-autenticazione delle appliance di sicurezza sono ormai una categoria, non un'anomalia. Gli ultimi tre anni hanno prodotto una serie costante fra i vendor le cui scatole stanno al perimetro — Fortinet, Palo Alto, Citrix, Ivanti e ora il tier di management di Check Point. La forma si ripete: un servizio in C che deve fare il parsing di input controllato dall'attaccante prima dell'autenticazione, una lunghezza che dimentica di limitare, e un dispositivo che lo esegue come root perché è stato costruito quando "appliance fidata" significava qualcosa.
La parte scomoda è dove vivono. L'industria ha passato un decennio a spostare il codice applicativo su linguaggi memory-safe e runtime sandboxed. I dispositivi che compriamo per imporre quella disciplina sono spesso quelli che ancora spediscono gestori in stile strcpy non limitato su un demone di rete privilegiato. Il management server è l'istanza più sensibile dello schema, perché è l'unica scatola la cui compromissione è transitiva verso tutto ciò che ci sta a valle.
| RCE su gateway | RCE su management server | |
|---|---|---|
| Host compromessi | un punto di enforcement | il piano policy di tutti |
| Impatto sulla fiducia | quel tunnel | la certificate authority SIC |
| Evidenza | log del gateway | l'audit log che ora possiede l'attaccante |
| Ripristino | reimage di una scatola | ricostruire la fiducia sull'intero parco |
Remediation
Trattalo come un'esercitazione di incident-readiness sul piano di management, non come una patch di routine. La fix è semplice; le domande su esposizione ed eradicazione no.
1. Sono affetto? Individua ogni Security Management, Multi-Domain e Log Server e registrane versione e Jumbo Hotfix Take. Vulnerabile se: R82.20 (qualsiasi build), R82.10 a Take 44 o inferiore, R82 a Take 126 o inferiore, R81.20 a Take 166 o inferiore, oppure qualsiasi R81.10 / R81 / R80.x (End of Support). Dall'esterno, enumera l'esposizione con la query di ruolo Censys host.services.checkpoint_topology.common_name: "cp_mgmt" sui tuoi range — tutto ciò che risponde è raggiungibile da internet ed è la tua priorità numero uno.
2. Patch — versioni corrette esatte. Applica il LivePatch. Take corrette: R82.20 Take 29, R82.10 Take 28, R82 Take 28, R81.20 Take 28. Se gli aggiornamenti automatici (sk175504) sono abilitati il LivePatch si installa senza intervento; conferma che sia arrivato con cplp list, che deve mostrare il BUNDLE_URGENT_SECURITY_UPDATE. I branch End of Support non hanno patch — aggiorna a un branch supportato; non esiste controllo compensativo che renda sicuro un management server EoS non patchato.
3. Non puoi patchare subito? Controlli compensativi. Limita il servizio di amministrazione/login alla VLAN di management e a un jump host nominato con allow-list esplicita; nega tutto il resto al perimetro e sull'interfaccia locale. Se il management server è raggiungibile da internet, è quella l'emergenza da risolvere per prima, prima della patch — porta a zero la superficie d'attacco per gli attori esterni mentre pianifichi il LivePatch. Non affidarti al fatto che il servizio di login rifiuti credenziali sbagliate: l'overflow scatta prima dell'autenticazione, quindi la policy sulle credenziali qui è irrilevante.
4. Caccia alla compromissione. La firma nota è una voce Username too long nell'audit log di Check Point — un tentativo di sfruttamento dell'overflow. Mappa il comportamento post-exploit su ATT&CK: sfruttamento di un servizio remoto (T1190) verso esecuzione come root, seguito dalle mosse che contano su un management server — manomissione dell'audit trail (T1070), raccolta del materiale certificato SIC e delle credenziali admin (T1552), e push o modifica della policy (un'azione di management legittima eseguita da un operatore illegittimo, che nessuna firma segnalerà). Poiché un management server con root controlla i propri log, l'assenza della riga Username too long dopo una finestra sospetta non è prova di sicurezza — è una delle prime cose che un attaccante con root rimuoverebbe.
5. Eradica e verifica. Se trovi evidenza di compromissione, patchare non è eradicare. Un attaccante con root sul management server può aver esportato la CA SIC, le credenziali admin e le chiavi pre-condivise VPN — tutte cose che sopravvivono a una patch. Ricostruisci il management server da supporti noti-buoni, ristabilisci la fiducia SIC con certificati freschi sull'intero parco, ruota le credenziali amministratore e ogni segreto VPN che la scatola conteneva, e solo allora conferma la pulizia. Verifica dopo la ricostruzione che non siano rimasti policy, account amministratore o task pianificati inattesi.
Dove si inserisce Zero Hunt
Ogni domanda della sezione precedente tranne "quale versione sto girando" è una domanda di raggiungibilità ed evidenza, ed entrambe sono esattamente dove un numero CVSS statico ammutolisce.
L'AI Generative Pentest di Zero Hunt risponde direttamente alla metà sulla raggiungibilità. Il suo swarm di 10 agenti — Recon, Exploit, Web, Credential, Post-Exploit, Pivot, Tactic, Report, coordinati da un AI Controller — non legge la tua versione per dedurre il rischio. Prende un appiglio realistico e chiede se la richiesta di login con username lungo raggiunge davvero il servizio di login del management server da lì, sulla tua build, attraverso la tua topologia. L'agente Exploit scrive la sonda come codice per-target da un LLM locale — non un proof-of-concept pubblico, che per questo CVE ancora non esiste — e ogni skill è ritestata nell'AI Gym contro i corpus Vulhub e i task black-box basati su CVE prima di girare in produzione. Una campagna change-triggered parte entro l'ora quando una nuova interfaccia di management appare sul perimetro, così la risposta a "il nostro manager è esposto" è continua, non un'istantanea trimestrale. Ogni finding è firmato ECDSA al momento della scrittura, così "il manager era raggiungibile dalla DMZ il 18 settembre, ed ecco la prova" è un artefatto difendibile, non un ricordo.
Una volta che la scatola è root, la metà sull'evidenza passa all'AI Traffic Analysis. Un management server compromesso possiede il proprio audit log — la riga Username too long, il record del push di policy, la history della shell — quindi la telemetria on-appliance diventa la dichiarazione dell'attaccante, non evidenza. Il traffico di rete no. Il modello deep-learning di Zero Hunt con quattro teste d'inferenza legge il payload di login anomalo, il beacon post-exploit verso un ASN mai visto e l'esfiltrazione del materiale SIC mentre accadono, a 2.7+ Gbit/s sulla GPU dell'appliance, su una superficie che la scatola con root non può modificare. E poiché un management server firewall rientra in pieno nello scope critical-infrastructure di NIS2, lo stesso finding si mappa automaticamente sui 32 framework di compliance — un'esposizione, provata una volta, firmata una volta, rendicontabile ovunque sia dovuta.
Patcha CVE-2026-91843 oggi. Poi dimostra — non dare per scontato — che la scatola non è mai stata raggiungibile da dove gli attaccanti stanno davvero.