Fra meno di due mesi PHP 5 sarà obsoleto. Un miliardo di siti web a rischio hacking?

PHP è il linguaggio che supporta la maggior parte dei siti web. Secondo le ultime statistiche di W3Techs quasi l’80% di tutti i siti usa PHP (nb: stime come queste sono sempre approssimative). Sistemi come Joomla, WordPress, Drupal e molti altri usano PHP per funzionare. Se si considera che Netcraft nel suo October 2018 Web Server Survey ha contato ben 1.673.535.333 siti web, è possibile ipotizzare un uso del linguaggio PHP su oltre un miliardo e trecento milioni di siti.

Purtroppo però, secondo le statistiche specifiche su PHP di W3Techs, gran parte di questi siti usa ancora una versione obsoleta di PHP, la versione 5, che – come ci ricorda WordFence nel suo blog – cesserà di ricevere aggiornamenti di sicurezza alla fine di quest’anno.

Infatti, secondo i dati citati in precedenza, oltre il 77% dei siti che si appoggiano a PHP usa ancora la versione 5, nonostante la release più recente – la versione 7 – sia stata rilasciata ormai quasi tre anni fa e sia molto stabile. Secondo i numeri di Netcraft e di W3Techs[1] potrebbero esserci fino a un miliardo di siti web che a partire dal prossimo anno useranno una versione di PHP obsoleta che non riceverà più nuove patch di sicurezza.

Il sito ufficiale di PHP offre una panoramica delle versioni attualmente supportate con i criteri adottati per il loro supporto. Una versione di PHP è supportata per due anni dopo il rilascio iniziale, dopodiché per un ulteriore anno solo riguardo agli aggiornamenti di sicurezza. Finiti i tre anni complessivi, anche in caso di bug o vulnerabilità di sicurezza, non saranno rilasciati aggiornamenti.

Per la versione 5.6 è stata fatta un’eccezione: il supporto di sicurezza fu esteso per un altro anno, ma il 31 dicembre 2018 scadrà definitivamente e tutti i siti che usano ancora questa release saranno vulnerabili a nuovi exploit.

Cosa fare per capire quale versione di PHP usa il proprio sito?
Chi ha accesso FTP può creare un semplicissimo script di due righe, chiamarlo ad esempio versionephp.php (o comunque un nome difficile da indovinare) e installarlo sul proprio server. Il codice dello script dovrà essere il seguente:

<?php

phpinfo();

Aprendo il file dal browser si potrà leggere in alto a sinistra la versione di PHP. È importante cancellare il file in questione subito dopo averlo usato.

Esistono anche, per chi non può caricare direttamente i file nella cartella del sito web, dei semplici plug-in per WordPress che svolgono questa funzione.

Cosa fare se il proprio sito usa una versione obsoleta di PHP?
La maggior parte dei webmaster dovrà rivolgersi al proprio provider per chiedere l’aggiornamento del linguaggio PHP a una delle ultime versioni. Facendo però attenzione a eseguire dei test prima di compiere la migrazione su un sito in produzione, visto che dalla versione 5 alla 7 sono cambiate molte cose, e non sono infrequenti problemi e incompatibilità con script e plug-in di terze parti.

[1] W3Techs prende in esame i primi 10 milioni di siti per popolarità secondo il servizio Alexa, ritenendoli un campione sufficientemente rappresentativo.

Ho iniziato a interessarmi di cybersecurity dal 1989, quando ho "trovato" il mio primo virus. Dal 1992 me ne occupo professionalmente: per oltre un decennio come collaboratore di testate specializzate (fra cui PC Professionale), poi come consulente del Ministro delle Comunicazioni su aspetti di sicurezza delle reti, quindi con collaborazioni sui medesimi temi con Telespazio (gruppo Finmeccanica). Oggi mi interesso di nuove tecnologie (AI) e cyber warfare. Sono socio fondatore del chapter italiano di Internet Society e membro dell'Associazione Italiana esperti in Infrastrutture Critiche. Dal 2006 lavoro presso ESET Italia, dove ricopro il ruolo di Operations Manager. Il blog è personale.