Ecco un Interessante Articolo purtroppo rimosso da iSpazio.
Dynamic+, sviluppatore di una famosa applicazione che permetteva di inviare SMS gratuiti con mittente personalizzato, ha scoperto una grava falla di sicurezza all’interno dell’applicazione SKY Guida TV, che permette di addebitare acquisti sulle Smart Card di altre persone, senza la minima autorizzazione da parte dell’ignaro utente!
Ecco quanto affermato da Dynamic+:
Quello che mi ha stupito è che, una volta installata la App, nelle impostazioni, chiedeva il numero della smart card e nessun user/password che invece sono necessari per controllare l’abbonamento tramite il sito Web.
Con questo numero, composto soltanto da 9 cifre significative e che probabilmente, escludendo una cifra di controllo, risulta anche incrementale, si possono acquistare eventi e sport, ma anche pianificare le registrazioni, utilizzando la Smart Card di altre persone, che si ritroverebbero un bell’addebito ingiustificato nella bolletta.
A questo punto, utilizzando l’applicazione, si potrebbe, “a mano”, provare le varie combinazioni di smart-card per arrivare ad un utente esistente, ma sarebbe un “lavoraccio” lungo e noioso. Ho quindi deciso di andare a fondo per verificare come funzionasse la cosa e.. sorpresa delle sorprese: l’algoritmo di comunicazione è veramente banale, tant’è che si potrebbe realizzare un software in pochi minuti, che si controlla centinaia di migliaia di smart-card ed addebita loro uno o più eventi casuali.
Il problema è che l’utente ignaro non potrà mai dimostrare di non aver acquistato un determinato evento PPV, proprio perchè non c’è una vera autenticazione, ritrovandosi così costretto a pagare nella prossima bolletta decine o centinaia di euro addebitati per scherzo. La cosa ancor più fastidiosa è che probabilmente se ne accorgerebbe solo in bolletta, chissà quanti giorni dopo.
Analizzando i pacchetti scambiati tra l’applicazione ed il server REST, ho avuto conferma che il traffico dati è in chiaro, senza crittografia SSL.
Vi illustro parte del protocollo, omettendo la chiave privata per generare la firma per prevenire abusi al servizio.
Per acquistare un evento l’applicazione chiama la seguente URL:
/tvguide/servlets/ppv sull’hostname iphone.ilvillage.it con verbo di chiamata POST,
ma la beffa è che si può richiamare (semplicemente da browser) anche con modalità GET.
Per finezza si usa un user-agent consono, che nel caso dell’iPhone, per la versione sopra citata è:
SkyTvGuide/1.2.1 CFNetwork/485.10.2 Darwin/10.3.1
Questi invece sono i parametri (in ordine) veri e propri del server REST:
- Non vi svelo ovviamente la chiave privata, ma vi garantisco che ricavarla è semplicissimo, quanto semplice è la chiave stessa!
Ovviamente per attivare la registrazione sul MySky, il procedimento è analogo. La chiave privata rimane la stessa: cambia solo la url del server REST e un paio di parametri, in quanto al posto dell’evento avremo il canale e l’orario preciso di inizio/fine.
Ricordiamo a tutti gli utenti che questo testo è stato redatto unicamente a scopi educativi. L’uso improprio di questo protocollo (anche per fare uno scherzo agli amici) presuppone un reato!
Aggiornamento “esclusivo” : Dopo aver contattato lo sviluppatore dell’applicazione, è stato immediatamente bloccata la possibilità di effettuare acquisti tramite l’applicazione ed il sito web collegato. Da questo momento in poi, nessuno potrà più utilizzare l’exploit descritto. L’emergenza è quindi rientrata, e probabilmente adesso non ci resta che attendere un aggiornamento dell’applicazione con l’integrazione di un nuovo metodo di login più sicuro.
Fonte iSpazio (ormai rimosso)