La mayoría de la gente nunca ha instalado Ghostscript y no sabe que lo usa. Aun así, este programa funciona por debajo en una cantidad enorme de servidores: es el que convierte un PDF subido en una miniatura en WordPress, en sistemas de gestión documental, en pasarelas de correo y en servicios del tipo «comprime tu PDF online». En septiembre de 2026 se corrigió en él un fallo por el que un PDF manipulado puede llevar a la ejecución de código ajeno en la máquina que procesa el archivo.
A continuación, lo que se sabe con certeza, lo que no se sabe, cómo comprobar tu propio servidor y qué significa esta historia para cualquiera que envíe sus documentos a procesar en internet.
En resumen
- El fallo: CVE-2026-39919, un desbordamiento de búfer en el heap en el tratamiento de imágenes JPEG 2000 de Ghostscript. Basta un PDF con una imagen preparada a propósito.
- Versiones afectadas: de la 9.21 a la 10.07.1 según quienes lo descubrieron (el registro CVE dice en general «anteriores a 10.08.0»).
- La corrección: Ghostscript 10.08.0, publicado el 8 de septiembre de 2026. Las distribuciones de Linux trasladan la corrección a números de versión antiguos, así que lo que cuenta es la revisión completa del paquete, no lo que muestra
gs --version. - Gravedad: 9,8 en CVSS 3.1 según el registro CVE, 7,8 («Moderate») según Red Hat. Las dos cifras son honestas, simplemente describen escenarios distintos.
- Ataques reales: ninguno confirmado hasta ahora. El exploit que funcionó se creó en laboratorio y estaba ajustado a una compilación concreta.
-dSAFERno protege. El fallo se produce también con el entorno aislado activado.
Qué ha pasado
Encontró el fallo Wordfence, una empresa de seguridad para WordPress, con Argus, su sistema de pruebas asistido por IA. Fue el 23 de agosto de 2026, durante una auditoría de seguridad de WordPress 7.1. La herramienta siguió un archivo subido más allá del código PHP que lo aceptó: a través de la extensión Imagick, de ImageMagick, hasta Ghostscript y el decodificador JPEG 2000 que está al fondo de todo.
Artifex, la empresa que desarrolla Ghostscript, confirmó el aviso al día siguiente y publicó la versión 10.08.0 con la corrección el 8 de septiembre. El registro CVE se publicó el 15 de septiembre. Wordfence publicó los detalles técnicos el 12 de octubre y un día después BleepingComputer y el resto de la prensa especializada recogieron el tema.
Cómo funciona el fallo
No hace falta saber C para entenderlo. Una imagen es una cuadrícula de muestras. JPEG 2000 permite que los componentes de una imagen (por ejemplo, el brillo y la transparencia) tengan resoluciones distintas y que una sola muestra ocupe menos de 8 bits. Con muestras de 2 bits caben cuatro en un byte.
En el ejemplo que describen los investigadores, una fila de la imagen contiene 1.024 de esas muestras. Empaquetadas ocupan 256 bytes, y Ghostscript reserva correctamente 256 bytes. Pero cuando se dan a la vez las dos condiciones anteriores, el bucle que rellena la fila escribe un byte entero por muestra en lugar de empaquetar cuatro en cada byte. En un búfer de 256 bytes acaban 1.024. Los 768 bytes sobrantes de cada fila sobrescriben la memoria donde Ghostscript guarda sus propios datos de gestión. Y como esos bytes salen de la imagen, su contenido lo elige quien crea el archivo.

Es el camino clásico de «el programa se ha colgado» a «el programa ha hecho lo que quería el atacante». Los sistemas modernos lo dificultan mucho (distribución aleatoria de la memoria y otras protecciones), pero no lo cierran del todo.
Cómo llega un PDF a Ghostscript en WordPress
WordPress no dibuja por sí mismo las vistas previas de los PDF. Desde la versión 4.7 puede generar una imagen de la primera página de un documento subido, y lo hace con ayuda de otros programas. La cadena es esta:
WordPress → extensión PHP Imagick → ImageMagick → Ghostscript
Ghostscript se ejecuta como un proceso aparte, normalmente con la misma cuenta que el servidor web. Solo arranca cuando alguien pide una imagen del PDF. Un formulario que guarda el archivo en disco y no hace nada más con él nunca lo pone en marcha.
Un ataque por esta vía exige que se cumplan las cuatro condiciones a la vez:
- alguien de fuera (de forma anónima o con una cuenta de pocos permisos) puede subir un PDF,
- el sitio pide una vista previa o una miniatura de ese archivo,
- en el servidor hay Imagick u otra herramienta que llama a Ghostscript para ello, y la política de ImageMagick permite leer PDF,
- el Ghostscript instalado no tiene la corrección.
Una salvedad importante: un WordPress estándar no permite a los visitantes anónimos subir archivos a la biblioteca de medios. El atacante necesita un plugin, un formulario con campo de adjuntos o una cuenta que abra ese camino. Wordfence también examinó la imagen oficial de Docker de WordPress: incluía un Ghostscript 10.05.1 vulnerable, la extensión Imagick y una ruta de vista previa de PDF que funcionaba. Aun así, por sí sola no bastaba para un ataque anónimo.
Un detalle juega a favor del atacante: cuando falla el primer intento de generar la vista previa, WordPress lo reintenta automáticamente con otros ajustes. Tres adjuntos maliciosos suponen, por tanto, seis ejecuciones de Ghostscript. En la prueba de Wordfence, el formulario seguía indicando que la subida había ido bien mientras Ghostscript fallaba en silencio en segundo plano.
No es un fallo de WordPress ni del plugin de formularios. Solo fueron el camino por el que el archivo llegó a Ghostscript.
Qué peligro tiene realmente
Merece la pena detenerse aquí, porque los titulares del tipo «un PDF secuestra tu servidor» solo dicen la mitad de la verdad.
Por qué dos puntuaciones distintas. El registro CVE le da 9,8 sobre 10 (CVSS 3.1) y 9,3 (CVSS 4.0). Esas cifras describen el peor caso: una aplicación expuesta a la red que acepta PDF sin inicio de sesión y sin intervención humana. Red Hat valora el mismo fallo con un 7,8 y lo llama «Moderate», porque puntúa el escenario en el que un usuario abre un archivo malicioso en su propio ordenador. Ninguna de las dos está mal: responden a preguntas distintas.
Cuántos intentos, cuántos éxitos. Wordfence creó dos exploits funcionales para su compilación de laboratorio y luego los ejecutó 10.240 veces en otros diez entornos: Debian, Ubuntu, Fedora, AlmaLinux, Alpine y el contenedor oficial de WordPress. No funcionaron ni una sola vez. En la compilación para la que se hicieron siguieron funcionando, incluso tras cambiar fuentes, ajustes de idioma y una biblioteca básica del sistema, aunque no en todos los intentos.
La conclusión tiene dos caras. No existe un archivo único que abra cualquier servidor del mundo. Pero un atacante no necesita un archivo universal si apunta a una empresa concreta o a un proveedor de alojamiento donde cientos de sitios funcionan sobre una imagen de sistema idéntica. Los investigadores señalan que, en un caso parecido con la biblioteca libheif, otro equipo ayudado por IA adaptaba un exploit a cada nuevo objetivo en uno o dos días.
Con qué permisos. El código del atacante se ejecuta con la cuenta que procesa el PDF, normalmente la del servidor web. Eso no es automáticamente root, pero esa cuenta suele poder leer los archivos del sitio, incluida la configuración con la contraseña de la base de datos.
Ataques reales: a fecha de este texto, nadie ha informado de que el fallo se haya aprovechado fuera de un laboratorio.
Cómo comprobar tu propio servidor

Si tienes acceso a la terminal, empieza por tres preguntas.
1. ¿Hay Ghostscript aquí y en qué revisión del paquete?
- Debian y Ubuntu:
dpkg -s ghostscript | grep Version - Fedora, RHEL, AlmaLinux:
rpm -q ghostscript - Para completar:
gs --version, aunque ese número por sí solo no decide nada.
¿Por qué no basta con el número? Ubuntu 22.04 corrigió el fallo en el paquete 9.55.0~dfsg1-0ubuntu5.14, que sigue respondiendo «9.55.0» cuando se le pregunta la versión. Debian 13 tiene la corrección en 10.05.1~dfsg-1+deb13u2 (aviso DSA-6516-1). Red Hat publicó correcciones para RHEL 10, 9 y 8 entre el 1 y el 6 de octubre. Según el tracker de Debian, Debian 12 (bookworm) sigue marcado como vulnerable. Compara siempre con el aviso de tu distribución.
También hay una trampa en sentido contrario: la versión candidata 10.08.0 (RC) se presenta como 10.08.0 y no incluye la corrección. Era justo la que tenía la máquina de pruebas de Wordfence. Si compilaste Ghostscript desde el código fuente, asegúrate de que es la versión final.
2. ¿Tiene PHP Imagick? php -m | grep -i imagick. En el escritorio de WordPress: Herramientas → Salud del sitio → Información → Manejo de medios. Es solo un punto de partida: muestra si Imagick reconoce PDF, pero no dice nada sobre si Ghostscript está parcheado.
3. ¿Puede ImageMagick leer PDF? convert -list format | grep -i pdf (en ImageMagick 7: magick -list format). Las letras rw junto a PDF significan que el camino hacia Ghostscript está abierto.
Contenedores: reiniciar no basta. Descarga una imagen base actualizada, reconstruye sin capas en caché y vuelve a desplegar.
Alojamiento compartido: normalmente no podrás comprobarlo tú. Hazle dos preguntas a tu proveedor: si el paquete de Ghostscript de sus servidores incluye la corrección de CVE-2026-39919 y si los PDF que suben los clientes se convierten en vistas previas en algún punto de sus sistemas.
Si no puedes actualizar enseguida
- Deja de aceptar PDF de visitantes anónimos y de cuentas con pocos permisos. Un archivo que no llega al servidor no llega a Ghostscript.
- Desactiva la lectura de PDF en la política de ImageMagick. En el archivo
policy.xml(normalmente en/etc/ImageMagick-6/o/etc/ImageMagick-7/), añade dentro de la sección<policymap>la línea<policy domain="coder" rights="none" pattern="{PS,PS2,PS3,EPS,PDF,XPS}" />. Efecto secundario: WordPress dejará de generar miniaturas de PDF. - Limita el número de archivos por envío y la frecuencia de subidas. Reduce los intentos que obtiene un atacante, pero no arregla nada.
- Aísla la conversión de documentos en un servicio aparte, sin acceso a los secretos del sitio y sin conexiones de red innecesarias. Limita los daños, pero tampoco es una corrección.
Lo que no debes hacer: no trates -dSAFER como protección. El entorno aislado de Ghostscript limita lo que un documento puede hacer con las funciones documentadas de PostScript. No evita la corrupción de memoria, y en las pruebas el fallo se produjo con el entorno aislado activado. Ningún plugin de WordPress puede arreglarlo, porque Ghostscript viene del sistema operativo o de la imagen del contenedor, no de WordPress.
No confundas este fallo con CVE-2026-65640. Es otro asunto: ejecución remota de código en WordPress mediante la subida de un archivo PostScript, que también pasa por Imagick y Ghostscript, pero requiere una cuenta con permiso para subir archivos (normalmente el rol Autor o superior). Se corrigió en WordPress 7.0.4, con retroportaciones hasta la rama 4.7.
No es solo un problema de WordPress
WordPress es solo uno de los muchos caminos por los que el PDF de un desconocido puede llegar a Ghostscript. Lo mismo vale para sistemas de gestión documental, servidores de impresión, procesamiento de facturas, generadores de vistas previas, pasarelas de correo que analizan adjuntos y API de conversión de archivos. La pregunta es siempre la misma: ¿este software renderiza PDF que vienen de otra persona?
Buscar la palabra «Ghostscript» en el código de tu propia aplicación puede no dar ningún resultado. Normalmente hay en medio ImageMagick u otra biblioteca, y es esta la que llama a Ghostscript.
Qué significa esto al subir PDF a internet
Esta historia tiene otra cara de la que se habla menos. Un servicio de «comprimir PDF», «PDF a imagen» o «unir PDF» en el navegador es exactamente el tipo de servidor del que hablamos: acepta archivos de desconocidos y los pasa por herramientas que los desmontan y vuelven a montar. No sabes con qué ni en qué versión procesan tu documento, ni si actualizaron después del 8 de septiembre. Lo que sí sabes es que tu archivo pasa al menos un rato en la misma máquina que los archivos de miles de personas, y algunos pueden estar manipulados.
Eso no significa que todos los servicios online estén llenos de agujeros. Significa que, al subir un contrato, el escaneo de un documento de identidad o unos resultados médicos, los entregas a un lugar cuya seguridad no puedes comprobar. Hay más sobre esto en el artículo sobre qué ocurre con tus datos al convertir un PDF online.
Para ser justos, el procesamiento local no es inmune por definición. Si comprimes PDF tú mismo con Ghostscript, actualízalo a la 10.08.0 o posterior. La ventaja de trabajar sin conexión está en otra parte: el documento nunca sale de tu ordenador y la versión del software que lo procesa la decides tú, no alguien a quien no conoces.
Si sueles unir, dividir, cifrar o convertir PDF a Word, puedes hacerlo sin subirlos a ningún sitio. PDF Manipulator es gratuito, funciona en Windows y Linux, y cada archivo se queda en tu ordenador.


Fuentes
- Wordfence, Wordfence Argus Discovers Critical Vulnerability in Ghostscript (12/10/2026) — la descripción original: cronología del aviso, la cadena en WordPress, las pruebas con 10.240 intentos, tabla de paquetes, recomendaciones
- BleepingComputer, Ghostscript flaw lets hackers hijack servers via PDF uploads (13/10/2026)
- Artifex, Ghostscript — notas de las versiones — 10.08.0, del 8 de septiembre de 2026
- CVE.org, CVE-2026-39919 y NIST, NVD
- Red Hat, CVE-2026-39919 — valoración Moderate (7,8), correcciones para RHEL 8, 9 y 10
- Debian, Security Tracker: CVE-2026-39919 — estado de los paquetes en cada versión
- ImageMagick, Security Policy — sintaxis de
policy.xml - OpenCVE, CVE-2026-65640 — el fallo relacionado de WordPress, corregido en 7.0.4
- Dr. Web, Ghostscript-Lücke: Präparierte PDFs gefährden WordPress-Server (13/10/2026, en alemán)


