
يحتوي هذا المستودع على إثبات مفهوم (PoC) لاستغلال ثغرة CVE-2024-32002، وهي ثغرة أمنية في Git تسمح بتنفيذ الأوامر عن بُعد (RCE) أثناء عملية git clone. من خلال إنشاء مستودعات مع وحدات فرعية بطريقة محددة، يمكن للمهاجم استغلال معالجة الروابط الرمزية (symlink) على أنظمة الملفات غير الحساسة لحالة الأحرف لكتابة ملفات داخل دليل .git/، مما يؤدي إلى تنفيذ خطافات (hooks) ضارة.
يحتوي هذا المستودع على إثبات المفهوم (PoC) لـ CVE-2024-32002، وهي ثغرة تنفيذ التعليمات البرمجية عن بُعد (RCE) في الوحدات الفرعية لـ Git. يوضح الاستغلال كيفية تشغيل حمولة ضارة من خلال استنساخ متكرر لمستودع Git.
قبل تشغيل PoC، قم بإنشاء المستودعات التالية على خادم Git البعيد الخاص بك أو لا تتردد في تغيير الأسماء حسب الحاجة:
hulk.gitsubmod.gitsmash.gitقم بتحديث مسارات المستودع في النص البرمجي لـ PoC وفقًا لذلك إذا قمت بتغيير الأسماء.
يستغل الاستغلال الوحدات الفرعية لـ Git لتنفيذ حمولة على النظام المستهدف عند استنساخ المستودع بشكل متكرر. تم اختبار هذا PoC على macOS.
HULK_REPO="[email protected]:safebuffer/hulk.git"
pullme_REPO="[email protected]:safebuffer/submod.git"
# Final Exploit Repo
SMASH_REPO="[email protected]:safebuffer/smash.git"
لتشغيل الاستغلال، قم بتشغيل النص البرمجي poc.sh ثم نفذ الأمر التالي:
git clone --recursive $SMASH_REPO
الحمولة الافتراضية في هذا PoC تفتح تطبيق الآلة الحاسبة على macOS. يمكنك تغيير ذلك إلى أي حمولة تختارها.
/System/Applications/Calculator.app/Contents/MacOS/Calculator
هذا PoC مخصص للأغراض التعليمية فقط. استخدمه بمسؤولية وفقط على الأنظمة التي لديك إذن صريح لاختبارها. يمكن أن يؤدي إساءة استخدام هذا PoC إلى عواقب وخيمة.