Cifratura dei file PDF: una questione di sicurezza

Il ricercatore Fabian Ising, durante il suo intervento al Chaos Communication Congress, ha evidenziato i limiti della cifratura dei file PDF.

A seconda delle specifiche del formato del file, i documenti PDF supportano la cifratura, impiegando l’algoritmo AES con modalità Cipher Block Chaining. Per cui, almeno in teoria, chiunque cifri un file PDF dovrebbe essere sicuro che solo chi ha la password di decifrazione potrà visualizzare cosa c’è nel file. Proseguendo il nostro studio sulla sicurezza dei PDF, un team di ricercatori di diverse università della Germania ha testato l’affidabilità della cifratura del formato PDF. Fabian Ising, dell’Università di Scienze Applicate di Münster, ha presentato i risultati che, anticipiamo, sono piuttosto deludenti.

In teoria, le aziende utilizzano PDF cifrati per trasferire i dati quando utilizzano un canale non sicuro o poco affidabile (ad esempio, quando si vuole caricare un file su un servizio su cloud pubblico). I ricercatori di sicurezza hanno cercato una maniera per modificare il file originale di modo che, una volta inserita la password, le informazioni presenti nel PDF venissero inviate a terze parti ma senza che il destinatario percepisse cambiamenti evidenti.

I ricercatori hanno sviluppato due linee di attacco che consentono loro l’accesso al contenuto cifrato come terze parti. Il primo attacco (esfiltrazione diretta) non richiede particolari abilità nel campo della cifratura, solo una conoscenza delle specifiche del formato PDF. I ricercatori lo hanno descritto come un “hackeraggio della cifratura senza toccare la cifratura”. Il secondo, detto attacco di malleabilità, è molto più complicato e richiede conoscenza della modalità Cipher Block Chaining.

Chi utilizza i PDF cifrati e perché?

Le aziende si servono dei PDF cifrati per molti scopi:

  • Le banche li utilizzano quando c’è uno scambio di documenti elettronici con i clienti per motivi di riservatezza;
  • Le stampanti multifunzione accettano documenti scannerizzati via e-mail e file PDF protetti da password se il mittente seleziona l’opzione corrispondente;
  • I dispositivi medicali di diagnostica utilizzano i PDF sicuri per inviare i risultati degli esami a pazienti e medici;
  • Le agenzie governative (come il Dipartimento di Giustizia statunitense) accettano documenti in entrata in formato PDF cifrati.

Gli utenti hanno a disposizione diversi plugin di applicazioni e-mail che consentono di inviare documenti come PDF cifrati, segnale che si tratta di un’esigenza reale.

Attacco di esfiltrazione diretta

Quando si cifra un file PDF, viene cifrato solo il contenuto (oggetti nel file, caratterizzati come string o stream di dati). Gli oggetti restanti, che determinano la struttura del documento, non vengono cifrati. In altre parole, potete ancora scoprire il numero e la dimensione delle pagine, gli oggetti e i link, informazioni riservate che non dovrebbero essere lasciate a potenziali cybercriminali, che possono sfruttarle per aggirare la cifratura.

I ricercatori innanzitutto si sono chiesti se sarebbero riusciti a aggiungere informazioni proprie al file, il che permetterebbe di creare un canale di esfiltrazione. Dalla documentazione del formato hanno appreso che i PDF permettono il controllo granulare sulla cifratura in modo da cifrare, ad esempio, solo gli oggetti di tipo “string” od oggetti di tipo “stream“, lasciando il resto del contenuto senza cifratura.

Inoltre, non sono state implementate revisioni di integrità: se si aggiunge qualcosa a un documento cifrato, gli utenti non riceveranno alcun avviso. Quel “qualcosa” potrebbe essere una funzione per aggiungere un modulo, il che consentirebbe di accludere a un file PDF un modulo che invia dati a terze parti (ad esempio, l’intero contenuto del documento). La funzione può essere collegata anche a un’azione come quella di aprire il documento.

Abbiamo descritto solo un esempio di esfiltrazione, ma ci sono tante altre opzioni. I cybercriminali potrebbero aggiungere semplicemente un link al loro sito con l’intero contenuto del file aggiunto all’URL. Oppure potrebbero utilizzare JavaScript per inviare ovunque i contenuti decifrati. Alcuni lettori PDF chiedono la verifica dell’utente prima di comunicare con il sito ma non tutti (e non tutti gli utenti prestano troppa attenzione prima di acconsentire), lasciando spazio a tecniche di ingegneria sociale da parte dei cybercriminali.

Attacco di malleabilità

Il secondo attacco alla cifratura dei file PDF utilizza uno svantaggio della modalità Cipher Block Chaining (CBC), ovvero la mancanza di controllo dell’integrità. Alla base di questo attacco conosciuto c’è il fatto che il cybercriminale che conosce parte dell’informazione in plain-text cifrata può cambiare il contenuto di un blocco.

Tuttavia, a seconda delle specifiche del formato PDF, ogni volta che viene cifrato il contenuto di un file PDF, si cifrano anche diverse autorizzazioni (ad esempio, dare all’autore la possibilità di modificare il documento e negare questa opzione a un semplice lettore). In teoria, serve per evitare che i cybercriminali manomettano le autorizzazioni, che sono cifrate con la stessa chiave AES del resto del documento.

Allo stesso tempo, queste autorizzazioni sono immagazzinate anche in un file in formato non cifrato. Ciò vuol dire di default che i cybercriminali sanno a cosa corrispondono quei 12 byte di file e, di conseguenza, possono manomettere il Cipher Block Chaining per colpire e manipolare i dati aggiungendo, ad esempio, il meccanismo di esfiltrazione dei dati per inviare i contenuti del file a un sito di terze parti.

Risultati

I ricercatori hanno testato le loro tecniche su 23 lettori PDF e 4 browser, riscontrando che tutti erano potenzialmente vulnerabili almeno in parte a uno o più di questi attacchi.

Tavola riassuntiva delle vulnerabilità riscontrate nei lettori PDF. Fonte: https://media.ccc.de/v/36c3-10832-how_to_break_pdfs

Tavola riassuntiva delle vulnerabilità riscontrate nei lettori PDF. Fonte.

Purtroppo, nessuna soluzione client può mitigare completamente le debolezze del formato. Non è possible bloccare l’esfiltrazione dei canali senza inficiare l’essenza stesso del formato. I ricercatori hanno contattato gli sviluppatori dei software e hanno informato delle problematiche; alcune compagnie, compresa Apple, hanno provato ad aiutare sottolineando nelle notifiche che il file sta accedendo a un sito di terze parti. Altri hanno detto di averci provano ma che “non possono risolvere un problema che non è risolvibile”.

Se dovete inviare dati riservati, il nostro consiglio è di utilizzare un sistema di sicurezza alternativo per proteggere le informazioni. Ad esempio, potete utilizzare le nostre soluzioni di sicurezza per creare container cifrati.

Consigli