Macromedia Flash: occhio al filesystem!

In computer security, il concetto di “sandbox” viene utilizzato per indicare un meccanismo di sicurezza che consente di separare e isolare diversi programmi in esecuzione. Questo al fine di testare ed eseguire codice potenzialmente dannoso, non sicuro e/o fornite da terze parti non fidate.

Adobe Flash incorpora questo concetto tra i suoi meccanismi base di sicurezza per consentire l’accesso solo a determinate tipologie di file locali, tra questi ovviamente i cookies Flash.
Comunemente quindi tutti gli altri file locali della macchina dell’utente sono off-limits, in modo da prevenire il furto di dati da parte di applet Flash malevoli.

Billy Rios, ricercatore di sicurezza presso Google, ha dimostrato come questo modello di sicurezza e le restrizioni imposte in Flash possa essere bypassato in modo da ottenere libero accesso a file locali.

Il “trucco” della vulnerabilità sfrutta la funzione “getURL()” impiegata da Flash per ottenere l’accesso a file remoti.
Una versione dummy dell’attacco utilizzerebbe la funzione getURL usando “file://” per puntare alle risorse del file system locale, tuttavia Adobe ha blacklistato alcuni protocol-handler.

Il blocco imposto non è tuttavia sufficiente e consente di impiegare il protocol-handler “mhtml“, che funziona sulle comuni piattaforme Windows e non è appunto blacklistato. Nessun avviso o messaggio di conferma viene mostrato all’utente in questo caso.

FONTE:
Flash Local-with-filesystem Sandbox Bypass, by SANS Technology Institute

APPROFONDIMENTI:
Bypassing Flash’s local-with-filesystem Sandbox, sul blog di Billy (BK) Rios
Flash Player Security Basics
Security Domains, Application Domains, and More in ActionScript 3.0