4.9.06

Valzer di polemiche su falla a codice aperto

La sicurezza è uno dei cardini di molti software open source, insieme alla trasparenza consentita dal codice aperto e disponibile all'analisi: un piccolo caso che richiede un approfondimento si è aperto nelle scorse settimane, quando è stata individuata una falla all'interno di un software CMS, per la gestione dei contenuti.
A scoprirla nel software Etomite è stato Luca Ercoli, esperto di sicurezza per conto di SEEWEB, che non esclude possa trattarsi non di vulnerabilità ma di backdoor. Con lui abbiamo voluto approfondire la questione.

Punto Informatico: Cosa ti ha portato a scoprire questa falla in Etomite?
Luca Ercoli: Stavo effettuando alcune operazioni sui server di SEEWEB e con i colleghi avevamo notato che c'era un notevole aumento dei tentativi di scalata dei privilegi. Così siamo andati ad analizzare i log effettuati dagli strumenti di registrazione, ma è stato solo analizzando con più precisione i log del server web, che abbiamo capito che i tentativi di intrusione venivano effettuati sfruttando una vulnerabilità del CMS Etomite.

PI: In cosa consisteva di preciso questa vulnerabilità?
LE: Permetteva ad un utente remoto, non in possesso di un nome utente e una password, di poter eseguire comandi sulla macchina dov'è installato il programma. Ho subito cercato su internet se ci fosse già documentazione di questa falla ma non ho trovato niente nemmeno sul sito ufficiale; allora sono andato a controllare il codice sorgente dell'applicazione e ho trovato che era stato inserito un codice codificato con algoritmo base 64 in un file php. Questo codice consentiva allo script di eseguire, con i privilegi del server web, i comandi che venivano forniti per mezzo di un parametro. Se l'applicazione non fosse stata open source non avrei potuto capire che stava succedendo.

PI: Concretamente quali erano i rischi? Come poteva essere sfruttata questa falla?
LE: E' facile, si poteva creare una connessione inversa dai nostri server alla macchina del trasgressore, bypassando direttamente tutti i firewall dell'azienda. Un attacco può essere molto pericoloso tanto che dopo la mia segnalazione è stato subito sospeso il download della versione incriminata e lasciato attivo solo quello della versione beta che, a detta degli sviluppatori, non contiene la backdoor.

PI: Dopo la tua denuncia questa scoperta ha creato un po' di polemiche, proprio perché pare che in realtà più che una delle solite vulnerabilità questa fosse una backdoor...
LE: Ho inviato subito un'email al responsabile del progetto, per capire quale fosse l'utilità di quella porzione di codice, ma non ho ricevuto alcuna risposta. La loro posizione ufficiale è che non erano a conoscenza di quella porzione di codice, non sanno proprio chi l'abbia inserita. Ma c'è una cosa che non torna: subito dopo quella parte di dati c'era una funzione per inviare una mail di cui loro erano a conoscenza ed era anche codificata nella stessa maniera, è difficile dunque che davvero non si fossero accorti della porzione in questione. Il file non era neanche troppo lungo ed era di facile lettura, qualunque programmatore se ne sarebbe accorto; per gli utenti invece è un discorso diverso, perché parte del codice era codificata.

PI: Come vi siete arrangiati fino all'arrivo della versione beta?
LE: Non è stato facile. Abbiamo dovuto cambiare i permessi su qualche applicazione e rendere non eseguibili alcune partizioni. Tuttavia potevano essere comunque eseguiti comandi arbitrari, cosa decisamente difficile da bloccare.

PI: Quest'evento cosa dice dell'open source?
LE: Beh, sicuramente la cosa che più mi ha colpito è che il software era distribuito sotto licenza GPL. Questo dovrebbe far capire a chi usa applicazioni a sorgente chiusa, cioè quelle più diffuse, come non possano essere sicuri delle funzionalità di cui dispongono se nemmeno la licenza GPL, che distribuisce il codice sorgente alla luce del sole, riesce a dare garanzie.
Infatti teoricamente la licenza GPL garantisce l'utente dall'assenza di queste backdoor, ma come abbiamo visto non è sempre vero. Allora mi viene da pensare che un caso come questo costituisca solo la punta di un iceberg, la cui base è fatta dai programmi per Windows che vengono distribuiti in codice binario già pronto per essere utilizzato e la cui correttezza purtroppo non è verificabile come per i programmi distribuiti con licenza GPL.
Devo dire purtroppo che in questi giorni, dopo la pubblicazione della falla in Etomite, mi è capitato di parlare con molte persone che hanno perso la fiducia nel codice aperto.

Ma allora, viene da dire, se il codice non fosse stato aperto quando e chi avrebbe scovato la.. falla?

da PUNTO INFORMATICO del 30/01/06

Nessun commento: