Martin C. Rinard, professore di informatica al MIT, ha un obiettivo piuttosto ambizioso da portare a termine: sviluppare un
software immortale ed invulnerabile. La dimostrazione che non si tratta di fantascienza è stata data in occasione dell'
ACM Symposium on Operating Systems Principles, che ha potuto ospitare il lavoro portato a termine finora dal gruppo di ricercatori guidato da
Martin C. Rinard e
Michael Ernst, professore associato all'Università di Boston.
La
notizia è stata pubblicata su Technology Review, e mette in evidenza come tale filone di ricerca sia nato per accelerare e automatizzare il processo di individuazione e di soluzione di bug e vulnerabilità del software. Secondo una ricerca pubblicata da Symantec, infatti,
mettere una pezza a un software e divulgarla a tutti i sistemi infetti richiede circa un mese di lavoro di un programmatore.
Un prototipo del software è stato già sviluppato ed è stato chiamato
ClearView. Tale software è in grado di scovare e risolvere bug e vulnerabilità senza l'assistenza umana e senza accedere al codice sorgente del programma. L'unico requisito richiesto è la forma binaria del software.
Secondo quanto riportato nell'
articolo, ClearView è in grado di osservare il comportamento normale di un programma e di fissare un insieme di regole. In tal modo, quando si verifica un bug o una violazione d'accesso da parte di qualche malintenzionato, ClearView riconosce la
violazione di una o più regole assegnate e, conseguentemente, cerca di trovare alcune patch che possano risolvere il problema.
Tali patch vengono applicate al binario una alla volta, vengono testate per verificarne l'efficacia e infine viene scelta la soluzione più appropriata. Per testare ClearView i ricercatori hanno installato Firefox su una serie di computer e hanno ingaggiato un team di sviluppo indipendente per attaccare il browser. ClearView è stato in grado di bloccare tutti i tentativi di attacco da parte del gruppo, stoppando l'applicazione e non consentendo ai malintenzionati di sfruttare le vulnerabilità del software; solo in
sette attacchi su dieci è stato in grado di applicare delle patch e di risolvere i problemi o le vulnerabilità presenti nel binario.
I risultati appaiono interessanti, pur trattandosi ancora di un prototipo; senza dubbio, per poterne valutare la reale efficacia e utilità sarebbe opportuno estenderne il campo di applicazione, passando al test di una quantità maggiore di applicazioni.