Totale: 40 milioni . Tante erano, milione più milione meno, le caselle di posta esposte ad un attacco banale quanto efficace: in grado di duplicare ogni messaggio giunto in ciascuna casella infettata, in modo trasparente e pressoché indolore, ma non per questo meno pericoloso. Tutto a causa di un framework piuttosto comune, affetto da una vulnerabilità che si è rapidamente diffusa tra i provider di mezza Europa: segnalata dai due scopritori italiani all’azienda che lo produce, la falla è stata tappata in poche settimane.
Gli autori della scoperta sono Rosario Valotta e Matteo Carli , bug hunter per passione, già in passato artefici di scoperte simili: questa volta si parla di una doppia falla XSS ( Cross site scripting ) e CSRF ( Cross site request forgery ), che consentiva con un semplice clic di guadagnare l’accesso a tutta la corrispondenza della vittima. Una email appositamente creata spedita all’indirizzo bersaglio e il gioco era fatto: al malcapitato sarebbe bastato semplicemente aprirla, senza neppure dover cliccare alcunché, per ritrovarsi suo malgrado con tutta la sua corrispondenza esposta.
In pratica, nascosto nel codice – che Vallotta e Carli non hanno voluto divulgare – c’è un JavaScript opportunamente formulato per attivare all’insaputa dell’utente l’inoltro automatico della corrispondenza ad un’altra casella. Tutto quello che transita per l’inbox viene immediatamente girato in copia carbone (Cc) ad un altro account, scelto dall’attaccante: un’operazione del tutto trasparente all’utente, e difficile da scoprire visto che tipicamente questa opzione viene visualizzata al più durante le operazioni di prima configurazione dell’account e poi dimenticata.
Più nel dettaglio , nonostante in fase di progettazione dell’applicazione fossero state adottate delle misure cautelative, ad esempio separando il dominio della Webmail da quello in cui vengono eseguiti i codici per l’apertura e la lettura dei messaggi, tramite un secondo XSS scovato su uno dei due domini era possibile recuperare il token della sessione in corso. A questo punto diveniva possibile lanciare script dal server remoto dell’attaccante con gli stessi privilegi di quelli del servizio in uso: modificare le impostazioni di inoltro automatico è questione di una riga di codice o poco più. Volendo, spiega l’advisory, sarebbe possibile anche creare un worm con cui automatizzare la procedura aumentandone esponenzialmente l’effetto nefasto.
Il paradosso, ci racconta Carli, è che la diffusione dello stesso framework tra più provider aveva distribuito il bug tra molte piattaforme : “Software comune – spiega a Punto Informatico – significa che le funzionalità si assomigliano un po’ tutte: ma poiché la società che sviluppa Memova, Critical Path, è essenzialmente un system integrator, spesso il servizio viene personalizzato in base alle richieste. In alcuni casi, per scelte commerciali del cliente le opzioni di inoltro automatico non erano neppure proposte tra le opzioni di configurazione: eppure la vulnerabilità era presente lo stesso, il codice funzionava perfettamente e per l’utente non c’era modo di accorgersi del problema anche per caso”.
Verificata l’effettiva portata del problema, e visto il parco clienti di Critical Path, i due si sono rivolti direttamente all’azienda per segnalare il bug: “Abbiamo contattato l’azienda circa un mese fa, spiegando che avevamo delle informazioni interessanti e che ci premeva condividerle con un responsabile di security – prosegue Carli – Nel giro di due ore ci hanno ricontattato e abbiamo organizzato una conference call in giornata. Gli abbiamo mostrato i possibili vettori di attacco, gli abbiamo dato tutti gli elementi per rendersi conto delle dimensioni del problema”.
La risposta a questo atto di buona volontà è stata incoraggiante: in meno di tre settimane Critical Path ha creato una patch e l’ha distribuita ai suoi clienti, notificando tutto ai due bug hunter. “Volendo guadagnarci avremmo potuto chiedere qualcosa in cambio a Critical Path: ma in questo campo sei sempre sul filo del rasoio, rischi di passare per ricattatore – chiarisce Vallotta – Ci sono anche i marketplace dove vendere queste vulnerabilità zero day: la nostra, fatte opportune valutazioni sul numero di email in gioco, sul mercato nero valeva qualcosa come 100mila dollari. Ma crediamo che la responsibly disclosure sia la cosa più sicura e corretta da fare”.
Quello che conta, secondo Vallotta, è aver attirato l’attenzione su un problema : “Le Webmail si stanno sviluppando in un contesto sempre più ricco di funzioni: chi le programma cerca di spingere su nuove capacità, spingendosi sempre più avanti. Ora c’è l’HTML – conclude – e l’utente è chiaramente contento perché fruisce di una esperienza migliore, basti pensare a quello che sta facendo Google con Gmail: ma da un altro punto di vista questa ricchezza ti espone ad una serie di problematiche di sicurezza, e se si decide di veicolare l’HTML (e quindi qualsiasi codice come il JavaScript) in una Webmail, occorre progettare adeguatamente e di pari passo un filtro capace di bloccare questo tipo di attacchi”.
a cura di Luca Annunziata