I ricercatori di VulnCheck hanno imparato a sfruttare una critica vulnerabilità di PHP2Shell anche sui server con la protezione della memoria ASLR attivata. Il nuovo strumento permette di eseguire codice remoto senza autorizzazione e funziona con diverse versioni di PHP, ampliando significativamente le possibilità degli attaccanti.
Il principale risultato è stato l’aggiramento della protezione ASLR sui server a 64 bit x86-64. Il meccanismo ASLR cambia casualmente la posizione del codice e dei dati del programma nella memoria operativa, rendendo difficile per i malintenzionati determinare in anticipo gli indirizzi necessari.
In precedenza, tale protezione aveva notevolmente complicato la creazione di un exploit affidabile per PHP2Shell, soprattutto sui server di lavoro standard.
Gli esperti di VulnCheck hanno risolto il problema con una catena di due azioni. Inizialmente, l’exploit estrae gli indirizzi dalla memoria del processo vulnerabile, rivelando informazioni che ASLR dovrebbe nascondere.
Successivamente, le informazioni ottenute aiutano a ottenere l’esecuzione remota di codice arbitrario. La dimostrazione iniziale è stata condotta su PHP 8.4.26 con le impostazioni tipiche di un server di lavoro, inclusa la disattivazione dell’output degli errori tramite display_errors=off.
Verso sera del 22 ottobre, i ricercatori hanno ampliato le capacità dello strumento. L’exploit aggiornato funzionava con PHP dall’8.4.10 all’8.4.26 incluso senza modifiche per ogni singola versione. Il risultato differisce significativamente dalle dimostrazioni progettate per una configurazione specifica della memoria. Tuttavia, la funzionalità confermata è ancora limitata al range di PHP indicato e alle condizioni di utilizzo verificate.
Separatamente, VulnCheck ha testato i processori ARM64. I ricercatori sono riusciti a riprodurre la perdita di indirizzi di memoria, ma non sono riusciti a ottenere un’esecuzione remota completa del codice su tale architettura.
Il team ha anche scoperto in pubblico un exploit dimostrativo che aggirava ASLR su x86-64, ma solo con PHP 8.4.26 e una configurazione standard della memoria dinamica. In altre condizioni testate, il prototipo pubblico non ha funzionato.
Il proprio strumento più versatile, VulnCheck lo ha fornito a un gruppo limitato di clienti del servizio Initial Access Intelligence. Non è possibile scaricare liberamente lo sviluppo. I ricercatori avvertono che GitHub è già pieno di centinaia di repository con exploit di PHP2Shell apparentemente funzionanti, anche se solo una piccola parte del codice pubblicato utilizza effettivamente le vulnerabilità. L’emergere di uno strumento completo aumenta la probabilità di sviluppare nuove varianti di attacco funzionanti.
La portata della potenziale minaccia è illustrata da uno studio separato dei server accessibili via Internet. VulnCheck ha scoperto 2.608.039 nodi con PHP. Di questi, 2.607.985, ovvero il 99,998%, sono stati considerati probabilmente vulnerabili a PHP2Shell. Il campione copre l’infrastruttura che il sistema di ricerca è stato in grado di rilevare e identificare, quindi non riflette il numero esatto di tutti i server PHP su Internet.
Una situazione particolarmente preoccupante riguarda le versioni obsolete di PHP. Più di 1,1 milioni di server rilevati, circa il 42% del campione VulnCheck, utilizzano versioni per le quali il progetto principale non rilascia più release standard corrette. Più di 700.000 nodi funzionano con PHP da 3.x a 7.3, altri quasi 400.000 utilizzano le versioni non supportate 7.4, 8.0 e 8.1. Per le ultime tre, gli sviluppatori hanno preparato correzioni del codice sorgente, ma agli amministratori servono le build appropriate dai fornitori o l’installazione manuale delle patch.
La parte più pericolosa di PHP2Shell è legata agli errori nell’interprete PHP stesso, non nel codice dei singoli siti. La vulnerabilità CVE-2026-109618 si verifica durante l’elaborazione errata della mancanza di memoria. Una richiesta appositamente formata può interrompere il funzionamento di PHP quando le strutture interne non sono ancora completamente preparate.
Ricercatore di sicurezza informatica con esperienza nell’analisi delle vulnerabilità, nella mitigazione del rischio cyber, nelle attività di red teaming ed ethical hacking e nella protezione di sistemi complessi. Specializzato in penetration testing e Threat Intelligence, contribuisce al rafforzamento della resilienza digitale di infrastrutture e reti aziendali.
Aree di competenza: Penetration Testing, Threat Intelligence, Red Teaming, Vulnerability Assessment, Incident Response