Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
poc-CVE-2024-23897 — CVE-2024-23897: قراءة ملف عشوائي في Jenkins تؤدي إلى RCE | Kitploit
أدوات/GitHubGitHub/vmc8ll/poc-cve-2024-23897
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبجمع المعلوماتاختبار الاختراقالفريق الأحمرتطوير الحمولات
GitHubvmc8ll/poc-cve-2024-23897

poc-CVE-2024-23897

CVE-2024-23897: قراءة ملف عشوائي في Jenkins تؤدي إلى RCE

عرض المستودع
2منذ 6 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

poc-CVE-2024-23897

CVE-2024-23897: Jenkins قراءة ملف عشوائية تؤدي إلى تنفيذ كود عن بُعد 🎯 المنتجات والإصدارات المتأثرة

root@kitploit:~
المنتج: Jenkins (خادم التكامل المستمر/التسليم المستمر)

الإصدارات: Jenkins 2.441 والإصدارات السابقة، Jenkins LTS 2.426.2 والإصدارات السابقة

تم الإصلاح في: Jenkins 2.442, Jenkins LTS 2.426.3

📝 الوصف

CVE-2024-23897 هي ثغرة خطيرة في Jenkins تسمح للمهاجمين غير المصادَق عليهم بقراءة ملفات عشوائية على نظام ملفات وحدة التحكم في Jenkins. توجد الثغرة لأن Jenkins لا يعطل ميزة في محلل أوامر CLI الخاصة به والتي تستبدل الحرف '@' المتبوع بمسار ملف بمحتويات الملف.

يمكن أن يؤدي هذا العيب إلى تنفيذ كود عن بُعد (RCE) عند دمجه مع تقنيات أخرى، مما يجعله خطيرًا بشكل خاص للمؤسسات التي تستخدم Jenkins في خطوط الأنابيب الخاصة بـ CI/CD الخاصة بها. 🔍 تفاصيل الثغرة السبب الجذري

تنبع الثغرة من دالة expandAtFiles() في الفئة org.kohsuke.args4j.CmdLineParser. عند تحليل وسائط CLI، إذا واجه المحلل رمز '@' متبوعًا بمسار ملف، فإنه يقرأ ويوسع محتوى ذلك الملف. متجه الهجوم

يمكن للمهاجمين استغلال هذه الثغرة باستخدام واجهة CLI الخاصة بـ Jenkins دون مصادقة: bash

java -jar jenkins-cli.jar -s http://target-jenkins-server:8080/ help @/etc/passwd

تحليل تقني قيود قراءة الملف

root@kitploit:~
بدون مصادقة: يمكن قراءة أول 3 أسطر فقط من الملف (اعتمادًا على أمر CLI)

بصلاحية 'Overall/Read': يمكن قراءة محتوى الملف بالكامل

الملفات الثنائية: يمكن استخراجها ولكن قد تتأثر بمشكلات الترميز (Windows-1252 على Windows يعطي نتائج أفضل من UTF-8 على Linux)

توسيع سطح الهجوم

بمجرد تحقيق قراءة الملف، يمكن للمهاجمين التصعيد إلى هجمات أكثر خطورة:

root@kitploit:~
استخراج بيانات الاعتماد:

    اقرأ /var/jenkins_home/credentials.xml للحصول على بيانات الاعتماد المشفرة

    اقرأ /var/jenkins_home/secrets/master.key و hudson.util.Secret لفك التشفير

    فك تشفير بيانات الاعتماد باستخدام وحدة التحكم النصية في Jenkins: println(Hudson.util.Secret.fromString("{XXX=}").getPlainText())

تزوير ملفات تعريف الارتباط 'Remember-me':

    الحصول على وصول إداري عن طريق تزوير ملفات تعريف الارتباط للمصادقة

تنفيذ كود عشوائي:

    تحقيق RCE عبر متجهات Resource Root URL أو XSS أو CSRF

💥 التأثير التأثير الفوري

root@kitploit:~
السرية: الإفصاح الكامل عن جميع الملفات على خادم Jenkins (الكود المصدر، بيانات الاعتماد، مفاتيح SSH، الرموز)

النزاهة: يمكن للمهاجمين تعديل البنيات وخطوط الأنابيب والتكوينات

التوفر: احتمالية رفض الخدمة أو نشر برامج الفدية

الاستغلال في العالم الحقيقي

تم استغلال هذه الثغرة بنشاط في البرية:

root@kitploit:~
أُضيفت إلى كتالوج CISA للثغرات المستغلة المعروفة (KEV)

استُخدمت من قبل عصابات برامج الفدية (RansomEXX) لاختراق البنية التحتية

استُغلت من قبل جهة تهديد IntelBroker لسرقة مستودعات GitHub واختراق مزودي خدمات تكنولوجيا المعلومات

🔧 الكشف مؤشرات الاختراق

يمكن اكتشاف محاولات الاستغلال الناجحة من خلال:

أنماط طلبات HTTP: text

POST /cli?remoting=false HTTP/1.1 Content-type: application/octet-stream [binary payload containing @/path/to/file]

أمثلة نموذجية للحمولة:

root@kitploit:~
@/etc/passwd

@/var/jenkins_home/secrets/initialAdminPassword

@/etc/os-release

استعلام كشف Splunk text

index=web uri="/cli?remoting=false" http_method=POST http_status=200

🛡️ التخفيف الإصلاح الرسمي

قم بالترقية إلى الإصدارات المصححة:

root@kitploit:~
Jenkins ≥ 2.442

Jenkins LTS ≥ 2.426.3

التخفيف المؤقت

إذا لم يكن التصحيح الفوري ممكنًا:

root@kitploit:~
تعطيل الوصول إلى CLI في Jenkins

تعيين خاصية نظام Java: hudson.cli.CLICommand.allowAtSyntax=false

تقييد الوصول الشبكي إلى واجهة إدارة Jenkins

تنفيذ قواعد WAF لحظر الطلبات التي تحتوي على أنماط @/

🔗 المراجع

root@kitploit:~
[إدخال NVD](https://nvd.nist.gov/vuln/detail/CVE-2024-23897)

[نشرة أمان Jenkins](https://www.jenkins.io/security/advisory/2024-01-24/)

[كتالوج CISA KEV](https://www.cisa.gov/known-exploited-vulnerabilities-catalog)

[بحث Splunk](https://www.splunk.com/en_us/blog/security/cve-2024-23897-jenkins-arbitrary-file-read-vulnerability.html)

[صفحة Tenable CVE](https://www.tenable.com/cve/CVE-2024-23897)

📦 البناء والتشغيل bash

Build the exploit

go build -o jenkins-cve-2024-23897 exploit.go

Run the exploit

./jenkins-cve-2024-23897 http://target-jenkins:8080 /etc/passwd

Run with Go directly

go run exploit.go http://target-jenkins:8080 /etc/passwd

🎯 أمثلة الاستخدام bash

Read sensitive files

./jenkins-cve-2024-23897 http://jenkins.internal:8080 /etc/passwd ./jenkins-cve-2024-23897 http://localhost:8080 /var/jenkins_home/secrets/initialAdminPassword

Read Windows file (if Jenkins runs on Windows)

./jenkins-cve-2024-23897 http://win-jenkins:8080 C:/Windows/win.ini

⚙️ كيف يعمل

root@kitploit:~
تهيئة الجلسة: يولد معرف جلسة فريد بحجم 20 بايت

بناء الحمولة: يبني حمولة ثنائية بهيكل help @/path/to/file

مرحلة التحميل: يرسل الحمولة إلى نقطة نهاية CLI في Jenkins

مرحلة التنزيل: يسترجع محتوى الملف من الرد

المخرجات: يعرض محتوى الملف أو رسالة الخطأ

📊 الميزات

root@kitploit:~
تطبيق خالص بلغة Go - لا تبعيات خارجية

متعدد المنصات - يعمل على Windows و Linux و macOS

مهلات قابلة للتكوين - قابلة للتعديل للشبكات البطيئة

معالجة أخطاء نظيفة - رسائل خطأ مفصلة

آمن للثنائيات - يتعامل مع الملفات النصية والثنائية

⚠️ ملاحظات مهمة

root@kitploit:~
لأغراض تعليمية فقط - استخدم فقط على الأنظمة التي تملكها أو لديك إذن لاختبارها

قراءات غير مصادق عليها - بدون مصادقة، يمكن قراءة أول 3 أسطر فقط تقريبًا

الملفات الثنائية - قد تتأثر بمشكلات الترميز (استخدم هدف Windows لاستخراج ثنائي أفضل)
تنزيل الأداة