Per oltre dieci anni, vulnerabilità non rilevate hanno lasciato migliaia di app macOS e iOS suscettibili ad attacchi supply-chain. Hacker avrebbero potuto inserire codice malevolo, compromettendo la sicurezza di milioni o miliardi di utenti che le hanno installate, come riportato dai ricercatori nei giorni scorsi.
Gli attacchi supply-chain (o attacchi alla catena di fornitura) sono una strategia utilizzata dai cybercriminali per compromettere la sicurezza di un sistema attaccando un componente della catena di distribuzione. In pratica, anziché attaccare direttamente un bersaglio, gli hacker compromettono un fornitore di terze parti che fornisce software, servizi o hardware al bersaglio principale.
Quando il bersaglio principale utilizza o aggiorna i componenti compromessi, gli hacker possono infiltrarsi nel sistema e condurre attività malevole come il furto di dati, l’installazione di malware o altre azioni dannose. Questo tipo di attacco sfrutta la fiducia che le aziende ripongono nei loro fornitori, rendendolo particolarmente pericoloso e difficile da rilevare.
Le vulnerabilità, corrette solo lo scorso ottobre, risiedevano in un server “trunk” utilizzato per gestire CocoaPods, un repository per progetti open source Swift e Objective-C da cui dipendono circa 3 milioni di app macOS e iOS. Quando gli sviluppatori apportano modifiche a uno dei loro “pod” – il termine di CocoaPods per i singoli pacchetti di codice – le app dipendenti li incorporano automaticamente tramite aggiornamenti, senza alcuna interazione richiesta dagli utenti finali.
Vulnerabilità di iniezione di codice
I ricercatori di EVA Information Security, la società che ha scoperto la vulnerabilità, hanno spiegato:
Molte applicazioni possono accedere alle informazioni più sensibili degli utenti: dettagli della carta di credito, cartelle cliniche, materiali privati e altro ancora. Iniettare codice in queste applicazioni potrebbe permettere agli attaccanti di accedere a queste informazioni per quasi qualsiasi scopo malevolo immaginabile: ransomware, frode, ricatto, spionaggio industriale… Nel processo, potrebbe esporre le aziende a gravi responsabilità legali e rischi reputazionali.
Le tre vulnerabilità scoperte da EVA derivano da un meccanismo di verifica e-mail insicuro utilizzato per autenticare gli sviluppatori dei singoli pod. Lo sviluppatore inseriva l’indirizzo e-mail associato al proprio pod. Il server trunk rispondeva inviando un link all’indirizzo. Quando una persona cliccava sul link, otteneva l’accesso all’account.
In un caso, un attaccante poteva manipolare l’URL nel link per farlo puntare a un server sotto il proprio controllo. Il server accettava un XFH falsificato, un header HTTP utilizzato per identificare l’host target specificato in una richiesta HTTP. I ricercatori di EVA hanno scoperto che potevano utilizzare un XFH falsificato per costruire URL a loro scelta.