Cattive implementazioni nella generazione delle chiavi

by admin on

Interessante articolo pubblicato da V12 il 27 ottobre 2026 che descrive una grave vulnerabilità nella generazione delle chiavi crittografiche utilizzate da alcuni software per proteggere i PDF. Il problema riguarda implementazioni che dichiarano di utilizzare AES-256, ma generano le chiavi con fonti di casualità insufficienti, per cui la protezione può essere aggirata senza conoscere la password.

Scendiamo nello specifico di uno dei casi presentati, quello di Foxit PDF Reader 2026.1.3.36551.
La falla di sicurezza deriva da codice storico inserito in Foxit, presente già nel 2014 in PDFium.

Il problema è nel modo in cui viene generata la chiave AES-256, Foxit utilizza SHA-256 per produrre una chiave di 256 bit. L’input dell’hash comprende il timestamp corrente, 32 byte di memoria non inizializzata e una costante. Quei 32 byte risultano azzerati (hanno valore 0) e non aggiungono alcuna casualità, pertanto, l’unico elemento variabile realmente significativo è il timestamp.

Un attaccante può quindi provare sistematicamente i timestamp possibili, ricostruire le chiavi candidate e verificarle attraverso il blocco /Perms del PDF, che contiene informazioni riconoscibili.

Il risultato è impressionante: secondo i ricercatori, un computer moderno può recuperare la chiave in pochi millisecondi per documenti creati recentemente. Anche cercando tutti i timestamp dal 1970 a oggi, il test richiede circa 5 secondi su una CPU Ryzen 9 7950X.
Le conseguenze sono non trascurabili; i PDF protetti possono essere decrittati senza password, le restrizioni di stampa, copia e modifica possono essere aggirate.
Ciò insegna che l’uso di un algoritmo di crittografia robusto come AES-256 non offre alcuna protezione effettiva se la chiave viene generata male.


Riferimenti: https://v12.sh/blog/the-case-of-the-9bit-aes-key

Written by: admin

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *