Anche grazie alla pandemia, i QR code sono spuntati su manifesti pubblicitari, tavoli da ristorante e cartelloni pubblicitari in tutto il mondo, invitando le persone a scansionarli per visualizzare menu e informazioni di marketing senza dover digitare un indirizzo web e per ridurre il contatto con le persone.
Con i codici QR è però ritornata anche una vecchia minaccia: quella dei manifesti malevoli, perché potenzialmente contengono URL di siti web di phishing.
Indice degli argomenti
Cosa è un codice QR
Un codice QR (Quick Response) è un tipo di codice a barre che può essere letto con uno scanner e oggigiorno anche con gli smartphone tramite la fotocamera.
Similmente ai codici a barre, un QR code rappresenta una codifica visuale di una informazione alfanumerica. I codici a barre sono limitati ai numeri, mentre i codici QR possono contenere stringhe alfanumeriche lunghe a piacere.
Il contenuto di un QR code è di fatto una sequenza di caratteri e numeri che possono contenere qualsiasi informazione, che viene interpretata dal programma che lo legge.
A partire dall’introduzione dei Green Pass, praticamente chiunque è venuto a conoscenza dell’esistenza e dell’utilizzo di questo tipo di codici, ed il loro uso si è esteso ovunque.
In pratica, i QR code erano in uso da qualche anno, ma senza particolare “entusiasmo”: nonostante i menu dei ristoranti e i manifesti o le confezioni li riportino da anni in un angolo, nessuno li ha mai veramente utilizzati.
I codici QR sono stati definiti per anni “the next big thing”. Ad esempio, Apple ha introdotto in iOS la capacità di leggere con la fotocamera i codici QR solo a partire dalla versione 11, nel 2017. Questa soluzione, però, era in attesa del momento ideale per diffondersi e la “scusa” è stata la necessità di mantenere il distanziamento fisico e ridurre al minimo l’interazione fra le persone.
Un recente studio del 2020, condotto da MobileIron, riporta che:
- l’84% delle persone ha già avuto occasione di scansionare un codice QR, di cui, il 32% nell’ultima settimana e il 26% nell’ultimo mese;
- negli ultimi sei mesi, il 38% degli intervistati ha scansionato un codice QR in un ristorante, bar o caffè, il 37% presso un rivenditore, e il 32% su un prodotto di consumo;
- il 53% degli intervistati desidera una maggiore diffusione dei codici QR;
- il 71% degli intervistati non riesce a distinguere un codice QR legittimo da uno malevolo.
A seguito della pandemia, i QR code sono “spuntati” su tavoli dei ristoranti e su manifesti e cartelloni pubblicitari in tutto il mondo, invitando le persone a scansionarli per visualizzare menu e informazioni di marketing senza dover digitare un indirizzo web e per ridurre il contatto con le persone.
Come funzionano i QR code
In genere portano ad una pagina web e vengono utilizzati, ad esempio, nei musei per fornire maggiori informazioni su un’opera d’arte o sui biglietti dei concerti per poter verificare se un biglietto è valido.
Sempre lo studio MobileIron citato riporta che, sebbene il 67% degli intervistati sappia che i codici QR possono aprire un URL, una frazione minoritaria sia consapevole delle altre azioni che i codici QR possono avviare.
Un codice QR può difatti contenere un indirizzo web, un contatto telefonico, un testo o qualsiasi altra stringa alfanumerica che possa venire interpretata dal telefono.
I principali sistemi operativi mobili interpretano infatti alcuni tipi di informazioni (tramite l’uso delle URI) e agiscono nativamente (per es., gli indirizzi web o i contatti telefonici che portano all’apertura automatica del browser o dell’agenda telefonica, o l’invio di SMS ad un certo numero), mentre altre informazioni (per es., quelle contenute nei QR code del Green Pass o i codici QR sui biglietti dei concerti) vengono lette, ma non interpretate o interpretate solo se esiste una app connessa alla specifica URI.
Tramite le informazioni contenute nei codici QR si possono anche effettuare pagamenti online (per es.: Satispay o altri sistemi di e-payment, come Google Scan-and-Pay). I negozi possono visualizzare un codice QR che può essere scansionato con molte app bancarie per pagare. Con codici QR si può anche far eseguire al browser un bookmarklet in JavaScript.
QR code malevoli: i problemi di sicurezza
In generale, quindi, la validazione delle informazioni di un codice QR viene demandata alle applicazioni associate alla URI in esso contenuta (app native o installate).
Il controllo, come qualsiasi altro tipo di user input validation, potrebbe non essere efficiente.
Di conseguenza, con i codici QR è ritornata anche una vecchia minaccia, quella dei codici QR malevoli, perché potenzialmente contengono informazioni false o URL di siti web di phishing o un watering hole attack.
Lo schema generale di attacco è quello del drive-by-download nel quale, tramite un tag o un poster opportunamente modificato, l’utente viene guidato a un sito compromesso o fasullo.
Come esempio di watering hole, si pensi al sito di un ristorante, implementato senza troppe attenzioni alla sicurezza, che viene hackerato e rimane in attesa che una specifica versione vulnerabile di iOS/Android si connetta dopo aver scansionato un codice QR.
Recentemente, il progetto S.T.O.P. (Surveillance Technology Oversight Project) ha voluto fare uno studio per mostrare quanto delicata sia la questione, spargendo volantini e cartelli pubblicitari di falsi eventi, come spettacoli comici, aperture di luoghi e serate di curiosità in giro per New York. Ogni evento con un QR code fasullo. Centinaia di persone hanno scansionato i codici QR e visitato i siti web associati, che riportavano messaggi sulla sicurezza informatica.
I risultati sono stati interessanti: “Ciò che siamo riusciti a scoprire è che, semplicemente inserendo questi codici QR generici in giro per la città, siamo stati in grado di convincere centinaia e centinaia di persone a fare clic in un brevissimo lasso di tempo”, ha detto Albert Fox Cahn, fondatore del progetto.
Fonte progetto S.T.O.P..
Ragionando in un’ottica più aggressiva, un’idea è quella di creare dei QR code fasulli e sovrapporli tramite adesivi ai QR code originali in ristoranti, poster e altri cartelloni sparsi per la città: la vittima, non facendo caso al fatto che il codice QR è sovrapposto all’originale, lo scansiona senza particolari dubbi.
L’unica difesa per questo tipo di minacce interviene quanto l’informazione viene interpretata (per es., un URL viene aperto dal browser) e, quindi, spesso a livello di antivirus o filtri per la navigazione.
Questo controllo ha, tuttavia, delle limitazioni perché funziona tramite blacklist o euristiche (per es., un URL di un sito di phishing contiene un nome di un brand).
In altri casi, però, le difese semplicemente non sono possibili: ad esempio, nel caso di un codice QR che contiene un numero di telefono o un contatto, se questo numero venisse sostituito con uno fasullo per un attacco di vishing, non ci sarebbe la possibilità di accorgersene (a meno di installare applicazioni di controllo delle chiamate come ad esempio TrueCaller).
Un altro recente esempio, di natura differente, ma che coinvolge l’abitudine di vedere codice QR dappertutto, è rappresentato da una campagna di phishing contenente un codice QR sottoforma di immagine al posto del solito URL malevolo.
Una tecnica mai vista in precedenza per tentare di intrufolarsi nelle e-mail di phishing superando i filtri di sicurezza aziendali. Abnormal Security ha riportato una campagna di phishing tra il settembre e l’ottobre 2021 contenente un codice QR, invece del solito allegato o collegamento URL dannoso.
I suggerimenti per proteggersi dai QR code malevoli
Per concludere, i codici QR sono rimasti relativamente nell’ombra per anni, trovando numerosissime applicazioni, ma senza diventare uno strumento di uso comune per tutti.
La pandemia ha cambiato lo scenario imponendo i codici QR come una ottima soluzione, a basso costo, per ridurre i contatti con le persone, durante le fasi peggiori della pandemia. L’abitudine all’uso ha fatto riscoprire uno strumento relativamente comodo a prescindere dalla situazione pandemica. Con esso però sono nate nuove forme di attacco che sfruttano la scarsa attenzione a cosa si sta inquadrando con la telecamera, i relativi automatismi delle persone e la mancanza di difese efficaci nella maggior parte dei terminali mobili.
Il suggerimento per ora è quello di fare sempre molta attenzione prima di accettare l’azione associata ad un codice QR ed essere consci delle minacce informatiche associate.
Va comunque considerato che, per sua natura, la minaccia cyber connessa ai codici QR non è puramente cyber: è richiesto infatti l’accesso fisico ad un luogo per sostituire i codici presenti o posizionare quelli nuovi.
Fornire informazioni a prova di manomissione: un caso reale
La domanda, quindi, è come fornire una fonte di informazioni affidabile e a prova di manomissione.
Oltre al costoso supporto che può essere fornito da organismi di certificazione di terze parti, molte aziende hanno recentemente cercato una risposta in una piattaforma blockchain, integrata con il lettore QR, che valida subito l’informazione letta.
Cefriel ha partecipato allo sviluppo di una soluzione simile, per il tracciamento della filiera del pane, nell’ambito del progetto “Alle origini del pane. Dal campo al panificio con la blockchain”, realizzato da IeT Hub (Innovation & Technology Hub) con il supporto tecnologico di Genuine Way e di Cefriel, finanziato da Regione Lombardia e con la collaborazione di Aspan (Associazione Panificatori della provincia di Bergamo), Ascom Confcommercio Bergamo, Coldiretti Bergamo, Confimi Industria e Coesi Confcooperative Bergamo.
Nello specifico, ha gestito il coordinamento scientifico e progettuale, la definizione dei requisiti, la selezione della tecnologia e il supporto al pilota. Lo scopo è stato quello di definire un metodo per il controllo di processo all’interno della filiera del pane e individuare e sperimentare un sistema pilota per il monitoraggio e il tracciamento basato su tecnologia blockchain.
Nel progetto è stato sviluppato un codice QR che verifica la provenienza, la qualità e la sostenibilità del prodotto che viene scannerizzato. Un “Certificato di qualità Blockchain” con un codice QR che, se scansionato tramite uno smartphone, reindirizza ad una pagina di destinazione online contenente informazioni dalle fasi di produzione alle fasi di lavorazione e confezionamento.
Schema di funzionamento del progetto di tracciamento della filiera del pane (fonte: Cefriel).
QR code malevoli: cosa ci insegna la vulnerabilità Log4Shell
Nulla vieta di estendere soluzioni basate sulle Blockchain anche per validare altri tipi di codici QR, come quelli che portano ad indirizzi web generici. Un esempio di questo tipo di evoluzioni lo ha offerto la recente vulnerabilità scoperta nel diffusissimo sistema di logging Log4J di Apache.
Senza entrare nei dettagli, si tratta di un problema di input validation, esattamente come quello dei codici QR malevoli, ed i servizi vulnerabili sono numerosi.
La vulnerabilità in questione ha portato ad un nuovo exploit che si è diffuso rapidamente, chiamato Log4Shell e classificato con un punteggio di gravità della scala CVSS di 10 su 10. Anche la piattaforma iCloud è vulnerabile e la vulnerabilità può persino essere inserita in un codice QR, rendendola ancora più pericolosa.