In breve: per la vulnerabilità di sicurezza PHP2Shell in PHP 8.1 non esiste un aggiornamento ufficiale. Il progetto PHP fornisce per 7.4, 8.0 e 8.1 solo backport minimi del codice sorgente, non release già pronti. Chi gestisce queste versioni ha bisogno di un backport confermato dal proprio fornitore oppure di misure provvisorie e dovrebbe pianificare ora il passaggio a una versione supportata.
Esiste un aggiornamento per la vulnerabilità di PHP 8.1?
Non dal progetto PHP. Il 21 ottobre 2026 sono usciti correzioni ufficiali solo per i rami supportati: 8.5.12, 8.4.27, 8.3.36 e 8.2.35. PHP 8.1 e le versioni più vecchie non ricevono più aggiornamenti ufficiali.
Sono interessate comunque. Secondo la stampa specializzata, le versioni vulnerabili risalgono quasi senza interruzione fino a PHP 5.4. Chi gestisce una di queste versioni raggiungibile pubblicamente ha quindi una vulnerabilità critica con CVSS v4.0 9,2 senza una patch già pronta.
Per molte imprese è una sorpresa, perché simili sistemi girano spesso da anni in modo stabile e senza dare nell'occhio. Che una versione non riceva più aggiornamenti non si nota nella quotidianità, finché non compare una vulnerabilità come PHP2Shell. I backport del sorgente per 7.4, 8.0 e 8.1 sono un'eccezione e non una ripresa della manutenzione regolare.
Che cosa significano i backport del sorgente
Per 7.4, 8.0 e 8.1 esistono backport minimi del codice sorgente. Sono correzioni nel codice sorgente trasferite a questi rami più vecchi. Non sono un release ufficiale con numero di versione, pacchetto testato e changelog.
In pratica significa: qualcuno deve riprendere il backport, ricompilare PHP, testarlo e distribuirlo. Può avvenire in tre modi:
- La Sua distribuzione riprende la correzione nei propri pacchetti, ad esempio nell'ambito di una manutenzione a lungo termine.
- Il Suo hoster costruisce pacchetti PHP propri e applica il backport.
- Lei stesso o un prestatore di servizi compila PHP dai sorgenti. È impegnativo e va ripetuto a ogni ulteriore vulnerabilità.
Se il Suo sistema abbia ricevuto un backport lo verifica dal changelog del pacchetto:
apt changelog php8.1-fpm | grep -i -E "CVE-2026-109618|CVE-2026-109619" # Debian/Ubuntu
rpm -q --changelog php-fpm | grep -i -E "CVE-2026-109618|CVE-2026-109619" # famiglia RHEL
I nomi dei pacchetti variano a seconda della distribuzione e della fonte dei pacchetti. Se manca una voce, chieda al fornitore. Come funziona nel dettaglio la verifica è spiegato alla pagina Verificare correttamente versione e stato delle patch di PHP.
Mettere in sicurezza il vecchio server fino alla migrazione
Finché non gira un backport confermato, valgono le misure provvisorie di php.net: memory_limit=-1 non sovrascrivibile con limite di memoria tramite cgroup, post_max_size di 8M o 32M con upload_max_filesize inferiore e session.upload_progress.enabled=0 nella configurazione del server, poi riavviare tutti i worker. Non sono una protezione completa. Dettagli alla pagina Misure immediate se non può ancora applicare la patch.
A ciò si aggiungono misure che riducono la raggiungibilità: aree di amministrazione solo tramite VPN o indirizzi IP abilitati, disattivare i siti web non necessari, limitare strettamente gli accessi al server. Il BSI (l'Ufficio federale tedesco per la sicurezza informatica) raccomanda di scollegare temporaneamente dalla rete i server senza aggiornamento. Per una vecchia applicazione difficile da migrare, una soluzione isolata può essere la risposta più onesta rispetto all'esercizio su Internet aperto.
Se un server con PHP 8.1 o precedente è stato in rete senza protezione dal 17 ottobre, lo prenda sul serio: il BSI prevedeva uno sfruttamento rapido e su larga scala. Salvi i log a partire dal 20 ottobre e faccia verificare il server alla ricerca di tracce, prima di migrare.
Pianificare la migrazione: a quale versione?
L'obiettivo è una versione che il progetto PHP supporta e che la Sua applicazione sopporta. PHP 8.2 chiude la vulnerabilità dalla 8.2.35, ma raggiunge la fine del supporto il 31/12/2026. Chi migra ora dovrebbe quindi, se possibile, passare a 8.3 o superiore, purché l'applicazione lo consenta. Lo stato aggiornato lo indica php.net nella pagina delle versioni supportate.
Quale versione di PHP supportino 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. Spesso va prima aggiornata l'applicazione stessa, prima che PHP possa cambiare. Un caso tipico sono i vecchi shop, che descriviamo alla pagina Shopware 5. Retroscena sulle conseguenze delle versioni obsolete si trovano alla pagina PHP end of life: rischi delle versioni obsolete.
| Passo | Contenuto |
|---|---|
| Inventario | versione di PHP, applicazione, estensioni, personalizzazioni |
| Requisiti | versioni di PHP supportate secondo il produttore |
| Ambiente di test | copia con la nuova versione di PHP, analisi del registro degli errori |
| Passaggio | finestra di manutenzione pianificata, via di ritorno preparata |
| Rifinitura | verificare i valori transitori, configurare la sorveglianza |
Come aiuta concretamente PHP SOS?
Con la migrazione da PHP 8.1 e precedenti La accompagniamo dalla vecchia versione a una supportata:
- Mettere subito in sicurezza: verificare lo stato dei backport, impostare le misure provvisorie, ridurre la raggiungibilità.
- Verificare le tracce: salvare i log a partire dal 20 ottobre e analizzarli alla ricerca di anomalie.
- Preparare la migrazione: chiarire la compatibilità secondo il produttore, allestire l'ambiente di test, correggere gli errori.
- Passare e documentare: installare la nuova versione di PHP, riavviare tutti i processi, documentare lo stato.
Domande frequenti
PHP 8.1 è interessato da PHP2Shell?
Secondo la stampa specializzata sono interessate quasi tutte le versioni fino a PHP 5.4, PHP 8.1 compreso. Il progetto PHP non pubblica più aggiornamenti ufficiali per 8.1, solo backport minimi del codice sorgente.
Che cos'è un backport del sorgente?
Una correzione nel codice sorgente trasferita a un ramo di versione più vecchio. Non è un release già pronto: qualcuno deve riprenderla, ricompilare PHP, testarlo e distribuirlo. Può occuparsene il fornitore della Sua distribuzione, il Suo hoster o un prestatore di servizi.
Basta passare a PHP 8.2?
A breve termine PHP 8.2.35 chiude la vulnerabilità. PHP 8.2 raggiunge però la fine del supporto il 31/12/2026. Chi comunque migra dovrebbe quindi verificare se l'applicazione, secondo il produttore, supporti anche 8.3 o superiore.
Il mio shop gira solo con PHP 7.4. E adesso?
Servono allora due cose in parallelo: mettere in sicurezza il server con misure provvisorie e isolamento, e portare l'applicazione a una versione che sopporti una versione di PHP supportata. Quale sia lo indicano i requisiti di sistema del produttore.