In breve: dalla vulnerabilità di sicurezza PHP2Shell sono interessati i rami da 8.2 a 8.5 fino ai release del 21 ottobre 2026 e, secondo la stampa specializzata, quasi tutte le versioni fino a PHP 5.4. È corretta in PHP 8.5.12, 8.4.27, 8.3.36 e 8.2.35. Per PHP 8.1 e precedenti non esistono più aggiornamenti ufficiali, ma solo backport minimi del codice sorgente per 7.4, 8.0 e 8.1.
Quali versioni ha colpito la vulnerabilità PHP?
PHP2Shell comprende le due vulnerabilità CVE-2026-109618 e CVE-2026-109619, ciascuna con CVSS v4.0 9,2. Entrambe consentono l'esecuzione di codice dannoso da remoto senza autenticazione. Il 21 ottobre 2026 alle 14:00 UTC (16:00 ora tedesca) il progetto PHP ha pubblicato le correzioni per tutti i rami supportati.
| Ramo PHP | Ultimo stato prima della correzione | Corretta da | Supporto |
|---|---|---|---|
| 8.5 | 8.5.11 | 8.5.12 | supportato ufficialmente |
| 8.4 | 8.4.26 | 8.4.27 | supportato ufficialmente |
| 8.3 | 8.3.35 | 8.3.36 | supportato ufficialmente |
| 8.2 | 8.2.34 | 8.2.35 | termina il 31/12/2026 |
| 8.1, 8.0, 7.4 | tutti gli stati | nessun release ufficiale | solo backport minimi del codice sorgente |
| da 7.3 a 5.4 | secondo la stampa specializzata quasi tutte interessate | nessun aggiornamento | senza supporto da anni |
Le indicazioni su 8.2–8.5 provengono dalle segnalazioni di php.net. L'affermazione sulle versioni fino a PHP 5.4 proviene dalla stampa specializzata; non esiste un elenco ufficiale completo per le versioni obsolete.
Per i non tecnici in poche frasi: se sul Suo server c'è una versione della colonna «Corretta da» o successiva e poi tutti i processi PHP sono stati riavviati, PHP2Shell è chiusa. Se c'è un numero più vecchio, o è in gioco un backport che il Suo fornitore deve confermare, oppure la vulnerabilità è aperta. Nel dubbio chieda al Suo reparto IT o al Suo hoster proprio questi tre punti: versione, backport, riavvio.
Modalità di esecuzione interessate
Il numero di versione è solo metà della risposta. Sono interessati tutti i modi abituali di far girare PHP su un web server: PHP-FPM, Apache con mod_php, php-cgi, FrankenPHP e LiteSpeed. Il team PHP classifica il rischio come il più alto con mod_php, perché lì è stato dimostrato un exploit prima ancora che venga eseguito il codice dell'applicazione. Dettagli alla pagina Perché mod_php comporta il rischio più alto.
Nessuna protezione deriva dall'applicazione: che sia WordPress, Shopware, TYPO3, Laravel o uno sviluppo proprio, un aggiornamento dell'applicazione non chiude la vulnerabilità in PHP.
Backport: quando il numero di versione inganna
Molte distribuzioni Linux e molti hoster forniscono PHP in pacchetti propri. Invece di passare a una nuova versione upstream, riprendono la correzione come backport nella loro versione esistente. Ne deriva una conseguenza pratica: il numero visualizzato resta vecchio. Un esempio della situazione attuale è Plesk, che può continuare a mostrare 8.2.34 anche se l'errore è corretto.
Per Lei significa: la tabella sopra vale per i release ufficiali di php.net. Per i pacchetti della Sua distribuzione o dell'hoster decidono lo stato dei pacchetti e la conferma del fornitore. Come verificare entrambi lo mostra la pagina Verificare correttamente versione e stato delle patch di PHP. Per il test rapido da riga di comando:
php -v
apt policy php8.3-fpm # Debian/Ubuntu, il nome del pacchetto varia a seconda della versione e della fonte
dnf info php-fpm # famiglia RHEL
Un numero di versione corretto sul disco non significa ancora che sia in esecuzione. Solo dopo il riavvio di tutti i processi PHP il server lavora con il codice corretto.
Che cosa vale per PHP 8.1 e precedenti?
Per PHP 8.1, 8.0 e 7.4 esistono solo backport minimi del codice sorgente, cioè correzioni nel codice sorgente che qualcuno deve riprendere e compilare da sé. Release ufficiali non ne escono. Alcune distribuzioni con manutenzione a lungo termine inseriscono tali correzioni nei loro pacchetti; se ciò valga per il Suo sistema si può chiarire solo dal changelog del pacchetto o presso il fornitore.
A lungo termine non c'è alternativa a una versione supportata. Quale versione di PHP sopportino il Suo CMS o il Suo shop lo verifichi secondo i requisiti di sistema del produttore, ad esempio su wordpress.org, shopware.com o typo3.org. Maggiori informazioni alla pagina PHP 8.1 e precedenti: che cosa vale adesso.
E CVE-2026-115560?
Il 23 ottobre php.net ha pubblicato un avviso su una terza vulnerabilità. Interviene solo con una configurazione di sessione insolita. Secondo lo stato del 25 ottobre non esiste ancora una versione corretta; fino al prossimo bugfix release regolare il rimedio è session.upload_progress.enabled=0. Un elenco di versioni è atteso solo con l'advisory completo.
Come aiuta concretamente PHP SOS?
- Inventario: rileviamo tutte le versioni di PHP sui Suoi server, anche le installazioni secondarie per singoli siti web, che si tende a trascurare.
- Confronto: per ogni installazione chiariamo se si tratti di un release ufficiale, di un backport della distribuzione o se non vi sia alcuna correzione.
- Aggiornamento con conferma: con il servizio di patch PHP installiamo la correzione e riavviamo tutti i processi.
- Piano di migrazione: per le versioni senza aggiornamenti ufficiali pianifichiamo il passaggio con la migrazione da PHP 8.1 e precedenti e mettiamo in sicurezza il server fino ad allora.
Domande frequenti
PHP 8.3.35 è ancora sicuro?
No, a meno che il Suo fornitore non abbia applicato un backport. 8.3.35 è l'ultimo stato prima della correzione; PHP2Shell è corretta nel ramo 8.3 dalla 8.3.36. Con i pacchetti delle distribuzioni il numero può restare lo stesso anche se l'errore è corretto. In tal caso contano il changelog del pacchetto o la conferma del fornitore.
PHP 7.4 è interessato da PHP2Shell?
Secondo la stampa specializzata sono interessate quasi tutte le versioni fino a PHP 5.4. Per 7.4, 8.0 e 8.1 esistono solo backport minimi del codice sorgente e nessun release ufficiale. Il passaggio a una versione supportata è la via affidabile.
Perché Plesk mostra 8.2.34 anche se è stata applicata la patch?
Distribuzioni e hoster riprendono talvolta le correzioni come backport nei pacchetti esistenti. Il numero di versione resta allora lo stesso, l'errore è comunque corretto. Verifichi lo stato dei pacchetti oppure si faccia confermare la patch dal fornitore.
Quale versione di PHP dovrei scegliere adesso?
Una versione supportata, che la Sua applicazione abiliti secondo i requisiti di sistema del produttore. PHP 8.2 raggiunge la fine del supporto il 31/12/2026; chi comunque cambia ora dovrebbe tenerne conto.