
نقص في تنقية الوسائط يؤدي إلى تسرب كلمة المرور في إصدارات Ghostscript PDF حتى 10.05.0.
تؤدي ثغرة في Artifex Ghostscript قبل الإصدار 10.05.1 إلى تضمين كلمة المرور النصية العادية المستخدمة لحماية ملف PDF في المخرجات. المشكلة ناتجة عن نقص تنقية الوسائط في gs_lib_ctx_stash_sanitized_arg (base/gslibctx.c)، خاصة عند معالجة الأحرف #.
عند إنشاء ملف PDF محمي بكلمة مرور باستخدام وسائط سطر الأوامر مثل -sUserPassword أو -sOwnerPassword، يتم تخزين الاستدعاء بالكامل، بما في ذلك كلمات المرور، بنص صريح في بداية ملف PDF الناتج. يمكن لأي شخص لديه إمكانية الوصول إلى الملف استرداد كلمة المرور باستخدام أدوات بسيطة مثل type (في Windows) أو cat (في Linux/macOS).
تثبيت Ghostscript الإصدار 10.05.0 أو إصدار أقدم
https://github.com/ArtifexSoftware/ghostpdl-downloads
إنشاء ملف PDF محمي بكلمة مرور باستخدام أمر مثل:
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
فحص ملف PDF الناتج:
type C:\Users\Admin\Downloads\test.pdf
ستشاهد سلسلة سطر الأوامر الكاملة، بما في ذلك كلمات المرور النصية العادية، مضمنة في بداية الملف.