Esperienze dalla pratica

PHP2Shell: due vulnerabilità critiche di PHP e come abbiamo reagito

Due vulnerabilità critiche di PHP richiedono aggiornamenti e un esame preciso dell’inventario. Come DAXS unisce valutazione, restrizioni degli accessi e verifica tecnica.

Sicurezza
Il bassotto DAXS con livelli di protezione astratti e un simbolo arancione di aggiornamento.

Dall’avviso preliminare del 20 ottobre, PHP2Shell è nell’elenco delle verifiche di molti responsabili IT. Il 21 ottobre 2026 il progetto PHP ha pubblicato aggiornamenti contro due vulnerabilità critiche. Per DAXS questo ha significato interpretare tecnicamente le segnalazioni, individuare i servizi potenzialmente interessati e dare priorità alle misure in base all’effettiva raggiungibilità. Conta ciò che è realmente in esecuzione su ciascun sistema, oltre alla conclusione di un’attività di aggiornamento.

Cosa è stato pubblicato

Le vulnerabilità CVE-2026-109618 e CVE-2026-109619 possono consentire l’esecuzione di codice senza autenticazione preventiva. L’avviso preliminare assegna a entrambe un punteggio CVSS v4.0 di 9,2. La classificazione critica richiede verifiche tempestive; non dimostra quale specifica installazione di un cliente sia stata attaccata con successo.

Il progetto PHP indica le versioni corrette 8.5.12, 8.4.27, 8.3.36 e 8.2.35. I pacchetti gestiti dalle distribuzioni possono ricevere correzioni tramite backport. Una versione di base apparentemente inferiore, da sola, non dimostra quindi né l’assenza di protezione né l’avvenuta correzione. Sono decisivi il pacchetto preciso, l’avviso del fornitore e il runtime effettivamente utilizzato.

Gli avvisi riguardano diverse integrazioni con i server web. PHP evidenzia il rischio con Apache e mod_php; questo non equivale a un via libera generale per PHP-FPM o altre modalità di esecuzione. Componenti, estensioni e impostazioni vanno valutati separatamente per ciascun ambiente. Il nome di un prodotto nell’inventario non basta.

Cronologia: preavviso il 20 ottobre, aggiornamenti PHP il 21 e prosecuzione delle verifiche individuali il 22 ottobre 2026.
Dall’avviso a una risposta verificabile

La prima domanda: dove viene realmente eseguito PHP?

Abbiamo confrontato le segnalazioni disponibili con le informazioni già note sui sistemi. L’inventario comprende siti pubblici, interfacce amministrative, applicazioni aggiuntive e servizi che includono PHP. Le priorità dipendono dalla raggiungibilità esterna, dalla funzione del servizio e dalla responsabilità dell’aggiornamento. Le voci incerte ricevono un’attività di verifica concreta.

Distinguiamo il pacchetto installato dal servizio web attivo. Più versioni di PHP possono coesistere. Anche l’aggiornamento riuscito del programma da riga di comando non dimostra quale runtime utilizzi uno specifico processo del server web. Dopo una modifica occorre quindi verificare in modo tracciabile i servizi interessati e le impostazioni effettive. Una pagina diagnostica pubblicamente accessibile non è una soluzione permanente.

L’inventario deve includere anche i sistemi meno evidenti. La gestione via web può essere una funzione secondaria di un dispositivo e offrire comunque un’ulteriore superficie d’attacco. Stabilire se utilizzi PHP e richieda una correzione resta una verifica tecnica. La sola presenza di un’interfaccia web non dimostra che il sistema sia interessato.

Aggiornare, verificare l’efficacia e registrare i punti aperti

Il lavoro inizia con inventario e valutazione. Gli aggiornamenti disponibili vengono poi applicati secondo priorità. La verifica comprende versione del pacchetto, riavvii necessari, configurazione effettiva e funzioni applicative richieste. I responsabili devono sapere quali servizi sono stati verificati e dove mancano ancora una risposta del fornitore, un pacchetto adatto o un collaudo tecnico.

Se un servizio specialistico non può essere aggiornato subito, esaminiamo anzitutto quali accessi pubblici diretti siano davvero necessari. Un accesso Internet superfluo può essere rimosso temporaneamente. L’uso interno autorizzato può eventualmente proseguire tramite accessi opportunamente isolati. È una misura limitata, da verificare negli effetti e nelle conseguenze operative; non elimina automaticamente le vulnerabilità del software sottostante.

Un’attività non termina con l’avvio dell’aggiornamento. Serve una conclusione verificabile oppure un punto aperto con un responsabile. Quando si limita un accesso, si controlla anche la raggiungibilità residua. Dopo l’installazione di una correzione si verifica il servizio realmente in uso. Entrambi gli aspetti appartengono alla documentazione operativa mantenuta aggiornata.

La verifica comprende anche il canale di distribuzione del software. Per un’installazione gestita dal sistema operativo si confrontano l’avviso della distribuzione e il pacchetto installato. Per un runtime incluso in un prodotto conta l’informazione del relativo fornitore. Questo evita di interpretare male un semplice numero di versione. Se le prove non bastano, il punto resta aperto e riceve un successivo passo di verifica. Uno stato verde privo di una base verificabile sarebbe fuorviante.

Percorso decisionale: censire il servizio, verificare una correzione adatta, aggiornare oppure limitare gli accessi pubblici superflui, quindi controllare l’efficacia e monitorare i punti aperti.
Verificare separatamente aggiornamento e raggiungibilità

Il contributo di WAF, proxy, firewall e reti separate

WAF, reverse proxy, firewall e VLAN sono già strumenti utili per limitare accessi e flussi. Un firewall controlla le connessioni ammesse, un proxy concentra accessi web definiti e le reti separate aiutano a circoscrivere le comunicazioni consentite. Queste funzioni hanno valore, ma non risolvono ogni vulnerabilità all’interno di un processo PHP.

In particolare, PHP2Shell non va presentato come completamente risolto da un WAF posto a monte o interno all’applicazione. Il progetto PHP indica l’aggiornamento come soluzione completa; le restrizioni temporanee coprono solo determinati percorsi d’attacco. Consideriamo quindi questi livelli insieme allo stato delle patch e verifichiamo se un altro percorso possa aggirare la limitazione prevista.

Modello semplificato: Internet, firewall, reti separate, proxy o WAF e applicazione PHP. Il controllo degli accessi non sostituisce l’aggiornamento di sicurezza PHP.
Livelli di protezione e manutenzione software vanno insieme

Test isolati e IA a supporto della valutazione tecnica

Per la valutazione tecnica abbiamo utilizzato anche ambienti di prova isolati di nostra proprietà. Claude e OpenAI Codex hanno supportato la ricerca e la preparazione degli ambienti. Sono stati decisivi il giudizio professionale e fonti tecniche affidabili. Una risposta plausibile dell’IA non sostituisce la prova della versione installata o la verifica di un’impostazione effettiva.

L’osservazione continua anche dopo l’aggiornamento. Errori insoliti, processi inattesi o connessioni anomale vanno interpretati rispetto al normale comportamento del sistema. Una patch installata non dimostra retroattivamente che prima non sia accaduto nulla. Allo stesso modo, una singola anomalia nei log non prova con certezza un attacco riuscito.

Contestualizzare le comunicazioni pubbliche

La comunicazione dell’Università di Vienna sulle limitazioni ai servizi IT centrali mostra quanto possano incidere le misure precauzionali. L’avviso aggiornato riferisce che la maggior parte dei servizi è nuovamente disponibile. Queste informazioni aiutano a capire la situazione, ma non descrivono lo stato di altre organizzazioni o di uno specifico ambiente seguito da DAXS.

Anche gli avvisi dei fornitori devono corrispondere al servizio interessato. Un fornitore può distinguere i propri prodotti da un portale ospitato che gestisce. Una dichiarazione relativa a un prodotto non si estende ad applicazioni arbitrarie di terzi. Per OPNsense, FreePBX, Sophos o un gateway specifico contano quindi versione esatta, componenti inclusi, indicazioni del fornitore ed effettiva situazione degli accessi.

La preparazione rende la risposta verificabile

Un inventario utile, responsabilità chiare e percorsi di aggiornamento preparati facilitano la gestione degli avvisi critici. Non pubblichiamo percentuali di aggiornamento senza prove né un via libera generale per tutti i sistemi. Contano le singole verifiche tracciabili e la gestione continuativa dei casi aperti. Venerdì approfondiremo come l’IA possa aiutare a includere nei controlli anche i dispositivi facilmente trascurati.

Parliamo di sicurezza e gestione delle patch

Approfondisci la valutazione sistematica della sicurezza