Ricercatori falsificano firme RSA senza decifrare la chiave! Scopri come!

I sistemi di firma cieca come Privacy Pass, utilizzati da Apple e Cloudflare, potrebbero essere esposti

Da considerare: Alcuni ricercatori hanno scoperto un metodo per falsificare determinate firme RSA senza dover decomporre la chiave su cui si basano, mettendo in discussione un’assunzione consolidata relativa a uno dei più vecchi sistemi di crittografia a chiave pubblica di Internet. L’attacco sembra non minacciare le implementazioni RSA attualmente più diffuse, incluse quelle protette con padding PKCS o PSS. Tuttavia, questi risultati hanno suscitato interesse perché dimostrano che violare le firme RSA potrebbe non richiedere sempre il recupero della chiave privata.

La tecnica si rivela praticabile contro le chiavi RSA da 1.024 bit, che sono già considerate obsolete. Inoltre, riduce la sicurezza stimata delle chiavi da 2.048 bit e 4.096 bit quando utilizzate in sistemi di firma cieca vulnerabili.

Cluster di server e vecchio hardware che rappresenta calcoli intensivi per attacchi su chiavi RSA obsolete
Calcolo intensivo usato nella dimostrazione contro chiavi RSA da 1.024 bit.

“Se questo risultato fosse confermato dalla revisione paritaria, rappresenterebbe davvero una svolta concettuale,” ha detto a Ars Technica Karsten Nohl, esperto di crittografia e responsabile dell’innovazione presso Allurity. “Si è sempre pensato che rompere RSA fosse difficile quanto fattorizzare grandi numeri interi. Il ricercatore suggerisce che potresti teoricamente violare RSA senza decifrare la sua chiave.”

La sicurezza di RSA si è tradizionalmente basata sulla difficoltà di fattorizzare un grande numero nei suoi due componenti primi. La chiave pubblica contiene quel grande numero, mentre la chiave privata deriva dai fattori. La visione standard era che un attaccante dovesse fattorizzare il numero prima di poter creare una firma valida.

Il nuovo studio adotta un approccio diverso. Utilizza una versione dell’algoritmo di cribro del campo numerico speciale, insieme a un oracolo disponibile in alcuni protocolli di firma cieca. Un oracolo è una funzionalità del sistema che rivela informazioni utili in risposta a richieste specifiche. Effettuando un numero molto elevato di richieste ed elaborando i risultati, un attaccante può raccogliere abbastanza informazioni per generare una firma valida.

LEGGI  Podcast Apple@Work: il ruolo di Apple nella telemedicina
Ricercatore che lavora su algoritmi matematici e appunti su cribro del campo numerico speciale
Il nuovo approccio usa una versione dello sieve del campo numerico speciale combinato con un oracolo.

Fattorizzare una chiave RSA da 1.024 bit è stimato richiedere circa 2^80 operazioni e tra 500.000 e 1 milione di anni-core di CPU. I ricercatori hanno affermato che il loro attacco di falsificazione ha utilizzato circa 2^65 operazioni e 1.380 anni-core di CPU. Hanno realizzato il lavoro nel corso di diversi mesi utilizzando un cluster di CPU accademico.

Nadia Heninger, professoressa all’Università della California a San Diego e coautrice della ricerca, ha dichiarato che il risultato si discosta da quello che i crittografi si aspettavano.

“I crittografi pensavano che l’unico modo per calcolare firme digitali RSA valide fosse prima calcolare la chiave privata attraverso la fattorizzazione, e poi utilizzare la chiave privata per calcolare le firme,” ha detto. “Per le RSA da 1.024 bit, si pensava fosse molto costoso, anche se probabilmente fattibile se si dispone delle risorse computazionali delle grandi aziende tecnologiche o della NSA – nell’ordine di decine di milioni di dollari di tempo di calcolo per una singola chiave. Per le RSA da 2.048 bit, si pensava fosse completamente irraggiungibile.”

Gli autori stimano che l’attacco riduce la sicurezza effettiva delle RSA da 1.024 bit a circa 2^65 operazioni. Per le chiavi da 2.048 bit e 4.096 bit, pongono le cifre rispettivamente a 2^90 e 2^119. Le linee guida sulla sicurezza dell’NSA, NIST e ENISA richiedono almeno 128 bit di sicurezza.

Il team ha dichiarato che le sue stime potrebbero migliorare. La loro implementazione è stata scritta manualmente e non ha utilizzato GPU o strumenti AI. I ricercatori hanno affermato che questi strumenti “quasi certamente” abbasseranno il costo degli attacchi futuri.

L’attacco è limitato alle implementazioni di firme cieche, a volte chiamate RSA da manuale. Questi sistemi permettono a una parte di firmare informazioni senza vedere i suoi contenuti. La maggior parte delle implementazioni RSA non funziona in questo modo. Utilizzano il padding PKCS o PSS, che modifica i dati prima che vengano criptati o firmati e impedisce il comportamento su cui si basa l’attacco.

LEGGI  Steam Beta Introduce Nuovo Overlay di Metriche di Prestazione in Gioco, Mostra Frame DLSS

Un esempio pratico di firme cieche è Privacy Pass, un protocollo che permette agli utenti di dimostrare di essere autorizzati senza esporre la loro identità. Apple, Cloudflare e altre organizzazioni utilizzano Privacy Pass. I ricercatori stimano che attaccare un sistema del genere richiederebbe la richiesta di 2^43 token da un emittente.

Heninger ha detto che il volume è grande ma non necessariamente oltre la portata di un importante servizio online. “Sembra molto, ma è dello stesso ordine di grandezza del traffico di rete che Cloudflare ha dichiarato pubblicamente di gestire in circa un giorno.”

Molti sistemi di Privacy Pass ruotano regolarmente le loro chiavi, rendendo più difficile un attacco riducendo il tempo disponibile per raccogliere i token. Tuttavia, ciò non elimina il rischio.

Messaggi simili: