Technology Review - Published By MIT
Advertisement
N.1 GENNAIO-FEBBRAIO 2010 - Software
Per una rete più sicura
Un software di Microsoft clona le funzioni attive all’interno del computer di un utente per migliorare la sicurezza del sistema.
di Chistopher Mims |
Gli sviluppatori attuali non hanno problemi a creare applicazioni studiate appositamente per operare all’interno del browser. Ma tenere queste applicazioni al sicuro dagli hacker è un altro discorso. Per ovviare a questo problema, gli scienziati di Microsoft hanno scoperto un nuovo sistema per proteggere complesse applicazioni Web, clonando a tutti gli effetti il browser dell’utente e operandolo in remoto. Molte delle più recenti applicazioni Web suddividono il proprio codice di esecuzione tra il server e il cliente. Il problema è rilevare se il codice in funzione sul PC del cliente è stato compromesso in alcuna maniera. La nuova soluzione di Microsoft, conosciuta come Ripley, è stata annunciata di recente alla Computer and Communications Security Conference della Association for Computing Machinery, a Chicago.
Ripley si spinge oltre i precedenti tentativi di garantire l’integrità delle applicazioni Web. «Estende il concetto di protezione integrale ai suoi estremi logici», dichiara Adam Barth, un ricercatore della Università della California, a Berkeley, che si è specializzato nella sicurezza di applicazioni Web. Barth, che non ha partecipato al progetto, sostiene che «invece di verificare semplicemente se una richiesta è stata formulata dal sito Web corretto, Ripley si accerta che le azioni da parte dell’utente siano effettivamente consentite dall’interfaccia utente dell’applicazione». Ripley impedisce a un utente malevolo o a un hacker remoto di alterare i codici operativi presenti all’interno di un browser Web creando una copia esatta del contesto computazionale e mantenendola in funzione sul server. In seguito Ripley invia tutte le operazioni effettuate dall’utente, inclusi i click del mouse, le battute sulla tastiera e qualunque altro input all’interno di un «flusso di azioni» compresso dal cliente al server. Questo flusso viene lasciato operare all’interno dell’applicazione clonata sul server e il comportamento del clone viene confrontato con l’applicazione originale installata sul browser dell’utente. Qualora dovessero essere riscontrate delle discrepanze, Ripley disconnette l’utente.
«Non ci si può fidare di alcun cambiamento operato dal cliente», dice Ben Livshits, responsabile del gruppo che ha sviluppato il progetto Ripley presso Microsoft Research. «Dal punto di vista dello sviluppatore non è altro che il diavolo».
Ripley è invisibile agli occhi dell’utente e non influenza le funzioni normali di una applicazione Web. «Gli unici a doversi preoccupare di ciò che succede una volta effettuata una operazione sono gli utenti malintenzionati», spiega Livshits.
Una delle sfide che Livshits ed Emre Kiciman, uno dei suoi collaboratori presso Microsoft, hanno dovuto affrontare quando stavano programmando Ripley è stata la clonazione dell’intero contesto operativo di un cliente – l’applicazione Web e il software che lo gestisce – che fosse sufficientemente piccolo da essere funzionale all’interno di un server Web che deve gestire richieste da parte di centinaia di migliaia di operatori allo stesso tempo.
Sul server, dice Livshits, «se si dovesse eseguire una replica all’interno di un browser, si occuperebbero 50-60 megabyte per ciascuna applicazione». La soluzione formulata da Livshits e Kiciman è stata di eseguire un «browser senza testa», vale a dire un emulatore che simula esclusivamente le funzioni di un browser Web che sono essenziali per Ripley. Questa soluzione ha abbattuto il peso del browser e dell’applicazione clonati a poco più di un megabyte per ciascuna applicazione.
Rimpicciolendo la versione clonata dell’applicazione, Livshits e Kiciman, insieme ad altri colleghi della Cornell University, nello stato di New York, e dell’Indiam Institute of Technology, a Delhi, hanno ridotto i requisiti di prestazione da parte di Ripley. In un test di applicazioni sperimentali, tra cui un software per acquisti elettronici, vari giochi e un motore per blog, il ritardo alla risposta derivato dall’incremento delle richieste al CPU del server è stato in media di un millisecondo.
In alcuni casi, Ripley ha potenziato le prestazioni delle applicazioni Web, perché il clone all’interno del server è stato riscritto in .NET, un linguaggio di programmazione che è 10-100 volte più veloce del JavaScript operante all’interno del sistema del cliente. In questo modo, a volte, si consente a Ripley di prevedere quale sarà la prossima richiesta formulata da parte dell’applicazione prima ancora che questa sia stata formulata dal cliente, permettendogli quindi di inviare molto più rapidamente i dati in risposta. «A pensarci bene, si tratta di una magia», dice Livshits. «Il ritardo è scomparso».
Attualmente, gli sviluppatori interessati a utilizzare Ripley per proteggere le proprie applicazioni Web dovrebbero riconsiderare le loro idee sulla struttura delle applicazioni preferite in funzione dello stesso Ripley. Nonostante tutto, però, Livshits e Kiciman ritengono che Ripley contribuirebbe a democratizzare una parte essenziale della sicurezza nelle applicazioni Web, mettendola alla portata di tutti.
«Fino a ora credo che gli utenti abbiano affrontato questi problemi manualmente», sostiene Kiciman. «Ci si rivolge infine a esperti che elaborano una soluzione adeguata, ma che non vengono incontro all’esigenza dell’utente di introduzione di cambiamenti rapidi. Stiamo cercando di portare lo sviluppo delle piattaforme Web a un punto in cui chiunque possa trarre vantaggio dalle tecnologie che attualmente sono esclusivamente a disposizione degli esperti».
Barth, della Università della California, a Berkeley, nota come Ripley appartenga al filone di soluzioni che proteggono l’integrità del codice di un cliente assicurandosi che nessuna azione non autorizzata venga compiuta. «Ritengo che Ripley sia più un esperimento che altro: Cosa succederebbe se il server convalidasse ogni azione?», si chiede Barth. «I dati suggeriscono che la sicurezza trarrebbe maggior vantaggio se convalidassimo più operazioni di quante non ne vengano convalidate oggi».
Special News
Bando di concorso:


Advertisement


Commenti


Ultimo NUmero
Abbonati alla versione Italiana di Technology Review >
MIT e ancora MIT
di Gian Piero Jacobelli


FACEBOOK


Iscriviti alla newsletter
TRASPORTI
BIO
ENERGIA
INFO


Advertisement


© 2010 Technology Review. All Rights Reserved.