Un firewall dovrebbe rappresentare uno degli ostacoli principali per chi tenta di penetrare in una rete aziendale. Ma cosa succede quando proprio il dispositivo incaricato di proteggere l’infrastruttura diventa il punto d’ingresso dell’attaccante? È quanto emerge da un’operazione di cyberspionaggio scoperta da Dream Research: sfruttando una catena di vulnerabilità basata su PHP2Shell, un gruppo di aggressori è riuscito a ottenere privilegi amministrativi su 25 sistemi Palo Alto Networks, raggiungendo anche l’infrastruttura informatica di un’organizzazione statunitense apparentemente collegata al governo.
I firewall non si limitano a filtrare il traffico: gestiscono connessioni VPN, autenticazione degli utenti, certificati e configurazioni di rete. Una loro compromissione può avere conseguenze nefaste per un’azienda o un ente pubblico. L’indagine di Dream Research mostra quanto rapidamente un accesso iniziale possa trasformarsi in un tentativo di compromissione dell’intera infrastruttura.
PHP2Shell: due vulnerabilità PHP che aprono la strada all’esecuzione di codice
Il primo elemento della catena riguarda le ormai due ben note vulnerabilità critiche scoperte in PHP: entrambe, CVE-2026-109618 e CVE-2026-109619, sono associate alla gestione degli errori di memoria da parte dell’interprete PHP.
Il problema nasce quando PHP incontra una condizione di memoria esaurita, o Out of Memory (OOM): in determinate circostanze, il recupero dall’errore lascia strutture interne in uno stato incoerente. Il risultato può essere una condizione di use-after-free, nella quale il programma torna a utilizzare memoria che considera ancora valida, ma che nel frattempo potrebbe contenere dati controllati dall’attaccante. Manipolando tali strutture, diventa possibile alterare il comportamento dell’interprete fino a ottenere l’esecuzione di comandi arbitrari.
Nel caso analizzato da Dream, il bersaglio è il server Web di gestione di PAN-OS, sistema operativo dei firewall Palo Alto Networks: gli aggressori hanno sviluppato un exploit personalizzato per le versioni che utilizzano PHP 8.0.30.
Come funziona l’exploit: dalla memoria esaurita all’esecuzione di comandi
La tecnica sfrutta il meccanismo PHP session.upload_progress, che consente di monitorare l’avanzamento dei caricamenti HTTP. Durante l’elaborazione di richieste multipart appositamente costruite, il server deve allocare memoria per gestire nomi di file e informazioni sulla sessione.
L’attaccante utilizza richieste con campi particolarmente grandi per esercitare pressione sull’allocatore di memoria. Un’ulteriore richiesta sfrutta poi un riferimento non più valido alla sessione per provocare una lettura oltre i limiti previsti, cioè un out-of-bounds read. Il dato recuperato compare nell’intestazione HTTP Set-Cookie della risposta e permette di risalire all’indirizzo di caricamento della libreria libphp.so. Conoscere l’indirizzo della libreria consente di individuare funzioni interne nonostante la randomizzazione degli indirizzi di memoria, una protezione nota come ASLR (Address Space Layout Randomization).
Successivamente, l’exploit produce un’altra condizione di memoria esaurita e, attraverso una serie di operazioni accessorie, quando l’interprete PHP esegue le operazioni di pulizia, richiama involontariamente la funzione controllata dall’attaccante. La conseguenza è l’esecuzione di un comando di sistema con i privilegi dell’utente nobody.
Fragnesia: il secondo exploit permette di diventare root
L’utente nobody dispone di autorizzazioni limitate e PAN-OS utilizza anche SELinux per confinare le operazioni dei processi Web.
Per superare l’ostacolo, l’aggressore ha combinato PHP2Shell con Fragnesia, CVE-2026-46300, una vulnerabilità di escalation dei privilegi nel kernel Linux: l’exploit manipola le scritture attraverso la page cache del kernel per alterare il file /etc/pam.d/su, responsabile delle regole di autenticazione applicate dal comando su. La configurazione originale viene sostituita con una che utilizza il modulo pam_permit.so, progettato per autorizzare le richieste di autenticazione.
La diretta conseguenza è che il comando su root, impartito dall’attaccante, ha successo senza richiedere una password valida. L’aggressore passa così da un’esecuzione limitata all’accesso completo al sistema operativo.
Secondo Dream, la catena completa può concludersi in meno di 15 minuti, partendo da una connessione HTTPS non autenticata e arrivando all’installazione di una webshell con privilegi root. Il processo non è però innocuo per la stabilità del dispositivo: uno dei firewall compromessi è andato in crash dopo l’attacco e non è tornato disponibile durante le successive verifiche.
Dal firewall compromesso ad Active Directory: il passaggio più pericoloso
La compromissione dei firewall Palo Alto Networks non rappresentava il vero obiettivo degli aggressori, ma il punto di partenza per raggiungere sistemi più importanti all’interno delle reti aziendali. Su 22 dei 24 firewall inizialmente violati, gli attaccanti hanno installato una piccola webshell PHP, utilizzabile per eseguire comandi da remoto e mantenere un accesso al dispositivo.
Particolare attenzione è stata riservata a due firewall appartenenti a un’organizzazione statunitense legata al governo: dopo averli compromessi, gli aggressori hanno creato un tunnel SSH per raggiungere server e servizi interni normalmente inaccessibili da Internet.
In meno di 90 minuti hanno compromesso anche un server dedicato alla gestione centralizzata dei firewall, portando a 25 il numero complessivo dei sistemi violati.
Da quel server sono riusciti a recuperare e decifrare le credenziali utilizzate per collegarsi a Microsoft Active Directory, il servizio che gestisce utenti, gruppi e autorizzazioni della rete Windows.
Con tali credenziali hanno potuto ricostruire l’elenco degli account aziendali e preparare ulteriori attacchi, tra cui tentativi di accesso con password comuni, creazione di account nascosti e ricerca di informazioni riservate.
Dream ha confermato il furto delle credenziali e l’accesso alle informazioni sugli utenti, ma non ha trovato prove sufficienti per stabilire se gli aggressori siano riusciti a prendere il controllo dell’intero dominio Active Directory.
Il caso dimostra come la compromissione di un firewall possa diventare il primo passo verso un attacco molto più esteso all’infrastruttura aziendale.
Quali versioni PAN-OS sono vulnerabili e come proteggere i firewall
Palo Alto Networks ha pubblicato un advisory ufficiale dedicato alle vulnerabilità PHP2Shell, indicando le release interessate e le correzioni disponibili.
L’avviso coinvolge le famiglie PAN-OS 10.2, 11.1, 11.2, 12.1 e 12.2, ma le build corrette dipendono dal ramo utilizzato. Tra le versioni che includono le mitigazioni definitive figurano 12.2.4-h1, 12.1.10-h3, 11.2.16-h1, 11.1.16-h4 e 10.2.18-h13. Sono previsti anche hotfix per precedenti sottorami supportati: occorre quindi confrontare l’esatta versione installata con la tabella ufficiale, senza presumere che qualunque release più recente di un ramo differente sia automaticamente equivalente.
L’intervento prioritario consiste nel rimuovere l’esposizione Internet dell’interfaccia di amministrazione, limitandola a indirizzi interni fidati oppure a un sistema dedicato di accesso amministrativo. Il produttore precisa che l’interfaccia di gestione, comprendente Web UI HTTPS e API XML, costituisce la superficie vulnerabile; il portale GlobalProtect, il gateway VPN e la relativa applicazione client non risultano direttamente colpiti da queste CVE.
In presenza di apparati potenzialmente compromessi, aggiornare il firmware potrebbe non bastare. È necessario ricercare webshell, servizi systemd anomali, modifiche ai file PAM, tunnel persistenti, accessi sospetti ai controller di dominio ed eventuali chiavi private sottratte. Servono inoltre la rotazione delle credenziali esposte e una valutazione dell’integrità dei sistemi coinvolti.
Palo Alto Networks mette a disposizione anche indicazioni tecniche e query di threat hunting per individuare comportamenti sospetti. Le firme Advanced Threat Prevention offrono ulteriori protezioni, a condizione che il traffico verso l’interfaccia amministrativa attraversi i componenti di ispezione configurati correttamente.
Secondo il produttore, circa lo 0,02% della base installata globale presentava interfacce di gestione esposte a Internet e interessate dal problema. La percentuale è contenuta, ma il rischio per le singole organizzazioni rimane elevato.