Milioni di app per iPhone e Mac sono state a rischio sicurezza. Per dieci anni

4 months ago 89

Capita spesso di riportare di falle o di bug che comportano rischi per la sicurezza degli utenti di vari sistemi operativi, ma questo potrebbe essere uno dei più gravi per quanto riguarda il mondo Apple (a proposito, sapete la differenza tra antivirus e antimalware?).

Un ricerca della società di sicurezza EVA Information Security, un gruppo che oggi collabora con aziende nel settore finanziario, bancario, dell'e-commerce, assicurativo, dei giochi online e di molti altri, ha infatti scoperto che una vulnerabilità del repository CocoaPods ha esposto per dieci anni circa 3 milioni di app iOS e macOS e un potenziale attacco. 

La vulnerabilità

Per chi non lo sapesse, CocoaPods è un repository open source utilizzato da molte app sviluppate per le piattaforme Apple. In pratica consente agli sviluppatori di app di integrare codice di terze parti nelle loro app attraverso librerie open source. Quando una libreria (chiamata in gergo pod) viene aggiornata, le app che la utilizzano vengono automaticamente aggiornate senza nessuna interazione da parte dello sviluppatore.

Un esempio di app che utilizzano CocoaPod è Signal, una popolarissima app di messaggistica che fa del suo cavallo di battaglia la privacy e la sicurezza, ma sono circa 3 milioni le app per iOS, macOS, watchOS e tvOS che le usano.

Ora gli esperti di EVA Information Security hanno scoperto tre vulnerabilità in CocoaPods, risalenti a 10 anni fa, legate a un meccanismo di verifica email non sicuro utilizzato per autenticare gli sviluppatori di singoli pod.

Il meccanismo funziona così: per accedere al pod, uno sviluppatore doveva inserire l'indirizzo email associato al suo pod, poi il server risponde inviando un link all'indirizzo. Quando lo sviluppatore clicca sul link, ottiene l'accesso all'account.

In un caso (CVE-2024-38367), un utente malintenzionato avrebbe potuto manipolare l'URL nel link per farlo puntare a un server sotto il controllo dell'attaccante.

In un altro esempio (CVE-2024-38368) eventuali malintenzionati potevano prendere il controllo di pod abbandonati dai loro sviluppatori, ma che continuano a essere utilizzati dalle app.

I malintenzionati potevano accedere ai pod, senza dover provare di averne diritto.

Nel terzo caso (CVE-2024-38366), eventuali aggressori potevano eseguire codice malevolo direttamente sul server che invia il link di accesso agli sviluppatori.

"Essere in grado di eseguire comandi di shell arbitrari sul server ha dato a un possibile utente malintenzionato la possibilità di leggere le variabili di ambiente, che potrebbero essere utilizzate per scrivere nel repository CocoaPods/Specs e leggere il database del server", ha spiegato il manutentore di CocoaPods Orta Therox.

"Essere in grado di ingannare le persone facendo clic su un link che le porterebbe a un sito di terze parti potrebbe essere usato per rubare le loro chiavi di sessione. Non posso garantire che nessuno di questi sia accaduto, e preferirei essere al sicuro", ha continuato.

Therox ha affermato che lo scenario peggiore è un utente malintenzionato che ha utilizzato la tecnica per ottenere chiavi di sessione che danno accesso agli account degli sviluppatori di app e collegano gli utenti autenticati ai pod.

I rischi per gli utenti

Chiariamolo subito: le vulnerabilità sono state già corrette. Dopo che i ricercatori EVA hanno notificato privatamente agli sviluppatori di CocoaPods delle vulnerabilità, a ottobre 2023 il team CocoaPods ha già preso provvedimenti per garantire che gli exploit siano corretti.

Tra i provvedimenti, sono state cancellate tutte le chiavi di sessione per garantire che nessuno possa accedere agli account senza prima avere il controllo dell'indirizzo email registrato.

Inoltre è stata aggiunta una nuova procedura per il recupero di vecchi pod abbandonati che richiede di contattare direttamente i manutentori. Un autore avrebbe bisogno di contattare l'azienda per assumere una di queste dipendenze a questo punto.

Il rischio però è grande. EVA Information Security ha rivelato che l'exploit potrebbe portare gli aggressori ad accedere ai dati sensibili delle app come i dettagli della carta di credito, le cartelle cliniche e il materiale privato. I dati potrebbero essere utilizzati per una serie di scopi, tra cui ransomware, frodi, ricatti e spionaggio aziendale.

I ricercatori hanno scritto che non ci sono prove dirette che nessuna di queste vulnerabilità sia stata sfruttata, ma "la prova dell'assenza non è assenza di prove".

Cosa bisogna fare?

Non è richiesta alcuna azione da parte degli sviluppatori di app o degli utenti che le utilizzano. I ricercatori EVA, tuttavia, hanno consigliato agli sviluppatori di app che utilizzavano CocoaPods prima di ottobre di sincronizzare il pod per assicurarsi che sia aggiornato, e di rivedere le dipendenze per assicurarsi di non usare un pod abbandonato. 

Inoltre è meglio assicurarsi di usare dipendenze mantenute attivamente e di chiara proprietà, o di effettuare scansioni periodiche del codice. Infine, di diffidare di dipendenze molto popolari, che sono più probabilmente bersaglio degli aggressori. 

Ricordiamo che CocoaPods già nel 2021 è stato oggetto di un attacco che ha permesso ai repository di eseguire codice arbitrario sui server che lo gestiscono, permettendo a malintenzionati di sostituire i pacchetti esistenti con versioni dannose.

Risultando in codice dannoso che sarebbe potuto arrivare nelle app per iOS e macOS.

Read Entire Article