Cyberattacchi alimentati dall'intelligenza artificiale: Come individuare, prevenire e difendersi dalle minacce intelligenti

Leggi ora
Per le traduzioni dei siti utilizziamo l'intelligenza artificiale e, sebbene ci sforziamo di essere accurati, non sempre le traduzioni sono precise al 100%. La vostra comprensione è apprezzata.

Come riconoscere e rimediare alla vulnerabilità comune di Foxit PDF Reader

da OPSWAT
Condividi questo post

Siamo lieti di presentare una serie di blog di analisi tecnica incentrati su varie vulnerabilità ed esposizioni comuni (CVE), identificate e corrette con le nostre tecnologie avanzate di rilevamento delle minacce.Tutte le ricerche sono svolte dagli studenti laureati che partecipano al programma OPSWAT Cybersecurity Fellowship, lanciato nel settembre 2023. 

In questo blog spiegheremo la vulnerabilità di Foxit PDF Reader CVE- 2020-14425 e come le organizzazioni possono proteggersi dallo sfruttamento.

Ritratti di Thai To dell'Università di Scienze di Ho Chi Minh e di Tai Tran dell'Università di Tecnologia dell'Informazione, rappresentati a un evento professionale
Gli studenti hanno partecipato al programma di borse di studio OPSWAT .

Foxit PDF Reader

Foxit PDF Reader è uno strumento PDF sviluppato da Foxit Software, che offre una serie di funzioni per la creazione, la visualizzazione, la modifica e la firma digitale di documenti PDF. La versione gratuita di Foxit Reader ha guadagnato popolarità ed è utilizzata da oltre 700 milioni di utenti. 

Per migliorare le sue capacità e la sua flessibilità, Foxit PDF Reader supporta le estensioni JavaScript, offrendo agli utenti opzioni di personalizzazione; tuttavia, questo introduce anche un potenziale rischio per la sicurezza, rendendo il software un bersaglio per gli aggressori.

Schermata di un documento PDF aperto in un'applicazione di lettura, che mostra un articolo sulla "Colour Curation" insieme a immagini di copertine di libri colorate.

14425

Descrizione

Una vulnerabilità in Foxit PDF Reader prima della versione 10.0 consente agli aggressori di eseguire codice remoto sul dispositivo della vittima quando viene aperto un file PDF appositamente creato. Questa vulnerabilità è dovuta alla debolezza della funzione JavaScript app.opencPDFWebPage. Se Foxit Reader è configurato per utilizzare il browser predefinito per aprire gli URL incorporati nel file PDF, il codice dannoso incorporato nel file eseguibile può essere eseguito senza che venga emesso un avviso di sicurezza.

Impatto

Un file PDF creato per sfruttare questa CVE può essere distribuito tramite una campagna di phishing via e-mail o collegamenti incorporati dannosi. Se l'utente apre il file PDF compromesso utilizzando la versione vulnerabile di Foxit Reader, l'aggressore potrebbe ottenere il controllo del dispositivo della vittima attraverso l'esecuzione di codice remoto.

Schermata che mostra una tabella di gravità e metriche CVSS (Common Vulnerability Scoring System) con un punteggio di base elevato di 7,8 per una vulnerabilità, proveniente dal National Vulnerability Database (NVD) del NIST.

Analisi CVE-2020-14425

Struttura dei file PDF

I file PDF sono organizzati con una struttura ad albero, composta da una sezione di intestazione, una sezione di corpo, una tabella di riferimenti incrociati e una sezione di rimando.

  • L'intestazione inizia con %PDF-1.x, che indica la versione del formato PDF. Attualmente, la versione del formato è compresa tra 1.0 e 1.7. La sezione dell'intestazione include anche i metadati del documento, come l'autore, la data di creazione e altre informazioni rilevanti. 
  • Il corpo comprende l'intero contenuto del file PDF, strutturato in oggetti come pagine, flussi di testo, font, moduli, codice JavaScript e altri elementi. 
  • La tabella dei riferimenti incrociati (tabella Xref) contiene il riferimento e l'offset in byte per tutti gli oggetti del file PDF. Consente di accedere rapidamente agli oggetti senza dover leggere l'intero file. 
  • Il trailer memorizza informazioni aggiuntive essenziali per la localizzazione della tabella xref, come il numero totale di voci della tabella xref e il puntatore al suo inizio.
Diagramma che rappresenta un formato di documento strutturato con un'intestazione, un corpo e un trailer, collegato a un diagramma gerarchico di un nodo radice che si ramifica in nodi intermedi.

Poiché il corpo contiene gli oggetti sensibili dei file PDF, gli attacchi si concentrano spesso sull'iniezione di codice dannoso in questo componente.

Potenziali minacce associate ai file PDF

I file PDF sono diventati un bersaglio per gli aggressori a causa della loro ubiquità. Poiché i file PDF possono contenere codice JavaScript, possono essere utilizzati per eseguire vari attacchi quando vengono aperti da un browser, come Denial of Service (DoS), Open Redirect o Cross-Site Scripting (XSS). 

Inoltre, gli aggressori possono utilizzare alcune tecniche sfruttabili come Use After Free (UAF) e Buffer Overflow (BoF). Possono anche sfruttare la gestione dei guasti del software per eseguire un attacco RCE (Remote Code Execution) sul sistema della vittima. Di conseguenza, un file PDF potrebbe contenere un ransomware, che cripta i dati sul computer e richiede un riscatto significativo per il recupero, oppure gli aggressori potrebbero ottenere il pieno controllo del computer della vittima.

Come funziona CVE-2020-14425

In Foxit Reader, quando l'URL di una pagina web è incorporato, gli utenti hanno due opzioni di visualizzazione: visualizzare la pagina web all'interno di Foxit Reader o utilizzare il browser predefinito sul dispositivo dell'utente. Nella configurazione predefinita, Foxit Reader accede internamente alla pagina web incorporata. All'interno del contenuto del PDF, per richiedere l'apertura di una pagina web, Foxit Reader utilizza la funzione OpencPDFWebPage, un JavaScript API progettato per avviare l'apertura di un URL di pagina web incorporato nel PDF.

Schermata che mostra l'interfaccia di Foxit PhantomPDF, con barre degli strumenti per le informazioni sulla licenza e gli aggiornamenti, con una console JavaScript aperta che esegue un comando.

Tuttavia, in questo API esiste una vulnerabilità Improper Input Validation che consente agli aggressori di inserire un percorso di file locale nella funzione opencPDFWebPage. Di conseguenza, la funzione può aprire il file dannoso con il percorso allegato ed eseguire il file eseguibile. Questa falla consente agli aggressori di lanciare il payload memorizzato sul computer della vittima e di ottenere l'esecuzione di codice in modalità remota.

L'opzione di aprire la pagina web all'interno di Foxit Reader, un requisito per IE 10 o superiore, fa scattare un dialogo di avviso durante un tentativo di exploit, mentre se l'opzione è impostata per utilizzare il browser predefinito, bypassa l'avviso di sicurezza.

Schermata di una console JavaScript che esegue un comando per aprire un percorso di file, attivando un avviso di sicurezza sull'esecuzione o il salvataggio di 'calc.exe', una comune applicazione di calcolo di Windows.

Sfruttamento delle vulnerabilità

Scenario di attacco
Diagramma di flusso che illustra un attacco informatico tramite un file ZIP contenente un payload dannoso, la sua consegna e la compromissione della vittima.

Con la vulnerabilità identificata, un potenziale vettore di attacco prevede un attacco di phishing che utilizza il file PDF come caricatore per eseguire un payload allegato nascosto. In questo scenario, l'attore della minaccia invia un file ZIP contenente un file PDF e un file eseguibile nascosto alla vittima, con l'intento di ingannarla e convincerla ad aprire il documento. Il CVE di Foxit Reader consente quindi al codice JavaScript incorporato di eseguire il file eseguibile nascosto, stabilendo una connessione reverse shell al computer dell'aggressore.

Per iniettare codice JavaScript nel file PDF, l'aggressore può modificare direttamente il file di contenuto PDF o utilizzare strumenti come Foxit Phantom PDF. Il codice dannoso definisce il percorso del file dannoso ed esegue il codice dannoso utilizzando la funzione opencPDFWebPage.

Schermata del codice di un file PDF che mostra codice JavaScript dannoso che costruisce dinamicamente un percorso per lanciare un eseguibile denominato "payload.exe".
Schermata di un editor PDF JavaScript che mostra il codice per costruire dinamicamente un percorso ed eseguire un payload, aperto in un'interfaccia software di visualizzazione PDF

Dopo aver preparato i file PDF dannosi, l'aggressore nasconde il file eseguibile e comprime la cartella in un file ZIP. Per eludere le protezioni di sicurezza dei programmi antivirus, l'aggressore può criptare il file ZIP con una password prima di inviarlo alla vittima.

Schermata di un'interfaccia di computer che mostra una finestra di posta elettronica e le proprietà di un file PDF crittografato, compresi i dettagli come le dimensioni, il tipo e la data di creazione.

Se la vittima estrae e apre il file PDF dannoso con la versione vulnerabile di Foxit Reader, il codice dannoso incorporato nel file eseguibile verrà eseguito, consentendo all'aggressore di compromettere il dispositivo della vittima attraverso una reverse shell.

Schermata di un foglio Excel con i dati sugli stipendi e di un terminale Kali Linux che visualizza le informazioni sul sistema

Bonifica

MetaDefender Endpoint e MetaDefender Core lavorano insieme per prevenire questi attacchi.

La tecnologia Multiscanning di Metadefender Core rileva i file dannosi compressi con password, consentendo agli amministratori di identificare con precisione queste minacce. Grazie all'integrazione di oltre 30 motori antivirus, il tasso di rilevamento del malware supera il 99,99%. Inoltre, grazie alla tecnologia incorporata Deep CDR (Content Disarm and Reconstruction), Metadefender Core è in grado di rimuovere efficacemente il codice JavaScript potenzialmente dannoso e di rigenerare file sanificati e sicuri da usare.

Schermata dell'interfaccia di sicurezza di OPSWAT che mostra i risultati dell'analisi di un documento PDF intitolato "Salary Reference.pdf", evidenziando che non sono state rilevate minacce, un elemento sanificato e nessuna vulnerabilità.
File originale prima dell'uso Deep CDR
File sanificato dopo la scansione con Deep CDR
Schermata dell'interfaccia di OPSWAT MetaDefender Endpoint che mostra i dettagli della vulnerabilità di Foxit Reader con i vari CVE elencati insieme ai punteggi CVSS e alle date corrispondenti.

Inoltre, MetaDefender Endpoint è in grado di riconoscere le versioni vulnerabili delle applicazioni e di aggiornarle automaticamente alle patch più recenti, migliorando la sicurezza degli endpoint contro potenziali minacce future.

Rimanete aggiornati con OPSWAT!

Iscriviti oggi stesso per ricevere gli ultimi aggiornamenti sull'azienda, storie, informazioni sugli eventi e altro ancora.