
نص استغلال بلغة Python لـ CVE-2024-23897 (Jenkins RCE) مع مختبر ضعيف آلي قائم على Docker للاختبار الأمني الموجه والتعليم.
CVE-2024-23897 هي ثغرة حرجة تم اكتشافها في Jenkins، وهي أداة تكامل مستمر شهيرة. تسمح هذه الثغرة بتنفيذ الأوامر عن بُعد (RCE) على خادم Jenkins بسبب عدم وجود قيود مناسبة على وظائف الوصول إلى العقد والاتصال.
CVE-ID: CVE-2024-23897Type: Remote Code Execution (RCE)Impact: يمكن للمهاجم غير الموثوق إرسال طلبات مصممة خصيصًا تسمح بتنفيذ أوامر عشوائية على خادم Jenkins، مما يؤدي إلى اختراق النظام.Affected: إصدارات Jenkins قبل إصلاح هذه CVE.jenkins-cli.jar الذي يسمح بالاتصال بين Jenkins وعقده.Jenkins.Jenkins إلى أحدث إصدار متاح تم إصلاح هذه الثغرة فيه.يستغل هذا السكربت المكتوب بلغة Python الثغرة CVE-2024-23897 في خوادم Jenkins القديمة. يتفاعل السكربت مع خادم Jenkins وينفذ أوامر عشوائية باستخدام ملف jenkins-cli.jar.
Python 3.xrequests و subprocess مثبتة في بيئة التنفيذ.Jenkins المعرض للثغرة.تنزيل الملف jenkins-cli.jar` من خادم Jenkins.توصيل عقدة Jenkins باستخدام الملف الذي تم تنزيله وتنفيذ أوامر ضارة على الخادم البعيد.تنفيذ إجراءات محددة مثل قراءة ملفات عشوائية على الخادم.تثبيت التبعيات: تأكد من تثبيت Python 3 ومكتبة requests. يمكنك تثبيتها باستخدام pip:pip3 install requests
استخدام السكربت: قم بتنزيل ملف سكربت الاستغلال وتشغيله من الطرفية:
python3 cve-2024-23897.py
سيطلب منك السكربت إدخال المعاملات التالية:
عنوان IP لخادم Jenkins: عنوان IP الذي يعمل عليه Jenkins.منفذ خادم Jenkins: المنفذ الذي يستمع عليه Jenkins (الافتراضي هو 8080).مسار قراءة الملف: مسار الملف الذي تريد الوصول إليه على الخادم المعرض للثغرة (على سبيل المثال، /etc/passwd).سيقوم السكربت بتنزيل ملف jenkins-cli.jar من خادم Jenkins ثم تنفيذ الأوامر المحددة في الملف الذي أشرت إليه كمعامل.
لاختبار الثغرة في بيئة محكومة، قمنا بتضمين مختبر معرض للثغرة يعتمد على Docker. كل ما عليك فعله هو فك ضغط ملف ZIP على جهاز Kali Linux الخاص بك، تشغيل ملف .sh، ونشر بيئة Docker لإجراء الاختبار.
تنزيل المختبر .tar: أولاً، فك ضغط الملف الذي يحتوي على المختبر المعرض للثغرة:
تشغيل سكربت النشر: داخل مجلد، يجب أن يكون لديك الملفان، أحدهما auto_mount.sh. هذا السكربت مصمم لنشر بيئة Docker المعرضة للثغرة تلقائيًا والمختبر بصيغة TAR الذي يجب تمريره كمعامل. قم بتشغيله باستخدام:
bash auto_mount.sh cve-2024-23897.tar
سيأخذ السكربت ملف Docker المضغوط .tar كمعامل لتشغيل الحاوية المعرضة للثغرة واختبار استغلال الثغرة.
الاتصال بخادم Jenkins: بمجرد تشغيل بيئة Docker، ستتمكن من الاتصال بخادم Jenkins من جهاز Kali Linux الخاص بك. ستكون واجهة Jenkins متاحة على عنوان IP والمنفذ المكونين في الحاوية.
تشغيل سكربت الاستغلال: الآن بعد تشغيل خادم Jenkins المعرض للثغرة، يمكنك تشغيل سكربت الاستغلال على جهاز Kali ومحاولة تنفيذ الأوامر عن بُعد على Jenkins.
Python لاستغلال الثغرة CVE-2024-23897.Docker المعرضة للثغرة تلقائيًا.Docker مضغوط لرفع خادم Jenkins معرض للثغرة.طوره: d1se0
تواصل: [email protected]