Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-85313 — نموذج إثبات مفهوم قابل للتشغيل بـ Spring Boot يعيد إنتاج CVE-2026-85313، حيث يعكس Apache Camel camel-jetty enableCORS أي أصل (origin) مع بيانات الاعتماد، إضافةً إلى نسخة تحكم بإصدار مُصحَّح. | Kitploit
أدوات/GitHubGitHub/oscerd/cve-2026-85313
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبتدقيق التكوينأمن الويبالتعلم والتعليم
GitHuboscerd/cve-2026-85313

CVE-2026-85313

نموذج إثبات مفهوم قابل للتشغيل بـ Spring Boot يعيد إنتاج CVE-2026-85313، حيث يعكس Apache Camel camel-jetty enableCORS أي أصل (origin) مع بيانات الاعتماد، إضافةً إلى نسخة تحكم بإصدار مُصحَّح.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-85313 — camel-jetty: يمنح enableCORS وصولاً من أي أصل مع بيانات الاعتماد

مُعيد إنتاج قابل للتشغيل لإثبات المفهوم لثغرة Apache Camel حيث أدى تعيين enableCORS=true على نقطة نهاية Jetty إلى تثبيت CrossOriginFilter الخاص بـ Jetty بإعداداته الافتراضية الجاهزة — والتي تعكس كل أصل و تسمح ببيانات الاعتماد. فالمشغّل الذي طلب CORS فحسب حصل على سياسة تتيح لصفحة من أي أصل إجراء طلبات عابرة للأصول مع بيانات الاعتماد إلى نقطة النهاية وقراءة الاستجابات. إن عكس الأصل إلى جانب Access-Control-Allow-Credentials: true هو بالضبط إعداد أي أصل مع بيانات الاعتماد الذي يرفض معيار Fetch أن يعبّر عنه * — إذ يُعدّ العكس هو الطريقة المعتادة للالتفاف على تلك القاعدة (CWE-942).

Spring Boot فقط. تشحن هذه الأداة وحدة Camel Spring Boot واحدة. يكمن العيب في camel-jetty، التي تُضمّن خادم Jetty HTTP. لا يملك Camel Quarkus امتداد camel-quarkus-jetty — إذ يقدّم Quarkus HTTP عبر Vert.x (platform-http) — لذا لا يوجد نظير في Quarkus لإعادة إنتاجه. (يغطي التنبيه المرافق CVE-2026-85316 فئة العيب نفسها في platform-http-vertx.) توضّح وحدة Spring Boot السلوك المتأثر والمُصلَح.

بيئة التشغيلالدليلالحزمة
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-jetty 4.22.0 (متأثرة؛ مُصلَحة 4.22.1)، Jetty 12.1.11

ما الذي توضّحه

يعمل خادما Jetty في عملية واحدة: نقطة النهاية المعرّضة للثغرة /protected (المنفذ 8081) مُعلنة بـ enableCORS=true، ونقطة نهاية التحقق /exploit/attack (المنفذ 8080) تؤدي دور متصفح المهاجم. في كل استدعاء يرسل المُتحقِّق طلب GET عابراً للأصول إلى /protected حاملاً Origin: https://evil.example — وهو أصل لم يُصرّح به النشر قط — ويُبلّغ عن ترويسات CORS التي تعود.

  • المتأثرة: تعكس الاستجابة Access-Control-Allow-Origin: https://evil.example و تُرجع Access-Control-Allow-Credentials: true — أي أصل يمكنه قراءة الاستجابات الحاملة لبيانات الاعتماد.
  • المُصلَحة: لا يزال الأصل يُعكس (بحيث يستمر CORS في العمل للطلبات غير الموثّقة)، لكن لم يعد يُرسَل Access-Control-Allow-Credentials لأصل لم يسمّه المشغّل.
cd camel-spring-boot
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack     # affected: ACAO reflected + ACAC: true; >>> PROVEN
docker compose down
# Patched control
mvn clean package -Dcamel.version=4.22.1
java -jar target/cve-2026-85313-jetty-cors-credentials-0.0.1-SNAPSHOT.jar &
curl -s http://localhost:8080/exploit/attack     # fixed: ACAO reflected, ACAC absent; >>> Not exploited

ملخص الثغرة الأمنية

الخاصيةالقيمة
المكوّنcamel-jetty (JettyHttpComponent، enableCORS)
CWECWE-942 (سياسة نطاقات متقاطعة متساهلة مع نطاقات غير موثوقة)
الخطورةمتوسطة
ناقل الهجومتُصدر صفحة من أي أصل طلبًا متقاطع الأصول مع بيانات اعتماد إلى نقطة نهاية مُهيّأة فقط بـ enableCORS=true
التأثيرتعكس نقطة النهاية أصل المهاجم وتمنح بيانات الاعتماد، لذا يمكن لصفحة المهاجم قراءة الاستجابات الموثّقة
الإصدارات المتأثرةمن 4.0.0 قبل 4.18.5، ومن 4.19.0 قبل 4.22.1
الإصدارات المُصلحة4.18.5، 4.22.1، 4.23.0
JIRACAMEL-24450
الفضلClaude Security Scan Tool

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

الإصلاح

أصبح JettyHttpComponent يطبّق إعداداته الافتراضية الخاصة بـ CORS عند تعيين enableCORS: إذ يصبح allowCredentials افتراضيًا false ما لم يُهيّئه المشغّل صراحةً. ويبقى انعكاس الأصل دون تغيير، لذا يستمر تفعيل CORS في العمل مع الطلبات التي لا تحمل بيانات اعتماد؛ أما المشغّل الذي يحتاج إلى طلبات متقاطعة الأصول مع بيانات اعتماد فيعيّن filterInit.allowCredentials=true ويُتوقع منه تسمية الأصول في filterInit.allowedOrigins (ويُنبَّه إن لم يفعل).

التخفيف إذا تعذّر الترقية

هيّئ معاملات CrossOriginFilter صراحةً بدلًا من الاعتماد على ما يثبّته enableCORS — سمِّ الأصول المسموح بها في filterInit.allowedOrigins واترك filterInit.allowCredentials معطّلًا ما لم تكن قد سمّيتها.

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

نُشر هذا المستودع لأغراض تعليمية ودفاعية: لمساعدة مستخدمي Apache Camel على فهم الثغرة، والتحقق مما إذا كانوا متأثرين بها، وتأكيد أن الترقية تحلّها. أصل "المهاجم" هو عنصر نائب غير ضار (https://evil.example) وكلٌّ من نقطة النهاية والفحص يعملان داخل أداة إعادة الإنتاج. لا تستخدم هذه المواد ضد أنظمة لا تملكها أو لا تديرها.

تنزيل الأداة