
Exploit PoC per CVE-2025-64512 che mira alla deserializzazione non sicura in pdfminer.six. Genera payload pickle dannosi e produce PDF di exploit per RCE tramite upload di file web.
Questa proof-of-concept è destinata esclusivamente a test di sicurezza autorizzati e a scopo didattico.
Utilizzare solo su sistemi di tua proprietà o per i quali hai esplicita autorizzazione scritta al test. L'autore non è responsabile di qualsiasi uso improprio o danno causato da questo codice.
CVE-2025-64512 è una vulnerabilità critica in pdfminer.six, una popolare libreria Python per l'estrazione di testo e metadati da file PDF. La falla consente l'esecuzione di codice remoto (RCE) tramite deserializzazione non sicura di dati pickle durante l'elaborazione di un PDF dannoso.
La vulnerabilità viene comunemente innescata tramite la funzionalità di caricamento file nelle applicazioni web che usano pdfminer.six per analizzare i documenti PDF caricati (ad es., sistemi di gestione documentale, strumenti di reporting, caricamento di immagini del profilo che accettano PDF).
Esegui generate_pickle.py per creare malicious.pickle.gz, che contiene il payload della tua reverse shell.
python3 generate_pickle.py
Passo 2 – Genera il PDF di exploit
Scegli uno dei due metodi disponibili:
# Metodo 1: /Encoding path traversal (meno affidabile)
python3 method1_encoding_poc.py
# Metodo 2: deserializzazione /CMap (metodo ufficiale CVE – CONSIGLIATO)
python3 method2_cmap_poc.py
Entrambi gli script producono exploit.pdf, che fa riferimento al file pickle malevolo e innesca la falla di deserializzazione quando viene elaborato.
Passo 3 – Avvia il tuo listener
nc -lvnp 4444
Passo 4 – Carica ed esegui
Vai alla funzionalità di caricamento file dell'applicazione web target.
Carica exploit.pdf tramite l'interfaccia web.
L'applicazione elabora il PDF utilizzando una versione vulnerabile di pdfminer.six.
Il payload pickle viene deserializzato ed eseguito, fornendoti una reverse shell.