Vai al contenuto
Cyber Guard Core Cybersecurity e informatica forense

Minacce e attacchi 6 min di lettura

PHP2Shell spiegato: le falle critiche di PHP, chi è a rischio e come proteggere il Suo sito

PHP2Shell: cosa deve fare subito chi gestisce un sito web

Il 21 ottobre 2026 il progetto PHP ha pubblicato aggiornamenti di sicurezza d'emergenza per due falle critiche, ora note insieme come PHP2Shell. Consentono a un aggressore di prendere il controllo di un server web senza password e, in alcune configurazioni, prima ancora che il codice del sito inizi a girare. I primi tentativi di sfruttamento sono stati osservati a poche ore dalla correzione.

Si stima che PHP faccia funzionare tra il 75 e l'80% di tutti i siti web, WordPress compreso, quindi la questione riguarda una parte molto ampia del web. Ecco cosa è successo, chi è a rischio e cosa fare ora e in futuro.

Che cos'è PHP2Shell

PHP2Shell è costituito da due bug distinti nel nucleo dello stesso PHP, non in un plugin o in un tema:

  • CVE-2026-109618 si attiva quando PHP esaurisce la memoria a metà della preparazione di una richiesta. I dati interni restano costruiti a metà e il codice di pulizia vi si affida comunque. Può bastare l'invio di un modulo appositamente costruito e di dimensioni eccessive per innescarlo.
  • CVE-2026-109619 è un bug di "stato residuo". Le informazioni di una richiesta sopravvivono alla memoria a cui fanno riferimento e la richiesta successiva gestita dallo stesso processo PHP agisce su quei residui. I ricercatori hanno dimostrato che è raggiungibile tramite la funzione di avanzamento del caricamento di PHP, attiva per impostazione predefinita, che viene eseguita a ogni invio di modulo prima ancora che l'applicazione lo veda.

Entrambi sono classificati 9,2 su 10 (critici). Ciascuno dei due può consentire a un aggressore di eseguire codice proprio con i permessi del server web. Da lì può leggere database e file di configurazione, installare backdoor, inviare spam o usare il server per attaccare altri.

Da dove nasce

Le falle sono state scoperte da ricercatori di sicurezza di Calif, OpenAI e Wiz e segnalate in via riservata al team di sicurezza di PHP. La divulgazione era prevista per il 22 ottobre. Il 20 ottobre, però, sono trapelati online screenshot, video e dettagli parziali di uno strumento chiamato "PHP2Shell", e PHP ha anticipato l'aggiornamento d'emergenza al 21 ottobre alle 14:00 UTC.

Il comportamento vulnerabile è datato. Secondo l'analisi di Abstract Security, il codice interessato risale a PHP 5.4, rilasciato nel 2012: è presente da più di dieci anni. Succede spesso con i bug gravi nei software molto diffusi: un codice che funziona correttamente nell'uso normale può nascondere un caso limite per anni, finché qualcuno non lo esamina con gli occhi di un aggressore.

Cosa sta succedendo ora

  • Sfruttamento attivo: la società di sicurezza watchTowr ha osservato tentativi di sfruttamento contro la propria rete di honeypot il 21 ottobre, lo stesso giorno della correzione.
  • Portata: secondo VirusTotal, oltre 5,1 milioni di server PHP sono esposti su internet.
  • Avvisi ufficiali: il National Cyber Security Centre britannico ha esortato le organizzazioni del Regno Unito ad aggiornare PHP immediatamente, o a scollegare i sistemi finché non sono aggiornati.
  • Protezioni temporanee: Cloudflare ha distribuito regole di web application firewall contro i metodi di attacco noti e ha segnalato i primi attacchi. Ha definito le regole temporanee, non un sostituto dell'aggiornamento.
  • Completezza contestata: un team di ricerca, Abstract Security, afferma di aver riprodotto un attacco correlato su un server completamente aggiornato sfruttando la stessa funzione di avanzamento del caricamento. L'affermazione non è stata confermata dal progetto PHP, ma è un motivo in più per applicare, oltre all'aggiornamento, le misure di hardening indicate di seguito.

Chi è interessato

È coinvolta qualsiasi installazione di PHP che serve pagine web, comunque sia eseguito PHP: PHP-FPM, Apache con mod_php, php-cgi, LiteSpeed o FrankenPHP. Il team di PHP considera Apache con mod_php il caso più a rischio, perché un attacco può riuscire prima che venga eseguito qualsiasi codice dell'applicazione.

Le versioni corrette sono:

Ramo di PHPVulnerabileCorretto in
8.5precedenti alla 8.5.128.5.12
8.4precedenti alla 8.4.278.4.27
8.3precedenti alla 8.3.368.3.36
8.2precedenti alla 8.2.358.2.35
8.1, 8.0, 7.4tutte le versioninessun rilascio ufficiale; solo backport dei fornitori o dal codice sorgente
7.3 e precedentitutte le versioninessuna correzione: passare a una versione supportata

In pratica, questo significa che:

  • WordPress, Joomla, Drupal, Magento e la maggior parte dei siti delle piccole imprese funzionano con PHP. Il Suo sito è sicuro solo quanto la versione di PHP su cui si basa.
  • I clienti di hosting condiviso dipendono dal proprio provider per l'aggiornamento di PHP. Molti provider aggiornano automaticamente, ma alcuni offrono ancora vecchie versioni di PHP che non ricevono più correzioni.
  • I server vecchi e i siti dimenticati sono il rischio maggiore: un sito di prova, una vecchia pagina promozionale o una copia di staging con PHP 7 non verranno corretti da alcun aggiornamento.
  • Appliance e pannelli di controllo a volte includono una propria copia di PHP, che i normali aggiornamenti non toccano.

Cosa fare subito

  1. Individui ogni punto in cui gira PHP. Siti web, copie di staging, pannelli di controllo, strumenti interni e appliance. Cominci da tutto ciò che è raggiungibile da internet.
  2. Aggiorni a una versione corretta tra quelle in tabella, oppure installi i pacchetti aggiornati della Sua distribuzione Linux, in molti casi pubblicati prima dell'annuncio ufficiale.
  3. Riavvii tutti i processi PHP dopo l'aggiornamento. I processi di lunga durata mantengono in memoria il codice vulnerabile finché non vengono riavviati.
  4. Se usa un hosting condiviso, controlli la versione di PHP nel pannello di controllo. Passi a una versione supportata (8.2 o successiva) e chieda al provider di confermarLe per iscritto che le correzioni per PHP2Shell sono state applicate.
  5. Se non può aggiornare oggi, limiti l'accesso al server, disattivi session.upload_progress.enabled nelle impostazioni di PHP e riavvii, e mantenga la dimensione massima dei caricamenti al minimo consentito dal Suo sito. Il team di PHP è chiaro: nessuna impostazione protegge del tutto, quindi le consideri soluzioni provvisorie.
  6. Cerchi segni di compromissione a partire dal 20 ottobre, non solo dal giorno dell'aggiornamento. Tra i segnali d'allarme: errori PHP che riportano "tried to allocate" con "in Unknown on line 0", raffiche di invii di moduli molto grandi, file PHP sconosciuti nelle cartelle del sito, nuovi utenti amministratori, cron job o chiavi SSH modificati e connessioni in uscita inattese dal server web.

Come difendersi dalla prossima

PHP2Shell non sarà l'ultima falla critica nei software che fanno funzionare il web. Queste abitudini riducono i danni la prossima volta:

  • Resti su versioni supportate. Il software arrivato a fine vita non riceve più alcuna correzione. Fissi in calendario le date di aggiornamento prima che il supporto termini.
  • Scelga un hosting che aggiorna rapidamente e chieda quanto tempo impiegano di solito gli aggiornamenti critici di PHP ad arrivare sul Suo account.
  • Metta un web application firewall davanti al Suo sito. Servizi come Cloudflare e altre CDN possono distribuire patch virtuali in poche ore, facendoLe guadagnare tempo mentre aggiorna.
  • Rimuova ciò che non usa. Vecchi siti, plugin inutilizzati e funzioni di caricamento file non necessarie sono tutte porte in più.
  • Limiti il raggio d'azione. Esegua ogni sito con un proprio account, dia agli utenti del database solo i permessi necessari e conservi le credenziali fuori dalla cartella del sito.
  • Monitori e conservi i backup. Il monitoraggio delle modifiche ai file, i log conservati fuori dal server e backup offline testati trasformano un disastro in un semplice contrattempo.
  • Abbia un piano. Decida in anticipo chi controlla gli avvisi di sicurezza, chi applica gli aggiornamenti d'emergenza e chi chiamare se qualcosa è già andato storto.

Le serve aiuto?

Se non è sicuro di quale versione di PHP usino i Suoi siti, o desidera una verifica indipendente di eventuali segni di compromissione, il nostro team può aiutarLa. Possiamo valutare la Sua esposizione, verificare che le correzioni siano applicate e indagare su qualsiasi attività sospetta secondo standard forensi. Ci contatti o chiami la nostra linea 24/7 al +44 7520 644325.

Fonti

Pubblicato il dal team di Cyber Guard Core. Questo articolo offre indicazioni generali, non una consulenza sulla Sua situazione specifica. Parli con uno specialista.

Altri articoli

Tutti gli articoli
Minacce e attacchi31 agosto 2026 Attacchi zero-day ad agosto 2026: cosa è successo e come proteggere la Sua organizzazione Una falla di Windows sfruttata dal gruppo Lazarus e server di stampa dirottati senza password: gli zero-day di agosto e le misure pratiche che limitano i danni del prossimo. Leggi l'articolo Minacce e attacchi26 febbraio 2026 Rimozioni strumentali: come sopravvivere a un attacco mirato alla propria infrastruttura Se oggi gestisce un'azienda o degli asset digitali, probabilmente è preparato alle minacce informatiche tradizionali come le email di phishing. Le rimozioni mirate sono un tipo di attacco diverso. Leggi l'articolo Minacce e attacchi22 agosto 2025 La psicologia del crimine informatico: capire come pensano gli hacker Il crimine informatico non è solo una questione di codice. È una questione di controllo, manipolazione e movente, e capirlo è il primo passo per difendersi. Leggi l'articolo

Sta affrontando un incidente proprio ora?

Il nostro team di risposta agli incidenti è disponibile 24/7. Ci chiami, ci scriva su Telegram o prenoti una consulenza per le questioni meno urgenti.

Chiama il +44 7520 644325 Prenota una consulenza