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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-60093 — أدوات إعادة إنتاج لإثبات المفهوم لثغرة اجتياز المسار في Apache Camel (CVE-2026-60093) في camel-azure-storage-datalake، والتي توضح كتابة ملفات عشوائية عبر downloadToFile. | Kitploit
أدوات/GitHubGitHub/oscerd/cve-2026-60093
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبالأوراق والأبحاثالتعلم والتعليم
GitHuboscerd/cve-2026-60093

CVE-2026-60093

أدوات إعادة إنتاج لإثبات المفهوم لثغرة اجتياز المسار في Apache Camel (CVE-2026-60093) في camel-azure-storage-datalake، والتي توضح كتابة ملفات عشوائية عبر downloadToFile.

عرض المستودع
منذ 9س 26دلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-60093 — تجاوز المسار downloadToFile في camel-azure-storage-datalake

نماذج إثبات مفهوم (PoC) قابلة للتشغيل تُعيد إنتاج نفس ثغرة Apache Camel، نموذج واحد لكل بيئة تشغيل:

كلا النموذجين متأثران (تم إصلاح المشكلة في 4.14.9 / 4.18.4 / 4.22.0)، ويُظهر كلاهما العيب ذاته تمامًا: يمكن لمكوّن camel-azure-storage-datalake تنزيل ملف ADLS Gen2 إلى نظام الملفات المحلي عبر عملية downloadToFile الخاصة به، والكتابة داخل الدليل المُحدَّد بخيار fileDir. كانت DataLakeFileOperations.downloadToFile تُنشئ الهدف المحلي بضم fileDir إلى اسم المسار البعيد تمامًا كما أبلغ عنه Azure SDK (new File(fileDir, fileClientWrapper.getFileName())) — دون أي تطبيع معجمي ودون أي تحقق من بقاء الموقع المُحلَّل داخل fileDir. لا يخضع الاسم البعيد للتحكم عبر المسار: يعدّ المستهلك نظام الملفات (DataLakeConsumer.createBatchExchangesFromPath) وينزّل كل مُدخل. لذلك فإن اسم المسار الذي يحتوي على مقاطع ../ يُحل خارج fileDir (CWE-22، تجاوز المسار → كتابة ملف تعسفية).

ملاحظة حول بيئة الاختبار. لا تنفّذ أي محاكٍ محلي متاح واجهة برمجة تطبيقات Azure Data Lake Gen2 — يُرجع Azurite HTTP 400 لعمليات Gen2 listPaths وعمليات الملفات. لذلك تقود هذه النماذج الكود القابل للاستغلال تمامًا (DataLakeFileOperations.downloadToFile → new File(fileDir, fileClientWrapper.getFileName())) مباشرةً، مع توفير غلاف عميل ملفات Data Lake تُرجع فيه getFileName() الاسم البعيد — تمامًا كما يزوّد المستهلك بالاسم الذي قرأه من PathItem.getName(). يتشارك المكوّن الشقيق camel-azure-storage-blob في الإصلاح نفسه (CVE-2026-66906) وهناك يُعاد إنتاج العيب المتطابق من البداية إلى النهاية مقابل محاكي Azurite حيّ.

root@kitploit:~
cd camel-spring-boot   # or: cd camel-quarkus
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down

المخرجات المتوقعة على بناء متأثر (كلا النموذجين):

root@kitploit:~
2) Download of a file named '../../../../../../tmp/pwned-60093.txt':
     resolved local target: /app/downloads/../../../../../../tmp/pwned-60093.txt
File written OUTSIDE it, at /tmp/pwned-60093.txt: true
    content: PWNED via path traversal — CVE-2026-60093
>>> PROVEN: DataLakeFileOperations.downloadToFile built the local target as new File(fileDir, fileName) ... : true

ملخص الثغرة

النشرة الأمنية: https://camel.apache.org/security/CVE-2026-60093.html

الإصلاح

أصبح المستهلك الآن يُحلّل هدف التنزيل ويقيّده بدليل fileDir المُعد (عبر AzureFileNameHelper.resolveWithinDirectory)، رافضًا أسماء المسارات التي قد تخرج عنه — وهو نفس الإصلاح الذي يغطي camel-azure-storage-blob (CVE-2026-66906).

إخلاء المسؤولية

نُشر هذا المستودع لأغراض تعليمية ودفاعية: لمساعدة مستخدمي Apache Camel على فهم الثغرة، والتحقق مما إذا كانوا متأثرين بها، والتأكد من أن الترقية تحلّها. الملف المكتوب هو علامة حميدة تحت /tmp. لا تستخدم هذه المادة ضد أنظمة لا تملكها أو لا تشغّلها.

تنزيل الأداة
بيئة التشغيلالدليلالمكدس التقني
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-azure-storage-datalake 4.18.2
Camel Quarkuscamel-quarkus/Quarkus 3.36.0 + Camel Quarkus 3.36.0 (يضم Camel 4.20.0)
الخاصيةالقيمة
المكوّنcamel-azure-storage-datalake (Spring Boot: camel-azure-storage-datalake-starter; Quarkus: camel-quarkus-azure-storage-datalake)
CWECWE-22 (تقييد غير سليم لاسم المسار داخل دليل مقيد — تجاوز المسار)
متجه الهجومملف Gen2 يحتوي اسم مساره على مقاطع ../، ويتم تنزيله بواسطة المستهلك مع تعيين fileDir
الأثركتابة ملف تعسفية خارج دليل fileDir المُعد
الإصدارات المتأثرةمن 4.0.0 وحتى ما قبل 4.14.9، ومن 4.15.0 وحتى ما قبل 4.18.4، ومن 4.19.0 وحتى ما قبل 4.22.0
الإصدارات المُصلحة4.14.9، 4.18.4، 4.22.0
JIRACAMEL-23942
الإسنادn0mi1k; Hiep Nguyen