
Absence d'assainissement des arguments entraînant une fuite de mot de passe dans les versions PDF de Ghostscript jusqu'à 10.05.0.
Une vulnérabilité dans Artifex Ghostscript avant la version 10.05.1 fait que le mot de passe en texte clair utilisé pour protéger un fichier PDF est intégré dans la sortie. Le problème est dû à un manque de nettoyage des arguments dans gs_lib_ctx_stash_sanitized_arg (base/gslibctx.c), particulièrement lors de la gestion des caractères #.
Lors de la génération d'un PDF protégé par mot de passe en utilisant des arguments en ligne de commande comme -sUserPassword ou -sOwnerPassword, l'intégralité de l'invocation, y compris les mots de passe, est stockée en texte clair au début du PDF généré. Toute personne ayant accès au fichier peut récupérer le mot de passe en utilisant des outils simples comme type (sous Windows) ou cat (sous Linux/macOS).
Installez Ghostscript version 10.05.0 ou antérieure
https://github.com/ArtifexSoftware/ghostpdl-downloads
Générez un PDF protégé par mot de passe en utilisant une commande telle que :
gswin64.exe -dDisplayFormat=198788 -dDisplayResolution=96 -dCompatibilityLevel#1.4 -sUserPassword#123456789 -sOwnerPassword#123456789 -q -P- -dSAFER -dNOPAUSE -dBATCH -sDEVICE#pdfwrite -sOutputFile#C:\Users\Admin\Downloads\test.pdf
Inspectez le PDF généré :
type C:\Users\Admin\Downloads\test.pdf
Vous verrez la chaîne complète de la ligne de commande, y compris les mots de passe en texte clair, intégrée au début du fichier.