
تقنية استغلال البرمجة الموجّهة نحو خطأ التجزئة
هذا هو مستودع القطع الأثرية لتقنية الاستغلال المعروفة بالبرمجة الموجّهة نحو خطأ التجزئة.
نصف هنا بإيجاز القطع الأثرية الموجودة في هذا المستودع. في المجمل، هناك ثماني قطع أثرية مختلفة، تتكوّن من ستة استغلالات PoC واستغلالَين في برامج من العالم الحقيقي (Nginx وLadybird):
PoCs:
bSFOP_ek: استغلال bSFOP كامل يستخدم سلسلةً لتسجيل الإشارة و Early Kill لشنّ الهجوم.bSFOP_fixed: نسخة أبسط من bSFOP لتصحيح الأخطاء، مع إشارة مسجَّلة يدويًا وقطعة معطوبة يدويًا لشنّ الهجوم.bSFOP_multistage: مماثل لـ bSFOP_fixed، لكن لا يُرسَل كامل الحمولة في البداية، بل تُقرأ على أجزاء متعددة.chain: مثال معزول عن استخدام سلسلة لتسجيل sigaction.fSFOP_ek: استغلال fSFOP كامل يستخدم سلسلةً لتسجيل الإشارة و Early Kill لشنّ الهجوم.fSFOP_fixed: نسخة أبسط من fSFOP لتصحيح الأخطاء، مع إشارة مسجَّلة يدويًا وقطعة معطوبة يدويًا لشنّ الهجوم.vulnerable-nginx: نسخة معدّلة من Nginx تحتوي على الثغرة CVE-2013-2028. تعرض fSFOP مع سلسلة مخصصة لتسجيل الإشارة واستخدام Early Kill.
vulnerable-ladybird: نسخة معدّلة من SerenityOS تحتوي على الثغرة CVE-2021-4327. تعرض fSFOP مع سلسلة مخصصة لتسجيل الإشارة واستخدام Early Kill.
كل ملف يأتي مع ملف README خاص به.
كل PoC مُحوَّل إلى Docker. Docker هو المتطلب البرمجي الوحيد.
يتطلب تشغيل PoCs فرضًا نشطًا لـ CET.
لتحقيق ذلك:
اختبرنا تجاربنا على أجهزة متعددة، منها: