La Smart TV può spiarti anche via HDMI: ecco come

Le Smart TV possono riconoscere cosa guardi anche via HDMI. Vediamo come funziona ACR e come controllare il tracciamento con strumenti pratici.

Una Smart TV di oggi non è semplicemente un televisore collegato a Internet. Al suo interno troviamo un sistema operativo, applicazioni, identificatori pubblicitari, servizi cloud, moduli di telemetria e, in molti modelli, tecnologie capaci di riconoscere ciò che appare sullo schermo.

Il termine “spionaggio“, spesso utilizzato quando si parla di questi dispositivi, rischia però di “depistare”: una cosa è un televisore compromesso per via di una vulnerabilità che permette a un aggressore di utilizzare microfono o videocamera; un’altra è la raccolta commerciale dei dati di utilizzo prevista dal produttore e descritta, almeno formalmente, nelle condizioni accettate dall’utente.

Il problema più rilevante dal punto di vista tecnico e della privacy è proprio quest’ultimo: alcune Smart TV possono identificare ciò che guardiamo anche quando il contenuto non proviene da un’applicazione installata sul televisore. Il meccanismo prende il nome di Automatic Content Recognition o ACR.

Il TV può riconoscere anche ciò che arriva dalla porta HDMI

Quando ACR è abilitato, il televisore analizza periodicamente una piccola porzione del contenuto riprodotto e ne ricava una sorta di impronta digitale. Non deve necessariamente inviare al produttore un fotogramma completo o una registrazione del programma: può produrre localmente una firma numerica sufficientemente rappresentativa del contenuto.

La firma così ottenuta è confrontata con un database contenente impronte precedentemente generate da programmi televisivi, film, pubblicità e altri contenuti conosciuti. Il produttore del TV può così dedurre, ad esempio:

  • quale programma è visualizzato;
  • a che ora viene riprodotto;
  • per quanto tempo rimane sullo schermo;
  • quali spot pubblicitari sono stati mostrati;
  • quale sorgente viene utilizzata;
  • in alcuni casi quali videogiochi o altri contenuti vengono visualizzati.

La caratteristica tecnicamente più importante è che l’ACR può funzionare indipendentemente dalla sorgente video. Una ricerca presentata all’ACM Internet Measurement Conference ha analizzato il traffico ACR generato da televisori di marchi famosi, verificando il comportamento con TV lineare (televisione tradizionale con palinsesto, ricevuta via antenna, satellite o cavo), applicazioni di streaming, casting e dispositivi collegati via HDMI. I ricercatori hanno osservato che il riconoscimento può continuare a funzionare anche quando il televisore è usato come un semplice monitor per una sorgente esterna.

Collegare un decoder, un PC o una console non rende automaticamente “cieco” il televisore: se l’ACR è attivo, l’analisi può avvenire sul segnale che il pannello sta visualizzando.

Perché i dati raccolti dall’ACR valgono tanto?

La cronologia di visione permette di ricavare informazioni molto significative. Immaginiamo che un televisore riconosca per settimane partite di calcio, programmi per bambini, documentari finanziari, pubblicità automobilistiche, serie televisive, telegiornali e videogiochi.

Da questi segnali è possibile creare segmenti statistici utilizzabili per advertising e misurazione dell’audience.

Il dato più prezioso non è quindi necessariamente “Mario Rossi ha guardato il film X“. Molto più utile può essere una relazione del tipo:

televisore 7F93A2 ⇒ famiglia interessata allo sport ⇒ forte consumo di contenuti serali ⇒ esposizione allo spot Y ⇒ successiva interazione con una campagna pubblicitaria

È lo stesso identico principio alla base di buona parte della pubblicità comportamentale sul web, trasferito sullo schermo più grande della casa.

Disattivare ACR non equivale a rendere anonimo il televisore. In una Smart TV convivono diversi livelli di raccolta dati: ACR, che tenta di identificare ciò che appare sullo schermo; telemetria del sistema operativo, relativa all’utilizzo dell’interfaccia, agli errori, alla diagnostica e alle funzionalità utilizzate; dati delle applicazioni, raccolti direttamente da Netflix, YouTube, Prime Video, Disney+ e dagli altri servizi; identificatori pubblicitari, utilizzati dal sistema operativo e dalle applicazioni; account del produttore, che può collegare parte dell’attività al profilo Samsung, LG, Google, Amazon utilizzato sul dispositivo.

Il primo controllo da fare: ACR

Se non voleste condividere dati, uno dei primi passaggi consiste nella disattivazione di ACT. I menu cambiano fra produttori, modelli e versioni del firmware, quindi i nomi delle opzioni non sono sempre identici.

Su Samsung la funzione è generalmente collegata a Viewing Information Services. Nei modelli recenti le relative autorizzazioni si trovano nelle sezioni dedicate a privacy, condizioni e servizi Smart Hub. Sui TV LG si possono invece incontrare termini come Live Plus o opzioni collegate al riconoscimento dei contenuti e alla personalizzazione.

È importante leggere attentamente ogni singola voce durante la configurazione iniziale del televisore. Il pulsante Accetta tutto è sicuramente il percorso più rapido per arrivare alla schermata principale, ma può attivare servizi non indispensabili per la semplice visione dei contenuti.

Google TV rappresenta un caso diverso perché il sistema operativo dispone di un proprio identificatore pubblicitario: è possibile raggiungerlo da Impostazioni, Privacy, Annunci. Google permette di reimpostare l’Advertising ID oppure di eliminarlo completamente.

L’eliminazione dell’ID non elimina gli annunci: le applicazioni possono continuare a mostrarli e possono utilizzare altri dati disponibili, ma viene rimosso uno degli strumenti più comodi per collegare nel tempo le attività effettuate sul televisore.

Disattivare ACR e personalizzazione pubblicitaria sono due operazioni diverse

Un altro errore frequente consiste nel cercare un unico “interruttore”. Un televisore può avere contemporaneamente ACR, pubblicità personalizzata, raccomandazioni dei contenuti, raccolta dei dati diagnostici, servizi vocali, identificatore pubblicitario e servizi di personalizzazione dell’account.

Conviene quindi esaminare separatamente tutte le sezioni che contengono parole come Privacy, Ads, Advertising, Viewing Information, Content Recognition, Recommendations, Personalization, Diagnostics, Usage Data e Voice Recognition.

Disattivare solamente “annunci personalizzati” può lasciare attivo il riconoscimento dei programmi. Disabilitare solamente ACR può invece lasciare attivi Advertising ID e telemetria.

Il caso del microfono: non confondiamo wake word e registrazione continua

Le Smart TV dotate di assistente vocale introducono un ulteriore livello di attenzione. Per riconoscere un comando come “Hey Google” o una wake word proprietaria, il dispositivo deve necessariamente mantenere un sistema di ascolto attivo. Questo non implica automaticamente che tutto l’audio della stanza sia trasmesso continuamente su Internet.

Nei sistemi progettati correttamente, il rilevamento iniziale della wake word avviene in locale; soltanto dopo il riconoscimento del comando vocale è aperta una sessione con il servizio cloud. Questo comportamento, tuttavia, va verificato modello per modello e servizio per servizio.

Chi non utilizza i comandi vocali può semplicemente disabilitare il microfono o il riconoscimento hands-free, se il televisore offre un interruttore hardware o software.

È inoltre opportuno distinguere i problemi di privacy previsti dal funzionamento ordinario dalle vulnerabilità di sicurezza. Se un aggressore ottiene privilegi elevati sul sistema operativo del televisore attraverso una falla, il problema cambia completamente: una Smart TV è a tutti gli effetti un computer Linux o Android dotato di rete, memoria, processore e talvolta microfono e videocamera. Un TV compromesso potrebbe quindi teoricamente essere utilizzato in modi che non hanno nulla a che vedere con le normali funzioni ACR.

Come verificare se la Smart TV sta davvero inviando dati ACR

Disattivare un’opzione nelle impostazioni è utile, ma un approccio più tecnico consiste nel controllare cosa cambia effettivamente sulla rete. È possibile farlo senza modificare il televisore e senza decifrare il traffico HTTPS.

Uno studio presentato alla ACM Internet Measurement Conference ha seguito proprio questo approccio: i ricercatori hanno collocato i televisori dietro un access point controllato, catturando esclusivamente il traffico generato dai TV e confrontando situazioni differenti, tra cui TV lineare, HDMI, Netflix/YouTube, casting, ACR attivo e ACR disattivato.

Il primo dato pratico interessante è che non serve necessariamente vedere il contenuto delle connessioni. DNS, indirizzi IP, frequenza delle comunicazioni e quantità di traffico permettono già di individuare pattern molto indicativi. Lo studio ha per esempio osservato, sui televisori LG esaminati in Europa, connessioni verso host con uno schema simile ricorrente (spesso con l’indicazione acr nel nome dell’host remoto).

Gli stessi autori sottolineano che non esiste una specifica ufficiale che imponga l’uso della stringa acr nei domini. Il dato interessante è piuttosto il comportamento: le connessioni sparivano dopo l’opt-out dell’utente in tema di ACR.

Controllare tutto con Pi-hole o AdGuard Home

Il metodo più semplice consiste nell’utilizzare un resolver DNS locale come Pi-hole o AdGuard Home.

Prima di tutto conviene assegnare al televisore sempre lo stesso indirizzo IP privato attraverso una prenotazione DHCP sul router, ad esempio 192.168.1.50. A questo punto il server DNS configurato sulla TV deve puntare al server Pi-hole o AdGuard Home.

Si possono quindi cancellare i log e condurre un piccolo esperimento. Lasciamo per 5 minuti il televisore sulla Home poi guardiamo per 5 minuti un canale televisivo. Successivamente colleghiamo un notebook oppure una console alla porta HDMI e riproduciamo un contenuto per altri 5-10 minuti. A questo punto annotiamo i domini contattati.

Come passo successivo, disattiviamo ACR e tutte le opzioni relative a “Viewing Information“, “Live Plus” o equivalenti; spegniamo completamente il televisore; attendiamo qualche minuto; riaccendiamolo; ripetiamo esattamente lo stesso test.

La comparazione prima/dopo permette di scoprire il comportamento tenuto dal TV con e senza la funzionalità ACR attiva.

Usare Wireshark senza intercettare HTTPS

Chi vuole spingersi oltre può catturare direttamente i pacchetti dati. L’ideale è far passare la Smart TV attraverso un computer Linux che svolga temporaneamente il ruolo di access point oppure attraverso una porta mirror di uno switch managed.

Supponiamo che il televisore abbia indirizzo 192.168.1.50. Con tcpdump possiamo registrare tutto il traffico proveniente da quell’host:

sudo tcpdump -i eth0 host 192.168.1.50 -w smarttv.pcap

Il file smarttv.pcap può essere poi aperto con Wireshark. Per vedere soltanto le richieste DNS, si può quindi usare la seguente sintassi (da inserire nella casella in alto, nell’interfaccia del programma):

dns && ip.addr == 192.168.1.50

Per mostrare le connessioni TLS:

tls && ip.addr == 192.168.1.50

E per osservare soltanto il traffico in uscita dal televisore:

ip.src == 192.168.1.50

Non vedremo il contenuto applicativo perché HTTPS lo cifra, ma possiamo ricavare comunque informazioni molto utili come destinazione, frequenza delle connessioni, dimensione dei flussi, momento in cui partono e associazione con un’azione compiuta sul televisore.

Cadenza del traffico e collegamento di un notebook via HDMI

Con Wireshark, non dobbiamo necessariamente cercare un flusso continuo: può trattarsi di brevi burst periodici di pochi pacchetti. È proprio confrontando questi burst con ACR attivo e disattivato che la verifica diventa molto più interessante.

Colleghiamo ad esempio un notebook via HDMI e riproduciamo un video locale oppure un contenuto web. A questo punto la TV non sta utilizzando Netflix, YouTube o un’altra applicazione interna: dal suo punto di vista riceve solamente un flusso video HDMI.

Se nel frattempo compaiono connessioni periodiche verso infrastrutture ACR, abbiamo una dimostrazione concreta di un aspetto spesso poco intuitivo: il televisore può analizzare ciò che visualizza anche quando l’origine del contenuto è completamente esterna. L‘opt-out, com’è accertabile, fa cessare completamente questo comportamento.

Attenzione: bloccare il DNS non equivale necessariamente a bloccare il servizio

Una configurazione Pi-hole può sembrare perfetta ma, allo stesso tempo, può lasciare comunque passare alcune comunicazioni.

Il motivo è che il televisore potrebbe conoscere direttamente l’indirizzo IP di alcuni servizi; potrebbe utilizzare DNS over HTTPS o altri resolver; oppure potrebbe interrogare un DNS diverso da quello distribuito dal router tramite DHCP.

Per un’analisi seria, conviene quindi non limitarsi a indicare il DNS preferito: si può ad esempio applicare una regola firewall che permetta alla TV di interrogare esclusivamente il resolver scelto.

Per il DNS classico significa bloccare TCP e UDP porta 53 verso Internet, tranne che verso il resolver interno. Chi vuole essere ancora più rigoroso può valutare anche il traffico DoT sulla porta TCP 853.

Il DNS over HTTPS è più difficile da filtrare perché utilizza di norma la porta 443 come qualsiasi altro traffico HTTPS. In quel caso servono regole sugli endpoint conosciuti oppure un firewall più sofisticato.

Mettere la Smart TV in una VLAN separata

Chi dispone di router evoluti, OpenWrt, OPNsense, pfSense, UniFi o dispositivi analoghi può adottare una misura ancora più utile: isolare la Smart TV dal resto della rete locale. Televisori, videocamere, speaker intelligenti e altri dispositivi IoT possono essere collocati in una VLAN dedicata: è una configurazione sensata dal punto di vista della sicurezza perché permette di segmentare la rete separando dispositivi non strettamente indispensabili o utilizzati per finalità di intrattenimento da device importanti come NAS, notebook, PC desktop e così via.

La rete locale potrebbe per esempio usare la subnet 192.168.1.0/24 per PC e smartphone; l’insieme di indirizzi 192.168.20.0/24 per televisori, dispositivi smart e IoT in generale.

Il firewall permette alla VLAN IoT (la seconda citata in precedenza) di uscire su Internet ma impedisce ai dispositivi di iniziare connessioni verso PC, NAS e altri sistemi utilizzati per finalità primarie presenti nella LAN. È uno schema che non impedisce la telemetria del televisore, ma limita enormemente l’impatto di un’eventuale compromissione.

GDPR: il consenso deve essere realmente comprensibile

Quando si parla di privacy e dati personali, per gli utenti europei entra inevitabilmente in gioco il GDPR.

Quando il trattamento dei dati si basa sul consenso, la Commissione europea ricorda che quest’ultimo deve essere libero, specifico, informato e inequivocabile. La richiesta deve inoltre spiegare chiaramente quale utilizzo sarà fatto dei dati e deve distinguersi dalle normali condizioni contrattuali.

Durante il primo avvio della Smart TV – pensiamo al momento in cui la togliamo dallo scatolone e la colleghiamo alla presa elettrica – l’utente vuole arrivare il più velocemente possibile al digitale terrestre, alla console o a Netflix. Sullo schermo compaiono invece numerose condizioni, privacy policy, servizi opzionali e richieste di consenso.

Tecnicamente è possibile rifiutare alcune voci; dal punto di vista dell’interfaccia, però, bisogna essere in grado di capire quali siano realmente indispensabili. Come già evidenziato in precedenza, è consigliabile rallentare ed evitare di avventarsi su Accetta tutto senza prima aver spulciato le singole autorizzazioni.

Una Smart TV è ormai un computer con un grande schermo

La conclusione più importante non è che ogni Smart TV “ci spia“. Una formulazione simile mescola pubblicità, telemetria, ACR, assistenti vocali e vulnerabilità di sicurezza, fenomeni tecnicamente molto diversi.

Un televisore connesso deve piuttosto essere trattato con la dovuta attenzione, come qualsiasi altro computer presente nella rete domestica. Possiede un sistema operativo, comunica continuamente con server remoti, esegue applicazioni, gestisce account, conserva identificatori e riceve aggiornamenti software.

In più ha una caratteristica che PC e smartphone normalmente non possiedono: si trova davanti a noi per molte ore al giorno e può osservare indirettamente ciò che viene visualizzato anche attraverso sorgenti esterne. Il pannello che pensavamo fosse soltanto l’ultimo elemento della catena video può diventare esso stesso uno strumento di misurazione.

La vera difficoltà consiste nel sapere che esistono possibilità attivate solo su richiesta dell’utente (spesso, però, basta una semplice opzione) e nel distinguere le impostazioni realmente necessarie da quelle che servono soprattutto a trasformare le abitudini davanti al televisore in dati utilizzabili commercialmente.

Scollegare del tutto la Smart TV è una soluzione?

C’è naturalmente una soluzione radicale: non collegare affatto il televisore a Internet. In questo modo ACR e gli altri servizi cloud integrati non possono trasmettere dati ai server remoti, almeno finché il dispositivo rimane realmente offline. È una scelta perfettamente valida per chi usa la TV soltanto come display per decoder, console o altri apparati HDMI.

Il problema è che una Smart TV nasce ormai anche come piattaforma per streaming, aggiornamenti firmware, guide elettroniche, applicazioni e servizi interattivi. Scollegarla significa rinunciare in tutto o in parte a queste funzioni. E se per recuperarle si collega un box esterno come Apple TV, Fire TV, Google TV Streamer o un altro media player, la raccolta dei dati non scompare necessariamente: semplicemente si sposta dal televisore al dispositivo collegato e ai servizi utilizzati attraverso di esso.

La questione, quindi, non è stabilire se una Smart TV debba obbligatoriamente essere online. Chi vuole può certamente trasformarla in un semplice monitor. Per tutti gli altri diventa più utile capire quali funzioni di raccolta siano attive, quali siano realmente necessarie e quali possano essere disabilitate senza rinunciare alle caratteristiche per cui il televisore è stato acquistato.

Ti consigliamo anche

Link copiato negli appunti