Others

Puoi sapere se un PDF contiene un codice di monitoraggio nascosto

Un PDF può contenere più di quello che vedi nella pagina. JavaScript incorporato, campi modulo nascosti, chiamate a risorse remote e metadati personalizzati possono essere utilizzati per tenere traccia di quando un documento viene aperto, da dove viene aperto e cosa fa il lettore con esso. Sicurezza PDF Le scansioni per i meccanismi di tracciamento stanno diventando un passaggio standard nella due diligence aziendale, in particolare quando si ricevono PDF da fonti sconosciute o non attendibili. La domanda non è solo se esiste un codice di monitoraggio, ma se si dispone degli strumenti per rilevarlo prima di aprire un documento sensibile.

Il codice di monitoraggio nei PDF rientra in due categorie: intenzionale e benigno. Il tracciamento intenzionale utilizza JavaScript per telefonare a casa quando il documento viene aperto, inviando l'indirizzo IP dell'autore dell'apertura, la posizione approssimativa e la durata della lettura a un server di tracciamento. Il monitoraggio benigno include funzionalità come le conferme di lettura integrate nelle fatture PDF o la gestione dei diritti digitali che verifica una licenza prima di visualizzare il contenuto. Entrambi i tipi utilizzano meccanismi tecnici simili e i metodi di rilevamento qui descritti funzionano per entrambi.

Le funzionalità PDF Privacy di WukongPDF includono strumenti di ispezione della sicurezza che scansionano i documenti alla ricerca di script incorporati prima dell'elaborazione. L'esecuzione di un controllo rapido prima di aprire un PDF proveniente da un mittente sconosciuto aggiunge un livello di protezione contro il tracciamento che la maggior parte dei lettori PDF non fornisce per impostazione predefinita.

Can You Tell If a PDF Contains Hidden Tracking Code

Come funziona tecnicamente il codice di monitoraggio PDF

I file PDF supportano JavaScript tramite l'API JavaScript di Acrobat, un sottoinsieme di JavaScript eseguito all'interno del motore di scripting del lettore PDF. Gli script a livello di documento vengono eseguiti automaticamente quando il PDF viene aperto, quando viene visualizzata una pagina, quando il documento viene stampato o quando viene chiuso. Uno script di monitoraggio in genere viene eseguito sull'evento DocOpen, raccoglie le informazioni disponibili tramite l'API JavaScript come l'indirizzo IP del lettore tramite una richiesta HTTP e invia tali dati a un server remoto utilizzando i metodi app.launchURL o Net.HTTP.request.

I dati che PDF JavaScript può raccogliere sono limitati rispetto al JavaScript del browser. Non può accedere ai file sul computer dell'utente, leggere i cookie del browser o interagire con altri documenti aperti. Può, tuttavia, effettuare richieste di rete, che è la funzionalità principale che consente il tracciamento. Un PDF aperto in Adobe Acrobat Reader con JavaScript abilitato eseguirà lo script di monitoraggio in modo silenzioso. Un PDF aperto in un visualizzatore basato su browser che non supporta l'API JavaScript di Acrobat non eseguirà lo script e il tentativo di tracciamento fallisce silenziosamente.

WukongPDF

Prova Proteggi PDF

Nessuna installazione necessaria. Funziona direttamente nel tuo browser.

Inizia ora →

Metodo 1: verificare la presenza di JavaScript in Adobe Acrobat Pro

Il modo più diretto per verificare la presenza del codice di monitoraggio è ispezionare i contenuti JavaScript del PDF. In Adobe Acrobat Pro, apri il PDF, vai al menu Modifica, seleziona Preferenze, quindi fai clic sulla categoria JavaScript. Deseleziona Abilita JavaScript di Acrobat per disabilitare globalmente tutta l'esecuzione di JavaScript nel lettore. Ciò impedisce l'esecuzione di qualsiasi script di tracciamento all'apertura del file. Prima di disabilitare JavaScript, puoi controllare quali script esistono senza eseguirli.

Per controllare gli script, apri il PDF in Acrobat Pro e vai su Strumenti, quindi su JavaScript e seleziona JavaScript del documento dal menu a discesa. La finestra di dialogo elenca tutti gli script a livello di documento per nome. Seleziona un nome di script e fai clic su Modifica per visualizzarne il codice sorgente. Cerca modelli che indichino il tracciamento: URL che puntano a domini esterni, chiamate app.launchURL, chiamate Net.HTTP.request o riferimenti a eventi this.docOpened o this.docClosed. Se lo script effettua richieste di rete e non ti aspettavi che il documento necessitasse dell'accesso alla rete, trattalo come un potenziale codice di monitoraggio.

È possibile eliminare singoli script dalla finestra di dialogo JavaScript del documento. Selezionare il nome dello script e fare clic su Elimina. Dopo aver rimosso tutti gli script sospetti, salva il PDF con un nuovo nome file per preservare l'originale come prova. Il PDF pulito conserva tutto il contenuto visibile e la funzionalità del modulo ma non esegue più gli script rimossi.

Metodo 2: ispezionare gli interni del PDF con un editor di testo

Per un'ispezione più approfondita che non richiede Acrobat Pro, esamina la struttura interna grezza del PDF. I file PDF utilizzano un formato oggetto basato su testo in cui stringhe e parole chiave leggibili sono interlacciate con dati binari. Apri il PDF in un editor di testo in grado di gestire file di grandi dimensioni, come VS Code, Notepad++ o Sublime Text. Cerca la stringa /JavaScript o /JS. Queste parole chiave segnano l'inizio degli oggetti del codice JavaScript. Il codice sorgente dello script segue la parola chiave, solitamente tra parentesi o tra i marcatori stream ed endstream.

Cerca anche /URI o /URL per trovare eventuali indirizzi Web codificati incorporati nel PDF. Uno script di monitoraggio può includere l'URL di un server di monitoraggio. Cerca /AA o /OpenAction, che sono le chiavi del dizionario PDF che specificano le azioni da eseguire quando il documento viene aperto. Una voce /OpenAction che punta a un oggetto JavaScript è il meccanismo più comune per attivare il codice di monitoraggio all'apertura del documento.

Questo approccio di ispezione manuale richiede una certa familiarità con la sintassi PDF ma rileva il codice di tracciamento che gli strumenti automatizzati potrebbero non rilevare. È la stessa tecnica utilizzata dai ricercatori di sicurezza per analizzare gli allegati PDF sospetti nelle indagini di phishing. Se trovi strutture di tracciamento e desideri neutralizzarle senza Acrobat Pro, puoi eliminare gli oggetti rilevanti dal PDF non elaborato utilizzando uno strumento come qpdf con il flag --remove-restrictions, sebbene questo approccio richieda attenzione per evitare di corrompere la struttura del file.

Metodo 3: scanner di sicurezza PDF automatizzati

Diversi strumenti gratuiti e commerciali automatizzano il rilevamento del tracciamento e del codice dannoso nei PDF. DID-SIEM e strumenti simili di analisi della sicurezza analizzano la struttura del PDF e contrassegnano gli oggetti contenenti JavaScript, URL esterni, azioni di avvio e file incorporati. I controllori di sicurezza PDF online accettano il caricamento di un file e restituiscono un rapporto che elenca tutti gli elementi potenzialmente tracciabili. Per il controllo di routine dei PDF ricevuti da fonti esterne, uno scanner automatizzato è più veloce e più approfondito dell'ispezione manuale.

IndicatoreCosa significaCome controllare
Documento JavaScriptScript che vengono eseguiti quando il PDF si apre, si chiude o viene stampatoAcrobat: Modifica, Preferenze, pannello JavaScript
Chiamate di risorse esterneIl PDF carica immagini, caratteri o dati da URL remoti quando viene apertoControlla le proprietà del documento per gli URL incorporati
Campi modulo nascostiCampi invisibili precompilati con ID o token di tracciamentoApri il pannello Moduli e cerca i flag di campo nascosti
Script di metadatiMetadati XMP contenenti identificatori di tracciamento personalizzatiVisualizza le proprietà del documento e i dati XMP grezzi

Cosa fare se trovi il codice di monitoraggio

Trovare il codice di monitoraggio in un PDF ricevuto non significa necessariamente che il mittente agisca in modo dannoso. Le fatture PDF includono comunemente script di conferma di lettura che avvisano il mittente quando la fattura viene aperta. I materiali di marketing possono includere il monitoraggio del coinvolgimento simile ai pixel di monitoraggio dell'apertura delle email. La domanda è se il tracciamento è reso pubblico e appropriato per il tipo di documento. È prevista una conferma di lettura in una fattura. Un tracker nascosto in un contratto inviato durante una negoziazione è problematico.

Se devi condividere il documento con altri senza il codice di monitoraggio, rimuovi JavaScript come descritto nel Metodo 1 e salva una copia pulita. Se il codice di monitoraggio fa parte di un DRM o di un sistema di applicazione della licenza, la sua rimozione potrebbe violare i termini di utilizzo del documento. Per i documenti giuridicamente sensibili, consulta il team legale o di sicurezza della tua organizzazione prima di eliminare qualsiasi codice incorporato, poiché i meccanismi di tracciamento potrebbero far parte di un sistema di conformità o di audit trail che sei contrattualmente obbligato a preservare.

Il codice di monitoraggio PDF è rilevabile con gli strumenti giusti. L'esecuzione di una rapida ispezione JavaScript prima di aprire PDF da fonti sconosciute richiede meno di un minuto e rileva la maggior parte dei meccanismi di tracciamento. Rendere questo controllo parte della routine standard di gestione dei documenti riduce la probabilità di condividere inconsapevolmente la tua attività di lettura con soggetti esterni. Per le organizzazioni che gestiscono documenti sensibili, la politica di disabilitare JavaScript nel lettore PDF per impostazione predefinita e di abilitarlo solo per documenti attendibili fornisce una solida difesa di base senza alcun impegno di ispezione continua per documento.

Disabilitazione di JavaScript su tutti i lettori PDF di un'organizzazione

L'ispezione individuale di ciascun PDF per il codice di tracciamento è pratica per un uso occasionale, ma non è adatta a un'organizzazione che riceve quotidianamente centinaia di PDF esterni. Un approccio più sistematico consiste nel disabilitare l'esecuzione di JavaScript a livello di lettore su tutti i dispositivi. In Adobe Acrobat Reader, l'impostazione si trova in Modifica, Preferenze, JavaScript, dove deselezionando Abilita Acrobat JavaScript si blocca l'esecuzione di tutti gli script. Questa impostazione può essere distribuita tramite Criteri di gruppo su Windows, tramite un profilo di configurazione su Mac e tramite le preferenze gestite sulle distribuzioni aziendali di Acrobat Reader.

La disabilitazione di JavaScript a livello globale ha un impatto funzionale. Alcuni moduli PDF utilizzano JavaScript per la convalida dei campi, i calcoli automatici e il comportamento dinamico dei moduli. Queste funzionalità smettono di funzionare quando JavaScript è disabilitato. Per le organizzazioni che si affidano a moduli PDF interattivi, l'approccio dovrebbe essere quello di disabilitare JavaScript per impostazione predefinita e abilitarlo solo per moduli provenienti da fonti interne attendibili, anziché accettare il rischio per la sicurezza dell'esecuzione di JavaScript su ogni PDF da ogni mittente esterno. L'ispezione di sicurezza dei PDF per il codice di tracciamento è una moderna competenza di alfabetizzazione documentale. Prendersi un minuto per verificare la presenza di JavaScript, URL esterni e campi modulo nascosti prima di aprire o condividere un PDF da una fonte sconosciuta impedisce una sottile forma di fuga di informazioni di cui la maggior parte degli utenti PDF non è nemmeno a conoscenza dell'esistenza. Un approccio attento alla sicurezza alla gestione dei PDF protegge sia la privacy individuale che la sicurezza delle informazioni organizzative senza richiedere software specializzato o conoscenze tecniche avanzate.

WukongPDF

Prova Proteggi PDF

Nessuna installazione necessaria. Funziona direttamente nel tuo browser.

Inizia ora →