CVE-2026-59230
Apache Camel: Camel-Mail: تنسيق بيانات MimeMultipart ينسخ ترويسات MIME إلى رسالة Camel دون استراتيجية تصفية الترويسات عند إلغاء التجميع مع تفعيل headersInline
- تم النشر
- 24/08/2026
- محدث
- 25/08/2026
- تخصيص CNA
- apache
- الأدلة المرصودة
- 24/08/2026
CVSS الأساسي
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:Nمنخفض · الثلاثين يومًا القادمة
- المئوية
- 35.8%
- تاريخ الموديل
- 21/09/2026
EPSS هو تقدير إحصائي، وليس يقينًا أو مقياسًا للتأثير. ادمجها مع CVSS وحالة KEV والتعرض وبيئتك.
ملخص
ثغرة التحقق غير السليم من المدخلات في Apache Camel. تؤثر هذه المشكلة على Apache Camel: من 2.17.0 حتى ما قبل 4.14.9، ومن 4.15.0 حتى ما قبل 4.18.4، ومن 4.19.0 حتى ما قبل 4.22.0. يوفّر مكوّن camel-mail تنسيق بيانات MimeMultipart يمكنه فك ترميز (unmarshal) رسالة MIME متعددة الأجزاء. عند تكوينه مع تعيين headersInline إلى true، ينسخ مسار فك الترميز ترويسات MIME للرسالة الواردة إلى رسالة Camel: فهو يعدّد كل ترويسة ليست واحدة من الترويسات الثلاث القياسية التي يولّدها بنفسه — Message-ID وMIME-Version وContent-Type — ويستدعي setHeader لكل منها، دون تطبيق أي HeaderFilterStrategy. تأتي أسماء ترويسات MIME تلك من الرسالة التي يتم فك ترميزها، لذا يمكن للمرسل القادر على التأثير في الرسالة وضع ترويسة يقع اسمها في النطاق الداخلي لـ Camel (Camel-internal) ويتم تعيينها على الـ Exchange. تقرأ مكوّنات Camel ترويسات التحكم من ذلك النطاق لتجاوز سلوكها المُهيأ — فمنتج camel-sql، على سبيل المثال، يأخذ العبارة المراد تنفيذها من ترويسة Camel عند وجودها — لذا يمكن لترويسة مُحقَنة أن تعيد توجيه ما تفعله خطوة لاحقة في المسار (route) بالبيانات التي لم يقصد مؤلف المسار أبدًا أن تُؤخذ من الرسالة. تعتمد نقاط الوصول (sinks) القابلة للوصول، والعواقب المترتبة عليها، كليًا على ما يفعله المسار بعد خطوة فك الترميز. كان مستهلك camel-mail يطبّق بالفعل إستراتيجية تصفية الترويسات على مساره الوارد الخاص، لذا كان هذا هو المسار الوارد الموازي إلى نفس المكوّن الذي لم تشمله التحصينات السابقة. لا يمكن بلوغ مسار النسخ المتأثر إلا عند تفعيل headersInline، وهو ليس الإعداد الافتراضي: فمع الإعداد الافتراضي تُعرض ترويسات MIME كمرفقات بدلاً من كونها ترويسات للرسالة، ولا تتأثر. يعود هذا السلوك إلى تقديم تنسيق البيانات في الإصدار 2.17.0 وكان حاضرًا في كل سلسلة إصدارات حتى هذا الإصلاح. يُنصح المستخدمون بالترقية إلى الإصدار 4.22.0، الذي يصلح المشكلة. إذا كان المستخدمون على سلسلة إصدارات 4.14.x LTS، فمن المقترح الترقية إلى 4.14.9. وإذا كان المستخدمون على سلسلة إصدارات 4.18.x، فمن المقترح الترقية إلى 4.18.4. بالنسبة لبيئات النشر التي لا يمكنها الترقية فورًا، اترك headersInline عند القيمة الافتراضية false حيث لا تكون الترويسات المضمنة (inline headers) مطلوبة، لأن عملية النسخ لا تُنفَّذ إلا عند تفعيله. وحيث يجب أن يبقى مفعّلاً، قم بإزالة الترويسات الداخلية لـ Camel فورًا بعد خطوة فك الترميز، على سبيل المثال بوضع removeHeaders("Camel*") قبل أي معالج (processor) أو منتج (producer) يقرأ ترويسات التحكم، ولا تقم بفك ترميز محتوى MIME قادم من مرسل غير موثوق إلى مسار يوزّع بناءً على قيم الترويسات. وكإجراء دفاع في العمق، تعامل مع أسماء ترويسات أي رسالة MIME قادمة من خارج حدود الثقة كمدخلات غير موثوقة.
المصادر
الاستخدام المسؤول
استخدم معلومات الثغرات الأمنية فقط على الأنظمة التي تمتلكها أو المرخص لها باختبارها. يرتبط Kitploit ببيانات تعريف البحث العامة ولا يخزن أكواد الاستغلال أو الحمولات الضارة.