Dopo le numerose vulnerabilità scoperte e le critiche ricevute, Oracle ha introdotto diversi miglioramenti per la sicurezza di Java, ma il modo in cui funziona la procedura di aggiornamento rappresenta ancora un grave rischio per le aziende, a causa della possibilità di installare più versioni sui computer. Una società di sicurezza ha condotto uno studio, i cui risultati sono piuttosto allarmanti: l’80% dei sistemi enterprise utilizza Java 6, una delle versioni più vulnerabili in assoluto. Se si considera che alcune aziende usano ancora edizioni di Windows obsolete, è evidente la poca attenzione riservata alla sicurezza informatica.
Analizzando circa 1 milione di sistemi posseduti da quasi 400 aziende, Bit9 ha scoperto che Java 7 risulta presente solo sul 7% dei computer. Java 6 è la versione più diffusa, nonostante il supporto sia terminato a fine aprile (solo gli utenti che hanno stipulato un contratto con Oracle ricevono le patch di sicurezza). Per capire i rischi che corrono le aziende, basti pensare che la versione più usata è Java 6 Update 20, per la quale sono state rilevate ben 215 vulnerabilità. L’ultimo aggiornamento è Java 6 Update 45. Solo il 3% dei sistemi eseguiva Java 7 Update 21 al momento della rilevazione dei dati (l’ultima versione è Java 7 Update 25).
Un altro grave problema è rappresentato dalle versioni multiple. Il 65% delle organizzazioni ha installato più di due versioni, il 20% più di tre versioni e il 5% addirittura più di 100 versioni. Ciò è dovuto al sistema di aggiornamento di Java. Se l’utente effettua un update, Java 7 proverà a rimuovere Java 6, ma un’installazione pulita di Java 7 non cancellerà le vecchie versioni. Avere più versioni di Java sullo stesso computer permette di aumentare la compatibilità con le applicazioni legacy, ma allo stesso tempo cresce esponenzialmente il numero di vulnerabilità che gli hacker possono sfruttare per attaccare i sistemi aziendali.
Probabilmente la frammentazione delle versioni all’interno dell’ambiente enterprise non è intenzionale, tuttavia le aziende dovrebbero effettuare una sorta di inventario per capire quante versioni sono installate su ogni macchina e se la loro presenza è realmente necessaria. Se le policy di sicurezza non prevedono Java, si dovrebbero usare tool per il blocco o la rimozione.