La maggior parte delle persone non ha mai installato Ghostscript e non sa di usarlo. Eppure questo programma lavora dietro le quinte su un numero enorme di server: è lui a trasformare un PDF caricato in un’anteprima in WordPress, nei sistemi di gestione documentale, nei gateway di posta e nei servizi del tipo «comprimi il tuo PDF online». A settembre 2026 vi è stata corretta una falla per cui un PDF costruito ad arte può portare all’esecuzione di codice estraneo sulla macchina che elabora il file.
Ecco che cosa si sa con certezza, che cosa no, come controllare il proprio server e che cosa significa questa storia per chiunque mandi i propri documenti a farsi elaborare in rete.
In breve
- La falla: CVE-2026-39919, un buffer overflow nello heap nella gestione delle immagini JPEG 2000 di Ghostscript. Basta un PDF con un’immagine preparata apposta.
- Versioni vulnerabili: dalla 9.21 alla 10.07.1 secondo chi l’ha scoperta (il record CVE dice in generale «precedenti alla 10.08.0»).
- La correzione: Ghostscript 10.08.0, rilasciato l’8 settembre 2026. Le distribuzioni Linux riportano la correzione su numeri di versione più vecchi, quindi conta la revisione completa del pacchetto, non quello che stampa
gs --version. - Gravità: 9,8 in CVSS 3.1 secondo il record CVE, 7,8 («Moderate») secondo Red Hat. Entrambi i numeri sono onesti, descrivono semplicemente scenari diversi.
- Attacchi reali: nessuno confermato finora. L’exploit funzionante è nato in laboratorio ed era tarato su una build specifica.
-dSAFERnon protegge. Il difetto si manifesta anche con la sandbox attiva.
Che cosa è successo
La falla è stata trovata da Wordfence, un’azienda che si occupa di sicurezza per WordPress, con Argus, il suo sistema di test assistito dall’IA. Era il 23 agosto 2026, durante una verifica di sicurezza di WordPress 7.1. Lo strumento ha seguito un file caricato oltre il codice PHP che lo aveva accettato: attraverso l’estensione Imagick, attraverso ImageMagick, fino a Ghostscript e al decodificatore JPEG 2000 sul fondo della catena.
Artifex, l’azienda che sviluppa Ghostscript, ha confermato la segnalazione il giorno dopo e l’8 settembre ha rilasciato la versione 10.08.0 con la correzione. Il record CVE è stato pubblicato il 15 settembre. Wordfence ha reso noti i dettagli tecnici il 12 ottobre e il giorno successivo BleepingComputer e il resto della stampa di settore hanno ripreso la notizia.
Come funziona il difetto
Non serve conoscere il C per capirlo. Un’immagine è una griglia di campioni. JPEG 2000 consente che le componenti di un’immagine (per esempio luminosità e trasparenza) abbiano risoluzioni diverse e che un singolo campione occupi meno di 8 bit. Con campioni da 2 bit, in un byte ne stanno quattro.
Nell’esempio descritto dai ricercatori, una riga dell’immagine contiene 1.024 campioni di questo tipo. Impacchettati occupano 256 byte, e Ghostscript riserva correttamente 256 byte. Ma quando le due condizioni citate si presentano insieme, il ciclo che riempie la riga scrive un byte intero per ogni campione invece di impacchettarne quattro per byte. In un buffer da 256 byte finiscono 1.024 byte. I 768 byte in eccesso di ogni riga sovrascrivono la memoria in cui Ghostscript conserva i propri dati di gestione. E poiché quei byte provengono dall’immagine, il loro contenuto lo sceglie chi crea il file.

È la strada classica da «il programma si è bloccato» a «il programma ha fatto ciò che voleva l’aggressore». I sistemi moderni la rendono molto più difficile (disposizione casuale della memoria e altre protezioni), ma non la chiudono del tutto.
Come un PDF arriva a Ghostscript in WordPress
WordPress non disegna da solo le anteprime dei PDF. Dalla versione 4.7 può generare un’immagine della prima pagina di un documento caricato, e lo fa con l’aiuto di altri programmi. La catena è questa:
WordPress → estensione PHP Imagick → ImageMagick → Ghostscript
Ghostscript gira come processo separato, di solito con lo stesso account del server web. Parte solo quando qualcuno chiede un’immagine del PDF. Un modulo che salva il file su disco e non ci fa nient’altro non lo avvia mai.
Un attacco per questa via richiede che tutte e quattro le condizioni siano vere contemporaneamente:
- qualcuno dall’esterno (in forma anonima o con un account con pochi permessi) può caricare un PDF,
- il sito richiede un’anteprima o una miniatura di quel file,
- sul server c’è Imagick o un altro strumento che per farlo chiama Ghostscript, e la policy di ImageMagick consente di leggere i PDF,
- il Ghostscript installato non ha la correzione.
Una precisazione importante: un WordPress standard non permette ai visitatori anonimi di caricare file nella libreria media. L’aggressore ha bisogno di un plugin, di un modulo con un campo allegato o di un account che apra quella strada. Wordfence ha esaminato anche l’immagine Docker ufficiale di WordPress: conteneva un Ghostscript 10.05.1 vulnerabile, l’estensione Imagick e un percorso funzionante per le anteprime PDF. Da sola, però, non bastava per un attacco anonimo.
Un dettaglio gioca a favore dell’aggressore: quando il primo tentativo di generare l’anteprima fallisce, WordPress riprova automaticamente con impostazioni diverse. Tre allegati malevoli significano quindi sei esecuzioni di Ghostscript. Nel test di Wordfence il modulo continuava a segnalare che il caricamento era riuscito, mentre Ghostscript andava in crash in silenzio in background.
Non è un difetto di WordPress né del plugin dei moduli. Sono stati solo la strada con cui il file è arrivato a Ghostscript.
Quanto è pericoloso davvero
Qui vale la pena fermarsi, perché titoli come «un PDF prende il controllo del tuo server» dicono solo metà della verità.
Perché due punteggi diversi. Il record CVE assegna 9,8 su 10 (CVSS 3.1) e 9,3 (CVSS 4.0). Questi numeri descrivono il caso peggiore: un’applicazione esposta in rete che accetta PDF senza login e senza intervento umano. Red Hat valuta la stessa falla 7,8 e la definisce «Moderate», perché considera lo scenario in cui un utente apre un file malevolo sul proprio computer. Nessuna delle due valutazioni è sbagliata: rispondono a domande diverse.
Quanti tentativi, quanti successi. Wordfence ha costruito due exploit funzionanti per la sua build di laboratorio e poi li ha eseguiti 10.240 volte su altri dieci ambienti: Debian, Ubuntu, Fedora, AlmaLinux, Alpine e il container ufficiale di WordPress. Non hanno funzionato nemmeno una volta. Sulla build per cui erano stati creati hanno continuato a funzionare, anche dopo aver cambiato font, impostazioni di lingua e una libreria di sistema fondamentale, anche se non a ogni tentativo.
La conclusione ha due facce. Non esiste un singolo file che apra qualsiasi server al mondo. Ma un aggressore non ha bisogno di un file universale se punta a un’azienda precisa o a un hosting dove centinaia di siti girano sulla stessa immagine di sistema. I ricercatori ricordano che in un caso simile, con la libreria libheif, un altro team aiutato dall’IA adattava un exploit a ogni nuovo bersaglio in uno o due giorni.
Con quali permessi. Il codice dell’aggressore gira con l’account che elabora il PDF, di solito quello del server web. Non è automaticamente root, ma quell’account in genere può leggere i file del sito, compresa la configurazione con la password del database.
Attacchi reali: alla data di questo articolo, nessuno ha segnalato lo sfruttamento di questa falla al di fuori di un laboratorio.
Come controllare il proprio server

Se avete accesso alla shell, partite da tre domande.
1. C’è Ghostscript e in quale revisione del pacchetto?
- Debian e Ubuntu:
dpkg -s ghostscript | grep Version - Fedora, RHEL, AlmaLinux:
rpm -q ghostscript - Per completezza:
gs --version, ma quel numero da solo non decide nulla.
Perché il numero non basta? Ubuntu 22.04 ha corretto la falla nel pacchetto 9.55.0~dfsg1-0ubuntu5.14, che alla domanda sulla versione risponde ancora «9.55.0». Debian 13 ha la correzione in 10.05.1~dfsg-1+deb13u2 (bollettino DSA-6516-1). Red Hat ha rilasciato correzioni per RHEL 10, 9 e 8 tra l’1 e il 6 ottobre. Secondo il tracker di Debian, Debian 12 (bookworm) risulta ancora vulnerabile. Confrontate sempre con il bollettino della vostra distribuzione.
C’è anche una trappola nella direzione opposta: la release candidate 10.08.0 (RC) si presenta come 10.08.0 e non contiene la correzione. Era proprio quella installata sulla macchina di test di Wordfence. Se avete compilato Ghostscript dai sorgenti, verificate che sia la versione finale.
2. PHP ha Imagick? php -m | grep -i imagick. Nella bacheca di WordPress: Strumenti → Salute del sito → Info → Gestione dei media. È solo un punto di partenza: mostra se Imagick riconosce il formato PDF, ma non dice nulla sul fatto che Ghostscript sia aggiornato.
3. ImageMagick può leggere i PDF? convert -list format | grep -i pdf (con ImageMagick 7: magick -list format). Le lettere rw accanto a PDF significano che la strada verso Ghostscript è aperta.
Container: un riavvio non basta. Scaricate un’immagine di base aggiornata, ricostruite senza layer in cache e rifate il deploy.
Hosting condiviso: di solito non potete verificarlo da soli. Fate due domande al vostro fornitore: se il pacchetto Ghostscript sui suoi server include la correzione per CVE-2026-39919 e se i PDF caricati dai clienti vengono trasformati in anteprime da qualche parte nei suoi sistemi.
Se non potete aggiornare subito
- Smettete di accettare PDF da visitatori anonimi e da account con pochi permessi. Un file che non arriva al server non arriva a Ghostscript.
- Disattivate la lettura dei PDF nella policy di ImageMagick. Nel file
policy.xml(di solito in/etc/ImageMagick-6/o/etc/ImageMagick-7/), aggiungete nella sezione<policymap>la riga<policy domain="coder" rights="none" pattern="{PS,PS2,PS3,EPS,PDF,XPS}" />. Effetto collaterale: WordPress smetterà di generare miniature dei PDF. - Limitate il numero di file per invio e la frequenza dei caricamenti. Riduce i tentativi a disposizione di un aggressore, ma non corregge nulla.
- Isolate la conversione dei documenti in un servizio separato, senza accesso ai segreti del sito e senza connessioni di rete superflue. Limita i danni, ma nemmeno questo è una correzione.
Che cosa non fare: non considerate -dSAFER una protezione. La sandbox di Ghostscript limita ciò che un documento può fare con le funzioni documentate di PostScript. Non impedisce la corruzione della memoria, e nei test il difetto si è manifestato con la sandbox attiva. Nessun plugin di WordPress può risolverlo, perché Ghostscript arriva dal sistema operativo o dall’immagine del container, non da WordPress.
Non confondete questa falla con CVE-2026-65640. È un’altra questione: esecuzione remota di codice in WordPress tramite il caricamento di un file PostScript, che passa anch’esso per Imagick e Ghostscript, ma richiede un account autorizzato a caricare file (di solito il ruolo Autore o superiore). È stata corretta in WordPress 7.0.4, con backport fino al ramo 4.7.
Non è solo un problema di WordPress
WordPress è solo una delle tante strade con cui il PDF di uno sconosciuto può arrivare a Ghostscript. Lo stesso vale per sistemi di gestione documentale, server di stampa, elaborazione delle fatture, generatori di anteprime, gateway di posta che analizzano gli allegati e API di conversione dei file. La domanda è sempre la stessa: questo software esegue il rendering di PDF arrivati da qualcun altro?
Cercare la parola «Ghostscript» nel codice della propria applicazione potrebbe non dare alcun risultato. Di solito in mezzo c’è ImageMagick o un’altra libreria, ed è questa a chiamare Ghostscript.
Che cosa significa per chi carica PDF online
Questa storia ha anche un altro lato, di cui si parla meno. Un servizio di «comprimi PDF», «PDF in immagine» o «unisci PDF» nel browser è esattamente il tipo di server di cui abbiamo parlato: accetta file da sconosciuti e li fa passare per strumenti che li smontano e li rimontano. Non sapete con che cosa né con quale versione viene elaborato il vostro documento, né se è stato aggiornato dopo l’8 settembre. Sapete però che il vostro file resta, almeno per un po’, sulla stessa macchina dei file di migliaia di altre persone, e alcuni potrebbero essere costruiti ad arte.
Questo non vuol dire che ogni servizio online sia pieno di falle. Vuol dire che, caricando un contratto, la scansione di un documento d’identità o degli esami medici, li consegnate a un posto la cui sicurezza non potete verificare. Se ne parla di più nell’articolo su che cosa succede ai vostri dati in una conversione online.
Per correttezza, l’elaborazione in locale non è immune per definizione. Se comprimete i PDF da soli con Ghostscript, aggiornatelo alla 10.08.0 o successiva. Il vantaggio di lavorare offline sta altrove: il documento non lascia mai il vostro computer e la versione del software che lo elabora la decidete voi, non qualcuno che non avete mai incontrato.
Se unite, dividete, cifrate o convertite spesso PDF in Word, potete farlo senza caricarli da nessuna parte. PDF Manipulator è gratuito, funziona su Windows e Linux, e ogni file resta sul vostro computer.


Fonti
- Wordfence, Wordfence Argus Discovers Critical Vulnerability in Ghostscript (12/10/2026) — la descrizione originale: cronologia della segnalazione, la catena in WordPress, i test con 10.240 tentativi, tabella dei pacchetti, raccomandazioni
- BleepingComputer, Ghostscript flaw lets hackers hijack servers via PDF uploads (13/10/2026)
- Artifex, Ghostscript — note di rilascio — 10.08.0 dell’8 settembre 2026
- CVE.org, CVE-2026-39919 e NIST, NVD
- Red Hat, CVE-2026-39919 — valutazione Moderate (7,8), correzioni per RHEL 8, 9 e 10
- Debian, Security Tracker: CVE-2026-39919 — stato dei pacchetti per ogni versione
- ImageMagick, Security Policy — sintassi di
policy.xml - OpenCVE, CVE-2026-65640 — la falla correlata di WordPress, corretta nella 7.0.4
- Dr. Web, Ghostscript-Lücke: Präparierte PDFs gefährden WordPress-Server (13/10/2026, in tedesco)


