Come sapere se un file PDF è infetto?

9

Ho paura di aprire un libro PDF. Quando controllo il file tramite pdfid, ottengo questo:

PDF Header:% PDF-1.6  
 obj 4175  
 endobj 4174  
 stream 3379  
 endstream 3379  
 xref 0  
 trailer 0  
 startxref 1  
 / Page 794  
 / Encrypt 0  
 / ObjStm 6  
 / JS 3  
 / JavaScript 0  
 / AA 6  
 / OpenAction 0  
 / AcroForm 1  
 / JBIG2Decode 0  
 / RichMedia 0  
 / Launch 0  
 / EmbeddedFile 0  
 / XFA 0  
 / Colors> 2 ^ 24 0  

Ho anche controllato il file con virustotal , dove dice che il file è pulito. Ma gli antivirus non sempre trovano ciò che è sbagliato, giusto?

Quindi ho queste domande:

  1. Quali di questi (AA, ObjStm, XFA, ecc.) sono veramente pericolosi ? Sì, ho letto qui sui valori di questi articoli, ma ancora non so come reagire a loro. Se possibile, spiega con semplici esempi.
  2. Posso leggere tranquillamente il pdf dopo aver usato il comando pdfid -d ?
  3. /JS and /JavaScript indicate that the PDF document contains JavaScript. Almost all malicious PDF documents that I’ve found in the wild contain JavaScript (to exploit a JavaScript vulnerability and/or to execute a heap spray). Of course, you can also find JavaScript in PDF documents without malicious intend.

    /AA and /OpenAction indicate an automatic action to be performed when the page/document is viewed. All malicious PDF documents with JavaScript I’ve seen in the wild had an automatic action to launch the JavaScript without user interaction.

    Quali differenze tra JS e JavaScript, AA e OpenAction se mostrano la stessa cosa?

posta stackflow 19.10.2017 - 18:33
fonte

2 risposte

6

L'analisi dei PDF dannosi a volte può essere molto complessa, gli aggressori diventano sempre più creativi in un modo di infettare le persone.

Ma rendiamolo semplice, ecco alcuni esempi che indicano che il PDF è dannoso.

exploit basati su JavaScript

Le specifiche PDF supportano la programmazione JavaScript e rendono disponibili ai programmatori una serie di funzioni JavaScript sotto forma di API.

A causa della sua flessibilità e facilità d'uso, JavaScript è ampiamente utilizzato nei PDF dannosi e viene utilizzato per sfruttare un'API JavaScript vulnerabile e per configurare la memoria del programma di lettura PDF con codice dannoso (aka heap spray).

Sfruttamenti non basati su JavaScript

Sebbene la maggior parte dei PDF dannosi osservati in natura utilizzino JavaScript, sia per l'exploit che per impostare la memoria per ulteriore sfruttamento, abbiamo osservato anche altre tecniche utilizzate. Un'alternativa all'utilizzo di JavaScript consiste nell'incorporare invece gli oggetti Flash nel PDF.

Dal documento PDF: The Rise of PDF Malware

Ecco anche cheat-sheet per analizzare documenti dannosi.

Dai anche un'occhiata a Come faccio a sapere se un file PDF che ho inviato contiene malware? '

    
risposta data 19.10.2017 - 23:46
fonte
6

Dopo un po 'di ricerca sembra che lo strumento che stai usando per investigare questo documento PDF sia uno strumento standalone python (?) scritto da un "ricercatore della sicurezza". Inserisco quel titolo tra virgolette semplicemente perché non so nulla di lui, a parte il fatto che lui afferma di essere un ricercatore della sicurezza e gli piace mettere il suo nome sul suo sito web.

Forse qualcuno che è più un esperto di PDF può venire e dare alcune informazioni migliori, ma da quello che ho visto finora non sembra che il suo strumento sia in realtà molto utile per cercare di decidere se un particolare file PDF contiene javascript dannoso. Considerando che entrambi javascript e azioni fanno parte dello standard Adobe per i file PDF, sembra assurdo pensare che solo perché un file PDF contiene javascript / azioni che potrebbero essere dannoso. Lui non lo afferma, ma dichiara il qualificatore molto inutile che "ogni file PDF dannoso che ho visto contiene javascript / azioni". Ecco un'affermazione altrettanto vera: "Ogni sito malevolo che ho visto contiene javascript". Devo quindi disabilitare javascript nel mio browser o evitare le pagine con javascript? Ovviamente no. Dal mio punto di vista, il problema più grande che vedo è una ricerca che forse non comprende la differenza tra correlazione e causalità.

Detto questo, è possibile che questo documento contenga JavaScript javascript. Il modo migliore per scoprirlo sarebbe cercare di estrarre il javascript in questione e vedere cosa effettivamente fa senza eseguirlo. Poiché lo strumento in questione sta già analizzando un file PDF, potrebbe essere possibile ottenere tali informazioni da tale strumento. Quindi potresti dover trovare un altro strumento o provarlo tu stesso.

Se nessuna di queste opzioni ti interessa, proverei a considerarla come un'analisi di rischio / beneficio:

  1. Hai qualche motivo per diffidare di questo file PDF?
  2. Proviene da una fonte attendibile?

Se proviene da una fonte attendibile e non hai motivo di diffidare, probabilmente lo aprirò. Se sei preoccupato, puoi sempre provare ad aprirlo in una macchina virtuale o trovare un lettore PDF che non elabori javascript. Puoi anche provare a trovare un modo per rimuovere qualsiasi javascript dal PDF prima di visualizzarlo. Immagino che questo è ciò che pdfid -d dovrebbe fare, ma considerando che non so nulla dello strumento che sarebbe qualcosa di meglio diretto all'autore.

Se sei su Linux qualcosa di semplice:

pdf2ps input.pdf - | ps2pdf - output.pdf

potrebbe funzionare. Questo lo convertirà da pdf a ps e di nuovo in pdf. Fondamentalmente, stampa il file, che (credo) rimuoverà tutte le meta informazioni. Immagino che pdf2ps non abbia una libreria javascript integrata, quindi penso che sia sicuro assumere che qualsiasi javascript dannoso verrà rimosso in modo sicuro in questo processo.

Poi di nuovo, tutto questo è una risposta "dalla cima della mia testa", quindi la tua migliore scommessa è quella di porre un'altra domanda su come rimuovere in modo sicuro javascript da un file PDF. Sono sicuro che è una domanda molto più concreta (e facilmente risolvibile) quindi "Come sapere se un file PDF è infetto?".

    
risposta data 19.10.2017 - 20:37
fonte

Leggi altre domande sui tag