Ghostscript : un PDF piégé peut compromettre un serveur

Une faille critique de Ghostscript expose les serveurs traitant des PDF à une exécution de code, mais les essais montrent une exploitation dépendante de l’environnement ciblé.

Un document téléversé peut déclencher davantage qu’un simple enregistrement sur disque. Lorsqu’un serveur transforme un PDF en miniature, il peut solliciter Ghostscript, un composant de traitement documentaire touché par la vulnérabilité CVE-2026-39919. Cette corruption de mémoire concerne le traitement de certaines images JPEG 2000 intégrées aux documents. Les chercheurs ont obtenu une exécution de code sur un serveur WordPress préparé pour leurs essais. Cependant, leurs deux fichiers de démonstration n’ont produit aucune exécution de code lors de 10 240 tentatives sur dix autres environnements Linux. Un correctif existe depuis septembre 2026.

Une miniature de PDF comme point d’entrée

Ghostscript travaille souvent en coulisses. Cet interpréteur de documents PDF et du langage PostScript intervient dans le rendu des pages, la production d’aperçus ou l’optimisation des fichiers. Des applications comme ImageMagick, GIMP, Inkscape et Scribus l’utilisent, tout comme certaines configurations du système d’impression CUPS. Sa présence dépasse donc largement le périmètre des sites Internet.

Dans WordPress, la chaîne de traitement peut associer l’extension PHP Imagick, ImageMagick et Ghostscript pour fabriquer une miniature du PDF déposé dans la médiathèque. Le fichier fourni par un utilisateur atteint alors un programme installé sur le serveur. C’est cette opération de conversion qui rend la vulnérabilité accessible, lorsque les conditions techniques nécessaires sont réunies.

Des spécialistes ont découvert le problème le 23 août 2026. Le défaut est un débordement de tampon dans le tas, une zone de mémoire utilisée pendant l’exécution du logiciel. Il apparaît lors du traitement de PDF spécialement conçus contenant une image JPEG 2000.

L’erreur concerne des images dont les composantes présentent des résolutions différentes et utilisent moins de huit bits par valeur. Ghostscript calcule incorrectement l’espace mémoire nécessaire. Dans la démonstration décrite, le programme peut écrire 1 024 octets dans un tampon prévu pour seulement 256 octets. Cette écriture hors limites corrompt la mémoire et ouvre potentiellement la voie à l’exécution de code arbitraire.

Les versions concernées vont de Ghostscript 9.21 à 10.07.1, sous réserve de la présence du chemin de décodage vulnérable et des correctifs éventuellement intégrés par les distributions. Les environnements examinés comprenaient Debian, Ubuntu, Fedora, Alpine, AlmaLinux ainsi qu’un instantané de l’image Docker officielle de WordPress. Tous contenaient le code défectueux au moment des tests.

Cette présence ne signifie cependant pas que chaque installation peut être compromise avec le même document. Les chercheurs ont préparé deux preuves de concept, puis effectué 10 240 tentatives sur dix environnements Linux distincts. Aucune n’a abouti à une exécution de code en dehors de la construction logicielle correspondante.

A noter que les changements de polices, de paramètres linguistiques, de configuration des fontes et d’une bibliothèque système n’étaient pas des prérequis à réunir pour réussir. Les chercheurs ont modifié séparément ces éléments en conservant le même exécutable Ghostscript. L’exploitation restait possible dans les quatre configurations, avec une réussite intermittente. Leurs résultats soulignent surtout l’importance de la construction exacte du programme ciblé.

Des conditions précises et un correctif disponible

Pour WordPress, quatre conditions doivent se cumuler. Un attaquant doit pouvoir transmettre un PDF, anonymement ou depuis un compte disposant de faibles privilèges. Le site doit ensuite produire un aperçu du document. Cette conversion doit effectivement passer par Ghostscript, selon les logiciels installés et leurs politiques de sécurité. Enfin, le programme doit encore contenir le code vulnérable.

WordPress n’autorise pas, par défaut, les visiteurs anonymes à déposer des documents dans sa médiathèque. La présence du logiciel ou d’une image Docker concernée ne suffit donc pas à démontrer une exposition anonyme. Il faut examiner le parcours réel du fichier, depuis son téléversement jusqu’à son éventuel traitement.

Le périmètre dépasse néanmoins cette seule plateforme. Toute application qui transmet des PDF non fiables à une version vulnérable de Ghostscript peut présenter une surface d’exposition. La question opérationnelle porte ainsi sur les conversions réellement effectuées, y compris lorsque l’utilisateur ne voit qu’un formulaire de dépôt ou une miniature.

Artifex a corrigé CVE-2026-39919 avec la version finale 10.08.0, publiée le 8 septembre 2026. Des corrections ont également été reportées dans certaines branches antérieures. Un numéro de version ancien ne permet donc pas, à lui seul, de conclure que le paquet installé reste vulnérable. La révision complète et les informations du fournisseur sont déterminantes.

Laisser un commentaire Annuler la réponse