😱 Il caso UBER: quando i bug bounty non vanno come previsto

Uber suffered two major security breaches. In 2016, hackers stole data on 57 million users and 600,000 driver licenses, then the CSO paid them $100,000 while disguising it as a bug bounty reward and hiding the breach from regulators. In 2022, an 18-year-old exploited MFA fatigue to access Uber's internal systems.
Chapters
A novembre 2016, Uber, la società di trasporto passeggeri che ha fatto concorrenza ai taxi, riceve una mail. Il testo è molto breve e dice solo: "Ciao, ho trovato una vulnerabilità critica nei vostri sistemi e ho in mano tutto il vostro database." Questa mail, apparentemente proveniente nell'ambito di programmi di bug bounty, ma soprattutto il modo in cui verrà gestita, diventerà uno scandalo nel mondo della cyber security, tanto da rendere Uber quasi una barzelletta. E non era ancora finita, perché nel 2022 un nuovo scandalo colpì la società, quando un hacker di appena 18 anni riuscì a entrare in tutti i suoi sistemi, compresi quelli di HackerOne, la nota piattaforma di gestione dei bug bounty. Insomma, questi bug bounty, che sono uno strumento potentissimo in mano alle aziende perché permettono loro di trovare vulnerabilità nei loro sistemi prima degli hacker, a Uber hanno portato solo problemi. Ma per capire bene cosa è successo, dobbiamo partire dall'inizio. Ciao a tutti e benvenuti in questo nuovo video. Nell'ultimo abbiamo parlato dei bug bounty, che sono le competizioni che alcune aziende organizzano e in cui ricompensano gli hacker che trovano vulnerabilità. Come accennavo, sono uno strumento utilissimo in mano alle società perché permettono di risolvere le falle di sicurezza prima che siano sfruttate dai malintenzionati. La società Uber, invece, invece è riuscita a prendere questo strumento e a renderlo uno scandalo, non una ma bensì due volte. Ma andiamo con ordine. La nostra storia inizia nel 2016. La Uber ha da poco assunto un nuovo CSO, cioè un Chief Security Officer, che in un'azienda rappresenta la figura più importante per tutto quello che riguarda la sicurezza e l'applicazione di procedure e policy. Il nuovo CSO, o CSO che dir si voglia, è Joe Sullivan, un esperto di Cyber Security. Laureato in legge che aveva lavorato anche per lo Stato come procuratore per il distretto della California. In seguito aveva lavorato come legale e CSO anche per eBay e Facebook, finché nel 2015 Uber non l'aveva cercato per assumerlo come primo CSO dell'azienda, che non aveva mai avuto qualcuno dedicato specificamente alla sicurezza. È proprio a Joe Sullivan che arriva quella famosa email di cui ho parlato nell'introduzione. Con cui qualcuno che si firma John Dogs come il più banale nome falso americano, l'equivalente del nostro Mario Rossi per intenderci, gli dice: "Ciao Joe, ho trovato una vulnerabilità molto grave nei sistemi di Uber e sono riuscito a scaricare tutto il vostro database insieme a una serie di altre cose." Nella mail viene anche chiaramente chiesto il pagamento di un riscatto, ricevuto il quale l'hacker avrebbe cancellato i dati in suo possesso. Il modo in cui gli hacker, che in realtà erano due, ovvero Brandon Glover della Florida e Vasile Mereacre, canadese, avevano messo le mani sul database era di una banalità imbarazzante per un'azienda come Uber. I due stavano facendo un giro su GitHub, la piattaforma dove gli sviluppatori condividono il codice fra loro e lo usano per collaborare. È molto usata per condividere il codice con la community, quindi con altri sviluppatori, ma è usata anche in modo privato dentro alle aziende per permettere a più programmatori di lavorare insieme sul codice sapendo chi ha fatto cosa, quando vengono fatte delle modifiche e così via. Su GitHub Brandon e Vasile trovano accidentalmente un progetto contenente tutte le credenziali di accesso Amazon Web Services di Uber, in chiaro, scritte proprio tipo username gino.brambilla@uber.com, password nome del mio cane 123. I due pensano: ma dai, vuoi che queste credenziali siano ancora valide? Mica le lasciavano così aperte su GitHub, cioè stiamo parlando delle credenziali di AWS. Che è l'ambiente di sviluppo di tutto quello che fa Uber, non le lascerebbero mai in giro, saranno vecchie. Però vabbè, proviamole. E le credenziali incredibilmente funzionano e Brandon e Vasile riescono ad accedere a uno spazio di archiviazione cloud dove Uber conservava oltre 200 file contenenti nomi, email e numeri di telefono di 57 milioni di utenti, più 600.000 patenti di guida degli autisti Uber. Loro ovviamente scaricano tutto e poi scrivono a Joe Sullivan chiedendo un riscatto. Alla mail allegano anche delle prove di quello che stanno dicendo, cioè dimostrano di avere effettivamente messo le mani sul database, perché sanno che altrimenti nessuno gli avrebbe creduto. Joe Sullivan, ricevuta quella mail, non sa che pesci prendere. Le strade sono due: o coinvolgere le autorità, avvisare i clienti, affrontare il problema insomma, oppure pagare e far finta di niente sperando che la cosa finisca nel dimenticatoio. Il CSO di Uber, insieme a un team composto proprio per gestire questo problema, sceglie la seconda soluzione, ma con un twist. Decidono di far finta che questa vulnerabilità sia stata trovata nell'ambito di un normale bug bounty, come se fosse stata l'azienda a chiedere agli hacker di trovare questa falla, e quindi facendo passare il pagamento del riscatto come il versamento della ricompensa dovuta. Uber infatti aveva attivato già da tempo un programma di bug bounty attraverso HackerOne, una delle piattaforme più famose per questo genere di competizione e Sullivan decide di usare quella piattaforma per far passare come legittimo sia il download del database da parte degli hacker sia il pagamento del riscatto. Risponde quindi a Brandon e Vasile chiedendo loro cortesemente di registrare la loro segnalazione su HackerOne come se fosse una normale scoperta di vulnerabilità e loro stessero chiedendo il pagamento della ricompensa. Il problema è che i programmi di bug bounty di Uber hanno come ricompensa massima $10.000. Quando il team di Sullivan propone questa cifra agli hacker, per rendere il tutto più credibile, loro rifiutano e dicono di volere almeno una ricompensa a 6 cifre. La squadra di Uber, dopo averci pensato su, decide di autorizzare il pagamento del minimo richiesto dagli hacker, cioè $100.000, con una condizione: i 2 hacker dovevano firmare un accordo di non divulgazione impegnandosi a cancellare i dati rubati e a non rivelare a nessuno l'accaduto. I contratti redatti da Sullivan insieme a un legale di Uber contenevano dichiarazioni false, visto che gli hacker dovevano dichiarare di non aver ottenuto o conservato alcun dato durante l'intrusione, come se appunto avessero semplicemente trovato una vulnerabilità e avessero deciso di segnalarla all'azienda. Era una bugia bella pesante, visto che Brandon e Vasile avevano scaricato i dati di 57 milioni di utenti, ed era anche poco credibile vista la cifra erogata dalla società. Un importo corrispondente a 10 volte la loro ricompensa massima. I due hacker chiaramente non si fanno problemi a mentire e firmano, inizialmente con gli pseudonimi John Does e Scott Wilson, per non rivelare le loro vere identità. Il team di Sullivan accetta il secondo nome, quindi Scott Wilson, ma il primo è palese che sia uno pseudonimo, quindi viene chiesto agli hacker di usare il nome vero. Cosa che loro chiaramente non fanno, fornendo come nuovo pseudonimo William Hoffman. L'uso dei nomi falsi però impedisce a Brandon e Vasile di riscuotere la ricompensa, perché HackerOne e Coinbase, la piattaforma che avevano scelto per farsi pagare, vista la cifra chiedono tutta una serie di dati fiscali che loro non possono fornire senza rivelare le loro vere identità. Inizia quindi un nuovo scambio di mail con Uber in cui i due hacker ormai innervositi chiedono il pagamento diretto. Che finalmente arriva poco prima di Natale 2016. Insieme al pagamento però arriva anche una mail da parte di Matt Henley, un membro del team di sicurezza di Uber, con scritta una cosa tipo: buongiorno Brandon e Vasile, spero che vi siano arrivati i soldi. Grazie per l'aiuto che ci avete dato, è la dimostrazione che i programmi di bug bounty funzionano davvero, e spero anche che la ricompensa vi abbia fatto passare un buon periodo natalizio. Detto questo, in questi giorni siamo in Florida, sappiamo che tu Brandon vivi lì, quindi se gentilmente viene a firmare il nuovo accordo di non divulgazione con il tuo vero nome, ci fa un favore. Mentre per quanto riguarda te, Vasile, troviamo il modo di venire in Canada, così puoi firmarlo anche tu. I due hacker ovviamente sono esterrefatti, perché dal nulla, a quanto pare, il team di Uber era riuscito a risalire alle loro vere identità e a dove vivevano. E anche se il tono della mail sembrava abbastanza cordiale, nessuno garantiva loro che la società non avrebbe poi deciso di fargli causa. A quanto pareva, però, fortunatamente per loro, la Uber voleva voleva solo chiudere quanto prima questa storia e nascondere tutto sotto il tappeto. Sullivan aveva proprio detto al team che non doveva uscire nulla di tutta la faccenda. Ma se noi oggi siamo qui a parlarne, vuol dire che la faccenda in qualche modo è venuta fuori. Ed è qui che la storia prende una piega quasi grottesca. 10 giorni prima che i due hacker violassero i sistemi di Uber, Sullivan aveva testimoniato sotto giuramento davanti alla FTC. FTC, la Federal Trade Commission, che stava facendo un'indagine su Uber per un precedente data breach del 2014. Sullivan, che era stato assunto proprio per far fronte a questo genere di cose, aveva rassicurato l'autorità sui progressi fatti dall'azienda. Aveva parlato delle nuove misure, dei sistemi rafforzati, della maggiore attenzione alla protezione dei dati. Quando pochi giorni dopo viene fuori questa nuova violazione, che fra l'altro a quanto pare sfruttava esattamente la stessa falla del 2014, Sullivan avrebbe avuto informare l'FTC per correttezza, ma sceglie, come sappiamo, di non farlo, continuando a insabbiare la cosa, e porta avanti appunto tutta la fase di negoziazione con gli hacker nella speranza che poi loro cancellassero il database come promesso. La situazione cambia nel 2017 quando il CEO di Uber, Travis Kalanick, viene accusato di truffa, spionaggio, molestie sessuali e chi più ne ha più ne metta, ed è costretto quindi a dimettersi. Al suo posto viene assunto come nuovo amministratore delegato Dara Khosrowshahi, noto per il suo atteggiamento integerrimo sul posto di lavoro, cosa di cui Uber aveva disperato bisogno. Il nuovo CEO inizia subito ad analizzare l'azienda, i programmi attivi, le scelte fatte anche in precedenza e si imbatte in questo strano episodio di bug bounty in cui una vulnerabilità era stata pagata ben 100.000 dollari al posto dei soliti 10.000. Khosrowshahi a quel punto chiede delucidazioni a Sullivan che inizialmente cerca di mantenere la linea iniziale, mediale. Era un normale programma di bug bounty, è stata trovata questa falla, è stata versata la ricompensa richiesta e via dicendo. Il CEO però capisce subito che qualcosa non va, perché fondamentalmente il team di Sullivan non è in grado di spiegare la differenza economica o il fatto che ci siano due versioni di accordi di riservatezza firmati dagli hacker con nomi diversi. Ben presto capisce che c'è stato un insabbiamento e fa l'unica cosa sensata: rende pubblica la violazione, annuncia il licenziamento immediato dei dirigenti coinvolti, tra cui Joe Sullivan, e fa causa ai due hacker. Ovviamente, non sto neanche a dirvelo, le conseguenze legali furono gravissime, per quanto giuste, per tutte le persone coinvolte. La Uber in primis si trovò a dover gestire la violazione delle norme sulla notifica dei data breach, perché avrebbe dovuto informare utenti e autorità della fuga di dati anziché far finta di niente. Alla fine se la cavò con una multa da 148 milioni di dollari, leggermente mitigata dal fatto che il nuovo CEO aveva deciso spontaneamente di denunciare la cosa anziché che continuare sulla strada dell'insabbiamento, che forse avrebbe anche potuto funzionare visto che era già passato un anno. Joe Sullivan fu incriminato con l'accusa di aver ostacolato la giustizia e nascosto il furto di dati. Nel 2022 è arrivata la sentenza che lo ha dichiarato colpevole di ostruzione delle indagini della FTC e di aver deliberatamente celato informazioni su un reato di cui era a conoscenza, cioè appunto la violazione informatica ai danni di Uber. Venne condannato a 3 anni di libertà vigilata e a una multa di $50.000. I due hacker invece nel 2019 si sono dichiarati colpevoli di associazione a fini di crimine informatico e tentata estorsione ai danni di Uber. Tra l'altro, nel frattempo avevano violato e ricattato anche altre aziende come Lynda.com, che è un sito affiliato a LinkedIn, usando sempre dei dati ottenuti con metodi simili. A quanto pare, dalle poche informazioni che ho trovato in rete, nessuno dei due ha ricevuto una condanna alla reclusione. Sono stati entrambi condannati a qualche mese di libertà vigilata e poco altro. Uber Finito il calvario di questo scandalo, pensava di poter tirare un sospiro di sollievo e recuperare poco a poco la fiducia dei suoi utenti, applicando le lezioni imparate. E invece, pochi anni dopo, si trova ad affrontare un altro data breach in cui di nuovo centrava la piattaforma HackerOne. Il 15 settembre 2022 ai dipendenti di Uber arriva un messaggio su Slack, la piattaforma che usano per comunicare fra di loro. Nel messaggio c'è scritto: "Annuncio che sono un hacker e Uber ha subito un data breach." Il messaggio elencava anche tutta una serie di sistemi compromessi. Per dimostrare che aveva effettivamente messo le mani sui dati, l'hacker fa anche una battuta scrivendo: "Uber paga troppo poco i suoi autisti." In un primo momento i dipendenti pensano che si tratti di uno scherzo, tanto che alcuni rispondono con dei meme, oppure pensano che si tratti di un'esercitazione di sicurezza. Ma ben presto diventa chiaro che l'hacker non sta mentendo, è dentro sistemi e sta addirittura modificando le impostazioni proprio per dimostrare fino a che punto è coinvolto. Uber questa volta reagisce nel modo corretto, disattivando immediatamente Slack e gli altri sistemi di comunicazione interna, attivando i protocolli di emergenza e contattando le autorità, che non ci mettono molto a capire che cosa è successo. L'attaccante, che poi si scoprirà essere un ragazzo di appena 18 anni, era riuscito in qualche modo a mettere le mani sulle credenziali di un collaboratore esterno di Uber, probabilmente comprandole sul dark web, dove spesso vengono vendute le credenziali rubate durante gli attacchi informatici. Per entrare nei sistemi di Uber con quelle credenziali però serviva l'autenticazione a due fattori. Una volta inserite le credenziali, l'utente doveva anche approvare una notifica sul telefono. L'hacker a quel punto aveva usato una tecnica chiamata MFA fatigue, cioè aveva bombardato questo consulente esterno con decine di richieste di autenticazione consecutive, una dopo l'altra, finché lui per sbaglio non aveva approvato una delle richieste, permettendo all'hacker di entrare nei sistemi di Uber. Una volta entrato, il diciottenne aveva trovato quello che cercava quasi subito. Nella rete di Uber c'erano tantissime cartelle condivise che contenevano documenti con le credenziali amministrative in chiaro, tutte le password e le informazioni su come accedere a determinati servizi, fra cui anche HackerOne, la stessa piattaforma che 6 anni prima era stata usata per insabbiare una violazione. E voi potreste dire: vabbè, però fra tutte le cose su cui l'hacker aveva messo le mani, il profilo Uber di HackerOne era la meno, giusto? Da un lato è vero, perché non c'erano dati degli utenti dentro la piattaforma HackerOne. Dall'altra però dovete considerare che avere accesso al profilo Uber di HackerOne significava poter leggere tutti i report di tutte le vulnerabilità scoperte nell'ambito dei programmi di bug bounty, molte delle quali non erano state ancora risolte. HackerOne se ne accorse quasi subito, anche perché l'hacker, per dimostrare di aver messo mettere le mani anche su questa porzione di dati, aveva lasciato dei commenti su quasi ogni segnalazione ricevuta dall'azienda. La piattaforma quindi disabilitò subito l'account di Uber, anche se un po' inutilmente visto che ormai i report erano stati scaricati. Dal canto suo l'azienda si mise subito al lavoro per correggere tutte le vulnerabilità che erano state segnalate nel tempo, visto che le probabilità che venissero venduti i report e quindi sfruttate le vulnerabilità erano aumentate considerevolmente. Il lato positivo è che A quanto sembra, al di là di queste credenziali e dei report di vulnerabilità, pare che l'hacker non sia riuscito a mettere le mani su dati personali di autisti e clienti di Uber. Il servizio non è mai stato interrotto perché, a dispetto di quanto dichiarato dall'attaccante, non sono risultate prove del suo accesso agli ambienti di sviluppo del codice o ai database, che dopo la violazione del 2016 erano stati protetti molto meglio. Anche se di falle, come abbiamo visto, ce n'erano ancora diverse. Le informazioni compromesse, dunque, in questo caso In questo caso riguardarono principalmente le conversazioni interne dei dipendenti su Slack, i dati amministrativi e i report di vulnerabilità su HackerOne. Ma chi c'era dietro questo attacco? L'hacker, che si firmava Teapot, rilasciò un'intervista anonima a un giornalista del New York Times subito dopo l'attacco, dicendo di aver agito perché Uber aveva dei sistemi di sicurezza deboli e lui voleva dimostrarlo. Uber ha attribuito la responsabilità a Lapsus$, un collettivo di hacker che in quegli anni aveva colpito una serie di società, tra cui Microsoft, Cisco, Samsung, Nvidia, eccetera. Il modus operandi era effettivamente molto simile, perché questo gruppo metteva prima le mani sulle credenziali di qualcuno e poi lasciava messaggi ironici per dimostrare di essere dentro ai sistemi. La conferma è arrivata nel giro di poco tempo, quando lo stesso hacker, Teapot, ha rivendicato un altro attacco, quello a Rockstar Games, che aveva portato al furto e alla pubblicazione online di video e codice sorgente di GTA 6, uno dei videogiochi più attesi della storia. Ne approfitto per fare un accorato appello: Rockstar Games, per favore, fai uscire 'sto cazzo di GTA 6, ormai quando ci giocherò avrò l'artrite alle mani. Comunque, grazie agli indizi che l'hacker inevitabilmente si era lasciato dietro in questi attacchi, le forze dell'ordine sono riuscite a individuare chi c'era dietro allo pseudonimo Teapot, ovvero Arion Kurtai. Kurtai, una delle principali menti del gruppo Lapsus$. Kurtai è stato incriminato e ritenuto responsabile di tutti gli attacchi rivendicati dal gruppo. Visto che la perizia svolta dal tribunale lo aveva ritenuto incapace di intendere e volere, è stato poi condannato alla detenzione a tempo indeterminato in un ospedale psichiatrico di massima sicurezza. Da un lato chiaramente capisco il punto, dall'altro mi sembra assurdo che il diciottenne ritenuto incapace di intendere e volere venga internato a tempo indeterminato in un istituto di massima sicurezza e gli altri due hacker se la siano cavata con un buffetto sulla testa e la frase "non fatelo mai più, eh". Comunque quello che vediamo almeno è che Uber dopo il primo attacco aveva imparato quantomeno una lezione, ovvero che non ha senso insabbiare un attacco. Quando si viene colpiti, a prescindere dagli errori che possono essere stati fatti, bisogna avvisare gli utenti avvertiti e coinvolgere le autorità e non fare finta di niente. Bene, come sempre spero che il video di oggi vi sia piaciuto. Fatemi sapere nei commenti cosa ne pensate e se conoscevate già questa storia. Noi ci vediamo al prossimo video che vi anticipo già sarà il primo di una serie dedicata all'intelligenza artificiale. Vedremo quindi che cos'è, quali sono i rischi che si porta dietro, come viene usata dagli attaccanti per svolgere gli attacchi, e parleremo anche del nuovo regolamento sull'intelligenza artificiale Legislativa Digitale, l'AI Act, visto che il 2026 è l'anno in cui ufficialmente tutte le supervisioni entrano in vigore. A presto!










