How a Payment Lookup Oracle Confirms Predictable Identifiers
Questo articolo dimostra che gli oracoli di risoluzione dei pagamenti nazionali, come il sistema PromptPay della Thailandia, consentono la conferma deterministica degli identificatori nazionali previsti permettendo agli attaccanti di verificare le ipotesi contro dati pubblici e record trapelati, una vulnerabilità esacerbata dal fatto che i nomi dei destinatari vengono restituiti non oscurati nonostante gli sforzi di mascheramento parziale dei nomi.
Articolo originale sotto licenza CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Questa è una spiegazione generata dall'IA dell'articolo qui sotto. Non è stata scritta né approvata dagli autori. Per precisione tecnica, consulta l'articolo originale. Leggi il disclaimer completo
Nel mondo moderno dei trasferimenti di denaro istantanei, un semplice controllo di sicurezza è diventato uno strumento potente per l'invasione della privacy. Quando si invia denaro a un amico utilizzando un numero di telefono o un codice di identificazione nazionale invece di un lungo numero di conto bancario, la propria app bancaria esegue una rapida ricerca. Chiede a un sistema centrale: "A chi appartiene questo numero?" e visualizza il nome sullo schermo in modo che si possa essere certi di inviare denaro alla persona giusta. Questa funzione, nota come oracolo di risoluzione, è progettata per prevenire errori e frodi. Tuttavia, i ricercatori hanno scoperto che questo stesso meccanismo, che serve a confermare un'identità nota, può anche essere utilizzato per scoprire l'identità di uno sconosciuto. Il problema sorge quando questo sistema di ricerca aperto viene combinato con il fatto che molti numeri di identificazione nazionale non sono casuali; seguono uno schema prevedibile basato su date di nascita e località. In passato, gli esperti di sicurezza sapevano che questi numeri potevano essere indovinati, ma credevano che non ci fosse modo di sapere se un tentativo fosse corretto. La nuova scoperta è che il sistema di pagamento stesso fornisce la risposta, trasformando un tentativo casuale in un fatto confermato.
Due ricercatori della King Mongkut's University of Technology Thonburi, in Thailandia, si sono posti l'obiettivo di misurare esattamente quanto pericolo crei questa combinazione. Si sono concentrati sul sistema PromptPay della Thailandia, una rete di pagamenti istantanei ampiamente utilizzata dove le persone registrano il proprio numero di cellulare o la propria carta d'identità nazionale per ricevere denaro. I ricercatori non hanno cercato di rubare denaro o di hackerare i sistemi informatici di alcuna banca. Al contrario, hanno trattato l'app di pagamento come uno strumento per porre domande e hanno analizzato le risposte fornite. Hanno iniziato esaminando la struttura della carta d'identità nazionale thailandese. È un numero di tredici cifre in cui le prime cifre indicano la provincia e il distretto in cui la persona è stata registrata, e l'ultima cifra è un controllo matematico che assicura la validità del numero. A causa di questa struttura, il numero totale di possibili numeri d'identità validi è molto più piccolo di quanto sembri. I ricercatori hanno calcolato che le regole del sistema riducono il pool di potenziali candidati di un fattore di centotrentacinque prima ancora che venga conosciuta qualsiasi informazione specifica su una persona.
Lo studio ha poi esaminato cosa accade quando un attaccante possiede già un elenco di numeri d'identità trapelati, una realtà nota nel mondo digitale. Un recente leak pubblico ha esposto oltre 1,2 milioni di numeri di identità nazionali thailandesi. In passato, possedere un tale elenco era solo metà della battaglia; un attaccante aveva un numero ma non aveva modo di sapere il nome ad esso associato. I ricercatori hanno dimostrato che il sistema di ricerca dei pagamenti risolve questo pezzo mancante. Inserendo un numero d'identità trapelato in un'app bancaria, il sistema restituisce immediatamente il nome completo del titolare del conto. Questo trasforma un elenco statico di numeri in una directory viva e verificata di nomi. I ricercatori hanno dimostrato che anche se alcune cifre di un numero d'identità sono nascoste o oscurate in un documento, le regole matematiche della carta d'identità limitano il numero di possibili combinazioni mancanti a un insieme molto piccolo. Un utente potrebbe semplicemente provare ciascuna di queste poche possibilità nell'app di pagamento, e il sistema confermerebbe quella corretta visualizzando il nome, mentre rifiuterebbe le altre.
Per capire quanto funzionino le attuali misure di privacy, i ricercatori hanno anche esaminato una nuova politica adottata a Singapore, dove le app di pagamento ora nascondono parti del nome di una persona sullo schermo per evitare che osservatori casuali possano leggerlo. Hanno testato questa idea utilizzando un database di migliaia di nomi thailandesi. Hanno scoperto che il metodo di Singapore, che nasconde solo la seconda metà di ogni nome, è sorprendentemente debole. Poiché i cognomi thailandesi sono spesso unici per una singola famiglia, e poiché la prima metà di un nome è spesso sufficiente per identificare una persona, la maschera lascia il nome effettivamente visibile in più della metà dei casi. I ricercatori hanno scoperto che, per una grande parte della popolazione, il nome mascherato è abbastanza unico da permettere a una persona di identificare l'individuo. Più importante ancora, hanno dimostrato che questo tipo di mascheramento non ferma un attaccante determinato che possiede già un nome candidato da testare; se un attaccante sospetta che un nome appartenga a un determinato numero d'identità, può semplicemente controllare se la versione mascherata corrisponde al suo tentativo, rendendo la protezione della visualizzazione inutile contro un attacco mirato.
I ricercatori si sono poi rivolti alle banche stesse per vedere cosa accada realmente in Thailandia. Hanno utilizzato i propri conti bancari e telefoni cellulari per testare il sistema attraverso sette diverse banche, incluse istituzioni statali, private, straniere e islamiche. In ogni singolo caso, senza eccezioni, le app visualizzavano il nome completo e non mascherato del titolare del conto. Non c'era alcuna redazione, nessuna occultazione di lettere e nessuna variazione tra le diverse banche. Ciò ha confermato che il sistema è uniforme in tutto il paese e che le attuali protezioni della privacy sono inesistenti. I ricercatori hanno anche osservato che il sistema non li ha rallentati o fermati quando hanno chiesto ripetutamente lo stesso nome, suggerendo che non esistono limiti severi su quante volte una persona possa cercare un numero d'identità in un breve periodo.
La conclusione fondamentale del lavoro è che il pericolo non risiede nella visualizzazione del nome, ma nella capacità di porre la domanda. I ricercatori sostengono che nascondere semplicemente il nome sullo schermo sia la soluzione sbagliata perché non ferma il processo di conferma sottostante. Se un attaccante possiede un elenco di numeri trapelati, il sistema di pagamento agisce come una macchina che conferma quali numeri sono reali e chi ne è il proprietario. I ricercatori suggeriscono che la soluzione debba essere controllare le domande, non le risposte. Ciò significa che il sistema dovrebbe limitare quante volte un singolo utente può cercare diversi numeri in un giorno, o segnalare modelli di ricerca insoliti. Essi sottolineano che questo non è un bug del software che può essere corretto con una patch, ma una caratteristica di design del sistema di pagamento che serve a uno scopo utile per gli utenti onesti pur creando un rischio per la privacy. Lo studio conclude che, affinché i sistemi di pagamento istantanei siano sicuri, gli operatori devono implementare limiti rigorosi su quanto spesso queste ricerche possono essere eseguite, assicurando che il sistema rimanga uno strumento per confermare un destinatario noto piuttosto che una directory per scoprire sconosciuti.
Sommerso dagli articoli nel tuo campo?
Ricevi digest giornalieri degli articoli più recenti corrispondenti alle tue parole chiave di ricerca — con riassunti tecnici, nella tua lingua.