JavaScript e privacy sono due mondi contrapposti: l’uno abilitante a tantissime funzionalità che migliorano l’esperienza di navigazione sul Web, l’altro restringente nella tutela di un diritto di cui, nonostante l’introduzione del GDPR – entrando nel nono anno dalla sua entrata in vigore – ancora oggi si fatica a comprenderne l’importanza.
Ecco perché oggi ci interroghiamo su come un linguaggio di programmazione come JavaScript, data la sua intrinseca potenza, sia in grado di porre diverse sfide in termini di privacy.
Indice degli argomenti
Come JavaScript impatta sulla privacy
Partiamo con il chiederci come JavaScript impatti in termini di privacy.
Evidentemente, dobbiamo pensare a come avviene la raccolta dati e il tracciamento dei dati personali per poi indagare sulle possibili vulnerabilità.
Raccolta di dati, tracciamento e vulnerabilità
Quando pensiamo alla raccolta dei dati sul Web il primo pensiero va ai cookie nelle sue molteplici specie.
Poiché la loro funzione è quella di memorizzare sul dispositivo le scelte dell’utente per tracciare le sue preferenze/attività online, JavaScript viene spesso utilizzato per gestire e leggere tali cookie, profilando l’utente.
Non solo, JavaScript può anche tracciare pagine visitate, link cliccati nonché il tempo trascorso su ciascuna pagina.
Ogni interazione dell’utente con una pagina Web, quindi viene di fatto registrata e inviata ad altri server (esterni).
Ancora, JavaScript può creare una impronta digitale unica del browser e del dispositivo dell’utente, combinando varie informazioni come risoluzione dello schermo, font installati, plug-in ecc. mediante la tecnica del cosiddetto fingerprinting.
Da ultimo, ma non ultimo, il linguaggio di programmazione in parola è in grado di creare piccoli elementi grafici – invisibili pixel – nelle stesse pagine Web i quali possono caricarsi in modo per l’appunto invisibile, e per l’effetto inviare informazioni al server anche quando l’utente non vi interagisce.
JavaScript qualora non dovesse essere implementato correttamente può diventare assai vulnerabile specie a quegli attacchi di cross-site scripting (XSS), i quali permettono l’iniezione di codici malevoli nelle pagine web visitate dall’utente.
Misure di sicurezza per proteggere la privacy
Visto il mondo di JavaScript, non possono non venire in luce riflessioni in termini di privacy. Di qui l’importanza di attuare delle misure di sicurezza volte a proteggere la privacy. Vediamone alcune.
La forza dei principi GDPR: dalla minimizzazione alla privacy by design
Grazie al GDPRè stato anzitutto valorizzato il principio di minimizzazione dei dati. I siti Web debbono raccogliere soltanto i dati strettamente necessari per fornire il servizio richiesto e nulla di più.
Non solo, anche il principio di anonimizzazione ove possibile, è una misura di sicurezza assai preziosa che va in contrasto agli abusi o deviazioni privacy che, come abbiamo poc’anzi descritto, potrebbero verificarsi nel mondo di JavaScript.
Non a caso, infatti, i dati personali resi anonimi o pseudonimizzati offrono tutele maggiori.
Non di meno è importante una solida privacy by design (art. 25 GDPR) considerando la privacy fin dalle prime fasi di sviluppo di un’applicazione Web.
Altre tecniche per la protezione dei dati personali
Anche altre tecniche come la crittografia servono e aiutano grandemente a proteggere i dati specialmente quelli cd “particolari” (cioè gli ex sensibili) meglio sarebbe se sempre venissero trasmessi/memorizzati con protocolli crittografati.
Ancora, altra misura di sicurezza finalizzata al controllo delle risorse è la cd Content Security Policy – CSP cioè a dire quel meccanismo di sicurezza tale da limitare le fonti da cui un browser può caricare risorse, come JavaScript, CSS e immagini.
JavaScript e consenso privacy: luci e ombre
Nella user experience dell’utente ecco che quando viene in luce il modulo del consenso, arrivano i primi punti se non delicati sicuramente di attenzione.
Le regole non sono molte, ma devono essere ben chiare e rispettate.
Anzitutto i famosi cookie banner che notiamo navigando in taluni siti internet sono tenuti a richiedere il consenso esplicito dell’utente prima di impostare cookie non essenziali.
Poi le preferenze devono essere ben chiare e molto semplici, mettendo gli utenti nella possibilità di gestire le proprie scelte (preferenziali) circa i cookie/tracciamento.
I requisiti del consenso e i relativi moduli per essere conformi al GDPR devono rispondere essenzialmente a quattro domande:
- Perché si raccolgono i dati e come verranno utilizzati?
- Quali tipi di dati personali si raccolgono?
- Chi raccoglie i dati e quali terze parti, se presenti, vi avranno accesso?
- L’utente è (stato) in grado di comprendere a cosa sta dando il consenso?
Sebbene le risposte a queste semplici domande possano sembrare semplici in realtà nella pratica notiamo invece come non lo sia, e da qui gli aspetti che seguono.
Il fenomeno di “affaticamento del consenso”
Il fenomeno chiamato “affaticamento da consenso” è via via sempre più noto poiché vissuto da user experience divenute, di fatto, faticose.
Vuoi perché i moduli di consenso sono in realtà più complicati e cavillosi, vuoi perché l’utente medio spesso non ha voglia di leggere e flegga senza guardare.
I chatbot e gli script di terze parti
L’introduzione dei chatbot e simili di fatto non aiuta in questo. Di qui l’inserimento di Script di terze parti nei siti Web.
Ma come noto i JavaScript possono essere visualizzati e manipolati in vari modi, ad esempio tramite lo “skimming” digitale, il quale comporta il furto di dati particolari (ex sensibili) immessi dagli utenti nei moduli web. Tali dati possono includere informazioni di pagamento ottenute da pagine a pagamento (IP e PII).
Considerazioni finali
Concludiamo riportando alcune stime di Gartner che riferisce “il 45% delle organizzazioni avrà subito attacchi alle proprie supply chain software entro il 2025, trend che non potrà altro che intensificarsi, con i sistemi di AI rendendo gli attacchi più sofisticati, insidiosi e difficili da intercettare e prevenire”.
Sebbene JavaScript sia uno strumento potente, come sempre il governo dello stesso va nel suo utilizzo da doversi bilanciare con la necessità di consapevolmente proteggere la privacy degli utenti.