مرجع النص الأصلي
لمزيد من التفاصيل حول نص الاستغلال الأصلي، راجع رابط gist CVE-2013-0156
نص استغلال CVE-2013-0156
هذا النص مصمم خصيصًا لحل التحدي على PentesterLab لاستغلال CVE-2013-0156. يمكنك الوصول إلى التحدي هنا: PentesterLab - تحدي CVE-2013-0156.
نص Python هذا مصمم لاستغلال ثغرة CVE-2013-0156، وهي مشكلة تنفيذ الأوامر عن بُعد (RCE) خطيرة في تطبيقات Ruby on Rails ناتجة عن إلغاء تسلسل غير آمن لكائنات YAML. تسمح الثغرة للمهاجم بحقن كود عشوائي من خلال حمولة YAML مصممة، مما يؤدي إلى تنفيذ الأوامر على الخادم الهدف.
الميزات
- حقن الحمولة: يرسل النص حمولة XML مصممة إلى URL الهدف، مستغلًا ثغرة إلغاء التسلسل في تطبيقات Rails الضعيفة (Rails 2.x و 3.x).
- إصدار الهدف قابل للتخصيص: يدعم تحديد ما إذا كان الهدف هو Rails 2.x أو 3.x، مما يتيح تحكمًا أكبر في تنسيق الحمولة.
- مخرجات منسقة: يقدم النص مخرجات منظمة وجذابة بصريًا مع تفاصيل الطلب والاستجابة مرمزة بالألوان، مما يسهل تتبع حالة الاستغلال والاستجابة.
- إشعار النجاح: عند الاستغلال بنجاح، يخطر النص المستخدم بأنه تم تنفيذ الاستغلال بنجاح.
الاستخدام
التثبيت
تأكد من تثبيت حزم Python المطلوبة عن طريق تشغيل:
pip install requests colorama pyyaml
تشغيل النص
python exploit.py <URL> <PAYLOAD> [rails3|rails2] [--show ]
مثال
python exploit.py http://example.com/payload example_payload rails3 --show
مثال على المخرجات
عند التنفيذ الناجح، سيعرض النص مخرجات مرمزة بالألوان تحتوي على الأقسام التالية:
- الطلب: يعرض URL، الرؤوس، وحمولة XML التي يتم إرسالها.
- الاستجابة: تعرض رمز الحالة ونص الاستجابة (مختصر للاستجابات الكبيرة).
- إشعار النجاح/الفشل: يخطرك إذا كان الاستغلال ناجحًا أو إذا حدث خطأ.
ملاحظات مهمة
- الاستخدام المسؤول: هذا النص مصمم لأغراض تعليمية ويجب استخدامه فقط على أنظمة لديك إذن لاختبارها. الاستغلال غير المصرح به لهذه الثغرة غير قانوني وغير أخلاقي.
- إصدارات Rails: يدعم هذا النص Rails 3.x و 2.x. تأكد من أن الهدف يعمل بإصدار ضعيف من Rails قبل محاولة الاستغلال.