Di recente, diverse app di streaming pirata per iOS sono riuscite a ottenere l’approvazione sull’App Store ingannando il processo di revisione. Adesso, grazie ad un’analisi approfondita di 9to5Mac, sappiamo come queste app riescano a superare i controlli di Apple.
Il mese scorso, un’app chiamata “Collect Cards” ha raggiunto i vertici della classifica delle app gratuite più scaricate in alcuni paesi. Poco dopo, Apple ha rimosso l’app, ma molte altre versioni dello stesso software sono successivamente apparse sull’App Store. Ma come fanno esattamente gli sviluppatori a ingannare il team di revisione dell’App Store?
In sostanza, queste app utilizzano il geofencing per impedire a chiunque in Apple di vedere cosa l’app sia realmente in grado di fare. Analizzando il codice di queste app, ora abbiamo un’idea più chiara di come avviene questo inganno.
Come ipotizzato, queste app condividono la stessa base di codice, anche se distribuite da account sviluppatori diversi. Sono costruite con React Native, un framework multipiattaforma basato su JavaScript, e utilizzano l’SDK CodePush di Microsoft, che consente agli sviluppatori di aggiornare parti dell’app senza dover inviare una nuova build all’App Store.
Costruire app con React Native e utilizzare CodePush non è contro le regole dell’App Store. Tuttavia, gli sviluppatori malintenzionati sfruttano queste tecnologie per bypassare il processo revisione.
Una delle app analizzate da 9to5Mac punta a un repository su GitHub che sembra fornire file per diverse app di streaming pirata. Questa app utilizza anche un’API specifica per controllare la posizione del dispositivo basandosi sull’indirizzo IP, restituendo dati come il paese, la regione, la città e persino la longitudine e la latitudine stimate.
Quando l’app viene aperta per la prima volta, attende qualche secondo prima di chiamare l’API di geolocalizzazione. In questo modo, il processo di revisione automatizzato dell’App Store non rileva nulla di insolito nel codice dell’app. Il sito ha anche verificato il comportamento dell’app simulando la loro posizione a San Jose, California. Per questa posizione, l’app non rivela mai la sua interfaccia nascosta.
Naturalmente, Apple non è immune alle app che cercano di ingannare il suo sistema di revisione. Tuttavia, l’azienda potrebbe migliorare il sistema implementando test aggiuntivi per controllare il comportamento dell’app in altre località. Allo stesso tempo, la società dovrebbe essere più proattiva nel trovare e rimuovere le app truffaldine dall’App Store.
Nel 2017, Uber fu accusata di aver lavorato su un “geofence” per la sede di Apple a Cupertino. Quando l’app veniva eseguita all’interno di questo geofence, disabilitava automaticamente i codici utilizzati per il fingerprinting e il tracciamento dell’utente sul web. Anche così, sembra che Apple non abbia fatto molto per prevenire altre situazioni simili.
Nel 2021, documenti hanno rivelato che il team di revisione dell’App Store ha più di 500 esperti umani per esaminare oltre 100.000 app ogni settimana. Anche così, la stragrande maggioranza delle app passa attraverso processi di revisione automatizzati per verificare se violano le linee guida dell’App Store prima di essere sottoposte a revisione manuale.
A seguito della pubblicazione di vari articoli, un portavoce di Apple ha dichiarato a 9to5Mac che le app sono state rimosse dall’App Store, ma non sono stati forniti dettagli sulle misure adottate dall’azienda per prevenire l’approvazione di altre app simili.
Leggi o Aggiungi Commenti