IoS è una visione
del futuro di Internet in cui le informazioni, i dati e le applicazioni
software - e gli strumenti per svilupparli - sono sempre accessibili,
che siano memorizzati in locale sul proprio dispositivo, nel cloud o che
arrivino in tempo reale tramite sensori. Mentre le applicazioni
software tradizionali sono progettate principalmente per essere
utilizzate in modo isolato, IoS abbatte le barriere, riducendo così i
costi e stimolando l'innovazione.
Sulla scia del successo del cloud computing, le applicazioni IoS
funzionano unendo servizi che sono distribuiti sulla rete, aggregati e
consumati in fase di esecuzione in maniera flessibile e guidata dalla
domanda. Questo nuovo approccio al software renderà più facile lo
sviluppo di applicazioni e servizi, in modo da poter offrire servizi
nuovi e innovativi, che oggi non sono possibli. Probabilmente darà un
enorme contributo alla strategia dell'UE di rendere il settore del
software europeo più competitivo.
I servizi IoS possono essere progettati e implementati dai
produttori, distribuiti dai fornitori, aggregati da intermediari e
utilizzati dai consumatori. Chiunque voglia sviluppare applicazioni, può
utilizzare le risorse disponibili nell'Internet dei servizi per farlo,
con un piccolo investimento iniziale e la possibilità di costruire sugli
sforzi fatti da altre persone.
Per molti aspetti IoS risolve i problemi di interoperabilità e di
inefficienza che affliggono i sistemi software tradizionali, ma può
anche creare nuove vulnerabilità. Come, ad esempio, si può essere sicuri
che il servizio che si sta utilizzando sia privo di errori? O che le
diverse componenti di diversi sviluppatori che si stanno aggregando in
una nuova applicazione siano state tutte testate per le vulnerabilità di
sicurezza?
"Anche se è sempre difficile quantificare esattamente l'impatto
dell'assenza di qualcosa, è chiaro che la mancanza di efficienti
tecnologie di convalida della sicurezza abbia rallentato notevolmente
l'adozione diffusa dei servizi web da parte dei cittadini, molti dei
quali ancora non si fidano di Internet in generale, né dell'Internet dei
servizi in particolare", avverte il professor Luca Viganò
dell'Università degli Studi di Verona, in Italia. "Non basta quindi
sviluppare buoni servizi basati sul web, né sviluppare servizi che si
siano dimostrati sicuri o che siano stati convalidati, ma occorre anche
un modo per convincere i cittadini che siano effettivamente sicuri e
siano stati accuratamente testati. L'esistenza e l'uso di strumenti
automatici capaci di porre il loro "sigillo di garanzia" sui servizi di
nuova concezione, o sui servizi che sono stati scaricati dal web, potrà
certamente garantire una maggiore fiducia".
Il prof. Viganò insieme a un team di ricercatori di cinque paesi
europei stanno mettendo gli ultimi ritocchi a strumenti per fornire
proprio questo tanto richiesto "sigillo di garanzia" sui servizi web. Il
loro lavoro, svolto nell'ambito del progetto SPACIOS ("Secure provision
and consumption in the Internet of Services") e sostenuto dall'UE con
3,6 milioni di euro di finanziamenti per la ricerca della Commissione
europea, combina nuove tecnologie d'avanguardia per i test di sicurezza
di penetrazione, test di sicurezza orientati alle vulnerabilità, test di
sicurezza basati sulle mutazioni, apprendimento automatico per
l'nferenza del modello, controllo del modello e tecniche di estrazione
del codice.
Uno strumento unico per verificare la sicurezza dei servizi web
"È importante notare che esistono tecnologie d'avanguardia per la
convalida della sicurezza, ma esse sono in genere utilizzate in
isolamento e in fase di produzione, mentre abbiamo bisogno di strumenti
che possono essere utilizzati per convalidare i servizi in fase di
esecuzione", spiega il prof. Viganò. "Esistono una serie di altri
strumenti che si sono rivelati estremamente utili nelle prove di
sicurezza, ma nessuno, a nostra conoscenza, riesce a combinare tutte
queste tecniche in un unico strumento, utilizzando un unico linguaggio
formale in ingresso e in uscita. Riteniamo che lo strumento SPACIOS
possieda capacità che nessun altro strumento presenta".
In termini grossolanamente semplificati, un utente inizia con una
specificazione formale del sistema da testare in cui le sue proprietà
vengono specificate come formule logiche. Se non esiste una
specificazione formale, lo strumento SPACIOS può generare
automaticamente un modello dal codice sorgente. Il modello viene poi
testato per le vulnerabilità utilizzando un'innovativa piattaforma di
controllo del modello chiamata AVANTSSAR (che il prof. Viganò ha
contribuito a sviluppare in un progetto precedente).
Se viene individuato un attacco, il controllore del modello emette
una traccia di attacco, che può essere utilizzata per generare casi di
test per il sistema. Se non viene trovato nessun attacco, il modello
viene mutato per creare vulnerabilità standard nelle specifiche e le
prove vengono ripetute. Le eventuali tracce di attacco scoperte vengono
utilizzate per generare casi di test, che vengono poi di nuovo
confrontati con il sistema. Il processo viene ripetuto fino a quando
sono stati controllati tutti i parametri e le potenziali vulnerabilità
di sicurezza.
"Va notato che le diverse componenti dello strumento possono essere
usate separatamente, esse sono integrate in una piattaforma Eclipse, che
permette all'utente di scegliere cosa esattamente vuole fare", dice il
coordinatore di SPACIOS.
Il team ha testato lo strumento in diversi scenari applicativi
rilevanti per settore con applicazioni reali. Ad esempio, ha testato le
vulnerabilità di sicurezza in SAML 2.0 Web Single Sign-on (uno standard
emergente che consente a business partner online di autenticare i propri
utenti una volta all'interno di un ambiente di identità federata) e in
OpenID (un protocollo Single Sign-On aperto basato su web browser e
orientato all'utente, che fornisce un modo per autenticare un utente
chiedendo di dimostrare che controlla un identificatore univoco). Tra
gli altri scenari, il team ha anche applicato lo strumento SPACIOS a una
serie di applicazioni web open-source, tra cui una libreria online, un
sito per annunci e una directory per dipendenti. Queste applicazioni web
sono state precedentemente utilizzate come obiettivi sia per l'analisi
del codice sorgente sia per le verifiche di vulnerabilità.
Siemens e SAP - partner industriali tedeschi coinvolti nel progetto
SPACIOS - hanno anche presentato altri tre scenari applicativi per
validare lo strumento: Pervasive Retail (che contiene una nuova
piattaforma di gestione di marketing on-demand per creare interattività
tra i consumatori, rivenditori e fornitori di prodotti attraverso i
telefoni cellulari), Infobase Document Repository (che implementa un
sistema di gestione documenti che permette la gestione e condivisione
sicura di documenti o file di dati utilizzando i browser web) ed eHealth
(basato su sistemi di mash-up che da un lato creano e utilizzano
cartelle cliniche elettroniche e dall'altro aggregano altre
funzionalità, come ad esempio supporto alle decisioni per il medico,
analisi delle immagini e sistemi di fatturazione).
Data la vastità dell'Internet dei servizi e la sua probabile rapida
espansione nei prossimi anni, i potenziali scenari di applicazione dello
strumento SPACIOS sono praticamente infiniti. Se distribuito
ampiamente, potrebbe fornire agli utenti una migliore sicurezza e
ridurre notevolmente i costi dello sviluppo di servizi web.
"L'approccio SPACIOS consentirà un'agevole integrazione nel ciclo di
sviluppo dei servizi, dall'analisi in fase di progettazione alla
verifica in fase di esecuzione, permettendo così agli sviluppatori di
ridurre notevolmente i costi. È difficile fare una stima quantitativa,
ma speriamo di riuscire a fornire dei parametri non appena
l'integrazione verrà assunta dai partner industriali del progetto",
spiega il prof. Viganò.
Benché i partner non abbiano piani immediati per la
commercializzazione diretta dello strumento, nell'industria viene già
usato da Siemens, SAP e altri, dice il prof. Viganò. I partner del
progetto stanno anche discutendo la possibilità di un progetto di
follow-up per migliorare ulteriormente la tecnologia di verifica di
guasti e vulnerabilità.
SPACIOS ha ricevuto finanziamenti per la ricerca nell'ambito del Settimo programma quadro ( 7° PQ) dell'Unione europea.
Collegamento al progetto su CORDIS:
- 7° PQ su CORDIS
- Scheda informativa del progetto SPACIOS su CORDIS
Collegamento al sito web del progetto:
- Sito web del progetto "Secure provision and consumption in the Internet of Services"
Altri collegamenti:
- Sito web dell'Agenda digitale della Commissione europea