
بحث حول ثغرة CVE-2024-3094.
يحتوي هذا المستودع على نتائج تحليل الثغرة الأمنية الحرجة CVE-2024-3094 (باب خلفي في مكتبة liblzma من حزمة xz-utils، يؤدي إلى RCE عبر عملية OpenSSH).
ضمن إطار المشروع، تم إعداد بيئة اختبار معزولة، وتطوير نموذج تهديد، وكتابة فحوصات آلية.
Dockerfile — سيناريو بناء البيئة (Debian Bookworm) مع جميع التبعيات (OpenSSH وPython 3 وvenv وpytest وpwntools).tests/ — دليل الاختبارات الآلية (pytest):
test_vulnerability.py / tests_vulnerability.py — اختبارات تكامل لوظائف SSH واختبارات Mock للتحقق من سلوك نظام اكتشاف الباب الخلفي.exploit/ — نصوص برمجية لإثبات المفهوم (PoC) لمحاكاة الهجوم.docs/ — نموذج التهديد (Threat Model) بصيغة Markdown والرسوم البيانية.reports/ — تقارير عن نتائج التحليل الثابت/الديناميكي.تُجرى جميع الاختبارات والتحليلات في حاوية Docker معزولة، لتجنب تعريض النظام المضيف للخطر.
تقوم الصورة بتثبيت خادم SSH (بكلمة المرور root:screencast) وإعداد بيئة Python الافتراضية مع جميع المكتبات اللازمة.
docker build -t cveanalysis:20243094 .
تُشغَّل الحاوية في الوضع الخلفي. يتم توجيه منفذ SSH الداخلي (22) إلى المنفذ 2222 على الجهاز المضيف.
docker run -d -p 2222:22 --name cve-test cveanalysis:20243094
لتشغيل جميع ملفات الاختبار (test_vulnerability.py وtests_vulnerability.py)، نفّذ الأمر التالي من جهازك المضيف:
docker exec -it cve-test pytest -v tests/*
ماذا تتحقق منه الاختبارات:
root:screencast).إذا أردت اختبار النصوص البرمجية من مجلد exploit/ (أو الاتصال عبر SSH يدويًا) من جهازك المضيف، استخدم المنفذ المُعاد توجيهه 2222:
# Пример ручного входа
ssh [email protected] -p 2222
# Пароль: screencast
# Пример запуска вашего PoC скрипта (если он требует внешнего запуска)
python3 exploit/PoC.py 127.0.0.1
بعد الانتهاء من التحليل، أوقف الحاوية الاختبارية واحذفها:
docker stop cve-test
docker rm cve-test