Torna al blog
Privacy su iOS·9 min di lettura

Cosa non blocca iOS App Tracking Transparency — e come impedire davvero il tracciamento delle app

Il prompt "Ask App Not to Track" di Apple è una buona cosa. È però una protezione molto più limitata di quanto la maggior parte delle persone pensi.

Di Casper's Cloak Security Team

In breve: ATT blocca un singolo identificatore specifico (l'IDFA — l'ID pubblicitario di Apple). Le app che vogliono continuare a tracciarti smettono semplicemente di usare l'IDFA e ricorrono a una decina di altri identificatori che ATT non tocca. Ricerche indipendenti hanno riscontrato che molte app continuano a tracciare tramite fingerprinting anche dopo che l'utente ha premuto "Ask App Not to Track." Di seguito: cosa fa davvero ATT, cosa non fa, e cosa colma il divario.

Cosa blocca davvero App Tracking Transparency

ATT, introdotto con iOS 14.5 nell'aprile 2021, obbliga le app a mostrare un prompt di sistema prima di poter accedere all'IDFA (Identifier for Advertisers) del dispositivo — una singola stringa globale assegnata da Apple a ciascun dispositivo. Se premi "Ask App Not to Track," l'app riceverà un IDFA composto da soli zeri. Tutto qui. È questo l'intero meccanismo.

La protezione limitata ha senso nella logica di Apple: ATT riguarda un singolo identificatore controllato da Apple. Ciò che ATT non è mai stato progettato per fare — e che la maggior parte degli utenti dà per scontato — è impedire alle app di tracciare il tuo comportamento attraverso altri mezzi.

A cosa sono passate le app dopo ATT

Quando l'IDFA è stato disattivato, il settore della pubblicità mobile non si è arreso. Ha cambiato tecnica:

  • Device fingerprinting. Risoluzione dello schermo, modello, versione del sistema operativo, lingue installate, fuso orario, pattern di rumore dell'accelerometro e ~30 altri segnali vengono combinati in un'impronta digitale sufficientemente unica da re-identificare il tuo dispositivo tra le app. L'impronta è costruita a partire da dati che Apple lascia leggere liberamente alle app.
  • Identificatori utente con hash. Se accedi a un'app gratuita con la tua email, l'SDK calcola l'hash dell'email e lo invia alla rete pubblicitaria. L'hash corrisponde in tutte le altre app che hanno la tua email. ATT non impedisce questo — hai acconsentito all'iscrizione.
  • SDK condivisi come collante tra app. L'SDK di Facebook è integrato nel ~30% delle app mobile. Quando usi una qualsiasi di quelle app, l'SDK riferisce a Meta — anche se non hai un account Facebook. ATT chiede il consenso all'app ospite, non agli identificatori separati dell'SDK incorporato.
  • CNAME cloaking. Un sito o un'app crea un alias DNS (analytics.bigsite.com → in realtà hotjar.com) in modo che il tracker sembri di prima parte. ATT non ha un livello DNS; i content-blocker del browser non riescono facilmente a risolvere la catena di alias.
  • SKAdNetwork attribution. Il sostituto compatibile con ATT di Apple stesso — le app comunicano gli eventi di attribuzione delle installazioni tramite canali aggregati da Apple. Meno granulare dell'IDFA, ma sempre attribuzione. Non è poco.

Il quadro empirico

Ricercatori indipendenti hanno riscontrato ripetutamente che ATT, nella pratica, blocca un solo canale e ne lascia aperti molti altri: molte app continuano a effettuare una qualche forma di tracciamento dopo che l'utente nega il permesso ATT, principalmente tramite fingerprinting e identificatori SDK condivisi.

Non è un argomento per dire che ATT sia sbagliato — è una protezione limitata ma utile. È un argomento per dire che ATT da solo è insufficiente se il tuo obiettivo è "le app non dovrebbero tracciarmi".

Cosa colma davvero il divario

Tutte le tecniche sopra descritte condividono una caratteristica strutturale: richiedono che l'SDK raggiunga un server remoto. L'impronta digitale deve essere inviata da qualche parte. L'email con hash deve fare una chiamata a casa. L'SDK di Facebook deve inviare il suo payload a graph.facebook.com. I tracker mascherati da CNAME alla fine risolvono sempre verso una destinazione reale.

Ciò significa che un filtro a livello di rete (DNS) che blocca le connessioni verso domini di tracker noti li intercetta tutti con un unico intervento, indipendentemente dall'identificatore che l'app stava per inviare. Questo è l'approccio che Pi-hole ha inaugurato per le reti domestiche, e ciò che strumenti mobile come Casper's Cloak, NextDNS e AdGuard DNS fanno per i singoli dispositivi.

Il meccanismo, semplificato:

  1. L'SDK integrato nell'app cerca di inviare la propria impronta digitale / ID con hash / segnale comportamentale al suo server (es. graph.facebook.com, amplitude.com, mixpanel.com).
  2. Prima che la connessione possa completarsi, il dispositivo esegue una ricerca DNS per trovare l'IP del server.
  3. Il profilo VPN di sistema invia le query DNS attraverso un resolver filtrante.
  4. Il resolver riconosce che il hostname è un tracker e si rifiuta di restituire un IP.
  5. La connessione non si apre mai. I dati non lasciano mai il tuo telefono.

La cosa cruciale è che questo funziona per ogni app sul dispositivo — non solo Safari. ATT opera al livello API app-SDK. I content-blocker del browser operano al livello DOM. Il filtraggio DNS opera al livello di rete, al di sotto di entrambi, dove tutte le app convergono.

Cosa fa bene ATT — riconosciamone i meriti

ATT è genuinamente utile per due cose:

  • Ha cambiato il comportamento predefinito. Prima di ATT, l'IDFA era sempre attivo. Dopo ATT, la maggior parte degli utenti rifiuta quando viene richiesto. Si tratta di un reale cambiamento della privacy a livello di popolazione, anche tenendo conto delle soluzioni alternative.
  • Ha spinto Meta e altri a divulgare l'infrastruttura di tracciamento che prima era invisibile. Le etichette App Privacy sull'App Store, che le app devono compilare con accuratezza, sono arrivate come diretta conseguenza.

ATT è stato un intervento meritevole. Semplicemente non è completo — e Apple non ha mai sostenuto il contrario.

Raccomandazioni pratiche

  • Continua a premere "Ask App Not to Track." La protezione marginale vale il secondo di attrito.
  • Utilizza un filtro a livello DNS insieme ad ATT — Casper, NextDNS, AdGuard DNS o un Pi-hole auto-ospitato. Questo è ciò che intercetta le tecniche che ATT non affronta.
  • Esamina le etichette App Privacy delle app prima di installarle. Se le etichette mostrano "Dati collegati a te — Identificatori" per finalità non essenziali, cerca un'alternativa.
  • Riconosci che le app "gratuite" monetizzano tramite il tracciamento per impostazione predefinita. Le alternative a pagamento spesso adottano approcci alla privacy significativamente diversi, poiché non dipendono dal tracciamento.
  • Non accedere con Apple/Google/Facebook se funziona un'email reale. SSO collega insieme identificatori che altrimenti rimarrebbero isolati.

In sintesi

ATT è una funzionalità di privacy utile ma limitata. Blocca un singolo identificatore controllato da Apple. Le app che vogliono continuare a tracciare usano semplicemente altri identificatori. Se il tuo obiettivo è il più ampio "le app non dovrebbero tracciarmi," ATT è l'inizio, non la fine — abbinalo a un filtro a livello di rete che intercetti ciò per cui ATT non è mai stato progettato.

Verificato da Casper's Cloak Security Team · Ultimo aggiornamento

Blocca ciò che ATT non intercetta

Casper's Cloak esegue il filtraggio a livello di rete descritto sopra — su ogni app su iPhone, Mac e Android.