Apache Tika è un toolkit ampiamente utilizzato per l’analisi e l’estrazione dei contenuti, spesso integrato in sistemi backend per pipeline di acquisizione dati, sistemi di gestione dei contenuti (CMS) e servizi di indicizzazione per la ricerca. La sua capacità di elaborare centinaia di tipi di file lo rende un componente critico negli ambienti ad alto volume di dati.
L’impatto di questa vulnerabilità è Critico. Un attaccante non autenticato può ottenere una Server-Side Request Forgery (SSRF) e l’esfiltrazione di file locali semplicemente inviando un file PDF dannoso. Questo consente agli attaccanti di rubare file di configurazione sensibili, credenziali e dati proprietari direttamente dal filesystem del server. Inoltre, la funzionalità SSRF consente agli attaccanti di effettuare movimenti laterali e analizzare la rete interna, accedendo e potenzialmente compromettendo altri servizi interni raggiungibili dal server Tika.
Questa vulnerabilità rappresenta un rischio significativo per le organizzazioni con funzionalità di caricamento file esposte pubblicamente che si affidano ad Apache Tika per l’elaborazione. Dato che è disponibile codice di exploit pubblico, la probabilità di sfruttamento attivo è elevata. Le applicazioni esposte su Internet che utilizzano le versioni vulnerabili di Tika sono immediatamente a rischio di violazioni di dati e compromissione della rete interna.
| Prodotto | Apache Tika |
| Data | 2025-12-06 00:23:28 |
Riassunto tecnico
La causa principale di questa vulnerabilità è una CWE-611: Restrizione Impropria dei Riferimenti a Entità Esterne XML, comunemente nota come injectione XXE. Il difetto è presente in particolare all’interno del tika-parser-pdf-module.
Quando Apache Tika analizza un file PDF, tenta di elaborarne vari componenti, inclusi i dati XML-based Form Architecture (XFA) se presenti. La vulnerabilità viene attivata perché il parser XML sottostante utilizzato per lo stream XFA non è configurato in modo sicuro per disabilitare la risoluzione delle entità esterne.
La catena di attacco è la seguente:
- Un attaccante crea un documento PDF contenente un payload XFA dannoso. Questo payload definisce un’entità esterna che punta a un URI di file locale (es.
file:///etc/passwd) o a una risorsa interna alla rete. - Il PDF dannoso viene caricato in un’applicazione che utilizza una versione vulnerabile di Apache Tika per l’analisi.
- Il
tika-parser-pdf-moduleelabora il PDF, identifica i dati XFA, e li passa al parser XML mal configurato. - Il parser risolve l’entità esterna dannosa, provocando la lettura da parte del server del contenuto del file specificato o l’esecuzione di una richiesta a un endpoint della rete interna.
- I dati esfiltrati vengono incorporati nel contenuto di testo estratto, che può poi essere restituito all’attaccante o memorizzato in una posizione accessibile.
Un esempio concettuale di entità XXE malevola all’interno dei dati XFA è il seguente:
<!DOCTYPE xfa [
<!ENTITY xxe SYSTEM "file:///etc/shadow">
]>
<form>
<textfield>...&xxe;...</textfield>
</form>
Versioni vulnerabili: Le versioni di Apache Tika dalla 1.13 alla 3.2.1 sono vulnerabili.
Disponibilità della correzione: Una correzione è prevista in un rilascio futuro. Gli utenti devono monitorare il progetto ufficiale Apache Tika per annunci sulle patch.
Raccomandazioni
-
Applicare la patch immediatamente: Aggiornare tutte le istanze di Apache Tika alla versione stabile più recente non appena una patch viene rilasciata dalla Apache Software Foundation. Monitorare la pagina ufficiale del progetto per i bollettini di sicurezza.
-
Mitigazioni:
- Se non è possibile applicare la patch immediatamente, considerare la disattivazione temporanea del
tika-parser-pdf-modulese l’elaborazione dei PDF non è un requisito critico. - Implementare un filtering rigoroso dell’uscita di rete sui server che eseguono Apache Tika per bloccare connessioni in uscita verso indirizzi IP interni ed esterni inaspettati, limitando l’impatto del vettore SSRF.
- Applicare una configurazione sicura di parsing XML a livello globale, se possibile, assicurandosi che tutti i parser XML disattivino di default l’elaborazione di entità esterne e DTD.
- Se non è possibile applicare la patch immediatamente, considerare la disattivazione temporanea del
-
Caccia e monitoraggio:
- Analizzare i log dell’applicazione per errori di parsing PDF che contengono frammenti di contenuto da file lato server o risposte da servizi di rete interna.
- Monitorare i log del server e di rete per traffico di rete in uscita insolito originato dai server applicativi Tika, in particolare richieste verso servizi di metadati interni (es. 169.254.169.254) o altri endpoint sensibili.
- Ispezionare i log di caricamento file alla ricerca di PDF inviati che innescano eccezioni relative al parsing XML o XFA.
-
Risposta agli incidenti:
- Se si sospetta una compromissione, isolare immediatamente il server interessato dalla rete per impedire ulteriore esfiltrazione di dati o movimenti laterali interni.
- Conservare i log del server, i log delle applicazioni e qualsiasi file PDF sospetto per analisi forense.
- Presumere che qualunque segreto, credenziale o chiave API conservata nel filesystem del server sia stata compromessa e avviare le procedure di rotazione.
-
Difesa in profondità:
- Eseguire le applicazioni che utilizzano Apache Tika in ambienti isolati o container con accesso minimo al filesystem e alla rete.
- Applicare il principio del minimo privilegio all’account di servizio che esegue il processo Tika, assicurandosi che non abbia accesso in lettura a file di sistema sensibili.
- Implementare una segmentazione robusta della rete per impedire ai server che elaborano dati non attendibili di stabilire connessioni con infrastrutture interne critiche.