Vai al contenuto

Cross Application Scripting

Da Wikipedia, l'enciclopedia libera.
Versione del 19 mar 2010 alle 04:27 di 82.53.162.70 (discussione) (inserimento di concetto CAS)

Il Cross Application scripting (CAS) è una vulnerabilità che affligge applicazioni desktop che impiegano un insufficiente controllo dell'input. Un CAS permette ad un attaccante di inserire codice al fine di modificare il contenuto di una applicazione desktop utilizzata. In questo modo si potranno sottrarre dati sensibili presenti nel sistema degli utenti. Gli attacchi alle vulnerabilità CAS hanno effetti dirompenti perche’ possono implicare la completa compromissione dei target indipendentemente da sistemi operativi e piattaforme.

Scoperta da Emanuele Gentili, e presentata insieme ad Emanuele Acri ed Alessandro Scoscia durante il Security Summit 2010 di Milano, questa nuova categoria di attacco e' risultata vincente su prodotti di note software house commerciali ed open source.


Concetto di Cross Application Scripting

Similmente alle interfacce web, i moderni framework per la realizzazione di applicazioni grafiche (in questo documento si fa riferimento nello specifico a GTK e QT, i più importanti frameworks multipiattaforma) permettono l'uso di tag all'interno di molti dei propri widgets. Ciò implica la possibilità di formattazione particolarmente raffinate per il testo contenuto negli oggetti di tipo testo e la capacità di rappresentazione e gestione di contenuti multimediali (immagini, audio e video) o interattivi (links).

E' naturale che il proliferare del numero di funzionalità, se non gestite in modo corretto ed adeguato, possa rendere possibili utilizzi indesiderati della tecnologia, come la manipolazione della GUI (Graphical User Interface). Esattamente lo stesso fenomeno che si realizza con l'uso di XSS in una pagina web.

E' proprio per questo motivo che abbiamo deciso di definire questo comportamento CAS (Cross Application Scripting). Tipicamente le applicazioni desktop ricevono quantità considerevoli di input e supportano un numero elevato di features, sicuramente maggiori di qualunque interfaccia web.

Ciò rende più complesso per lo sviluppatore il controllo che tutti i dati provenienti da fonti insicure vengano filtrati correttamente. Software vulnerabili a forme di Cross Application Scripting di base sono molti, incluse numerose applicazioni appartenenti a produttori noti.



Pubblicazione PDF Slides Video Presentazione