Un caso vero, raccontato con i dati

Sette cose che questa app non può vedere sul tuo telefono. Nemmeno lei

Ogni referto che scriviamo ha una sezione che nessun concorrente pubblica: i punti dove Android stesso ci nega l'accesso, indipendentemente da quanto sia scritto bene il codice. Non è una lista di scuse. È l'unica cosa che i concorrenti non possono copiarci, perché copiarla vuol dire ammetterla.

Il punto di partenza

Non è un limite nostro. È un limite di qualunque app su un telefono non modificato

Su Android, da un certo punto in poi il sistema operativo smette di rispondere a certe domande a chiunque le faccia — antivirus, app di controllo genitori, strumenti forensi commerciali. La differenza fra noi e chi non lo scrive non è cosa riusciamo a vedere: è se lo diciamo.

I due limiti più pesanti

Dove uno spyware serio lavora meglio

1 — I registri di arresto del sistema

Android li riserva alle proprie app. È il limite più pesante di tutti: un tentativo di attacco zero-click fallito lascia la traccia proprio lì, ed è una delle prove più solide che la ricerca forense pubblica usa contro gli spyware di Stato. Si recuperano solo con un computer e un cavo.

2 — Lo storico di microfono e fotocamera

Vedere quando le ALTRE app li hanno usati richiede un permesso di sistema che un'app normale non ha. Possiamo osservare gli accessi mentre siamo svegli, non ricostruire cosa è successo la notte scorsa. È il buco proprio dove lo stalkerware lavora. Si colma restando accesi nel tempo: da domani in poi lo storico ce l'hai tu.

Cosa il sistema nasconde a tutti

Cinque punti in più, e cosa copre ognuno

3 — I processi delle altre app

Da Android 8 nessuna app li vede: il sistema restituisce solo i propri processi. I controlli su processi fantasma o travestiti da componenti di sistema non hanno niente da guardare. Si supera solo con un computer.

4 — L'elenco delle connessioni aperte

Android non lascia leggere /proc/net a nessuna app senza root: non si vede con chi sta parlando il telefono in questo momento. Questo è l'unico dei sette che si colma da dentro l'app: il Live Monitor osserva le destinazioni direttamente dal traffico, senza passare da quel file.

5 — Le tabelle della rete locale

ARP e instradamento non sono leggibili: un gateway ostile sul Wi-Fi non si smaschera per questa via. Coperto in parte da altri moduli che guardano lo stesso problema da un altro angolo.

6 — I moduli caricati nel kernel

Non leggibili senza root: un rootkit a quel livello è fuori dalla portata di qualunque app su un telefono non modificato. L'unica strada che resta è chiedere al chip di sicurezza, che non può mentire — vedi sotto.

7 — Il carico di lavoro del processore

/proc/stat non è leggibile: non si può confrontare la CPU consumata con le app visibili, che è un modo per accorgersi di un processo nascosto al lavoro. Restano temperatura e batteria: eseguire è l'unica cosa che un impianto non può evitare di fare.

Quello che resta, quando il sistema può mentire

Il chip che non può mentire al posto tuo

Se il sistema operativo è compromesso, può mentire su quasi tutto quello che gli si chiede: quali app sono installate, quanto traffico è passato, persino chi possiede il proprio identificativo. Per questo abbiamo aggiunto un canale che non passa dal sistema operativo: l'attestazione hardware. Il chip di sicurezza del telefono firma una risposta con una chiave che non lascia mai l'hardware — il kernel può falsificare quasi tutto ciò che passa da lui, ma non può firmare al posto del chip. È il modo in cui recuperiamo un pezzo del punto 6, senza root e senza un computer.

Lo stesso principio vale per le domande a trabocchetto: se chiediamo al sistema notizie di un'app inventata sul momento, e risponde che esiste, non è il sistema che sbaglia — è qualcosa che riscrive le risposte prima che arrivino a noi. Un avversario molto sofisticato potrebbe imparare a rispondere il vero su queste domande e mentire sul resto: per questo le domande cambiano a ogni scansione e si ripetono nel tempo. Non cerchiamo l'impianto. Cerchiamo le incoerenze che sarebbe costretto a produrre.

Quello che questa app non vede: le domande più comuni

Perché un'app di sicurezza non può vedere tutto su Android?

Perché Android stesso lo impedisce, non per un limite di programmazione. Da Android 8 in poi nessuna app può leggere i processi delle altre app, i registri di arresto del sistema o alcuni file di diagnostica: sono riservati al sistema operativo. Vale per qualunque app, non solo per la nostra.

Se un'app dice di vedere tutto, come si spiega?

O non è vero, o sta chiedendo il permesso di root, che rimuove le protezioni del telefono per guardarci dentro senza filtri. La domanda giusta da fare a qualunque app di sicurezza è cosa non può vedere, non cosa promette di vedere.

Cosa si può fare per i punti che l'app non copre da sola?

Dipende dal punto: alcuni si colmano restando accesi nel tempo, uno si colma chiedendo al chip di sicurezza, gli ultimi si superano solo con un computer e un cavo. Nessuno di questi si finge coperto quando non lo è.

Il chip di sicurezza (TEE) può davvero essere interrogato da un'app?

Sì, si chiama attestazione hardware ed è una funzione che Android espone apposta. Il chip firma una risposta con una chiave che non lascia mai l'hardware: il sistema operativo può mentire su quasi tutto il resto, ma non può firmare al posto del chip.