CVE-2026-40047
Apache Camel: Camel-Docling: التحقق غير الكافي من وسائط سطر الأوامر المخصصة يتيح حقن الوسائط وتجاوز المسارات في DoclingProducer
- تم النشر
- 06/07/2026
- محدث
- 06/07/2026
- تخصيص CNA
- apache
- الأدلة المرصودة
- 06/08/2026
CVSS الأساسي
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:Nمنخفض · الثلاثين يومًا القادمة
- المئوية
- 83.4%
- تاريخ الموديل
- 21/09/2026
EPSS هو تقدير إحصائي، وليس يقينًا أو مقياسًا للتأثير. ادمجها مع CVSS وحالة KEV والتعرض وبيئتك.
ملخص
تحييد غير صحيح لمحددات الوسائط في أمر ('Argument Injection') ثغرة في مكوّن Apache Camel Docling. يستدعي مكوّن camel-docling أداة سطر الأوامر الخارجية `docling` من خلال تجميع قائمة وسائط في DoclingProducer وتنفيذها عبر java.lang.ProcessBuilder. تم إلحاق وسائط CLI مخصصة مقدمة عبر ترويسة تبادل `CamelDoclingCustomArguments` (وهي List<String>) بتلك القائمة مع تحقق غير كافٍ: اعتمد التنفيذ الأصلي على قائمة حظر من العلامات غير المسموح بها ورفض فقط قيم المسارات التي تحتوي على تسلسل حرفي `../`. نتيجة لذلك، يمكن لمسار Camel يمرر بيانات متأثرة خارجيًا إلى ترويسة `CamelDoclingCustomArguments` (أو إلى الترويسات الحاملة للمسارات المستخدمة لبناء الاستدعاء) أن يتسبب في تمرير المنتج لعلامات `docling` CLI غير معروفة أو غير مقصودة إلى العملية الفرعية، ويمكن أن يوفر قيم وسائط شبيهة بالمسارات تُحل خارج الدليل المقصود عبر تسلسلات اجتياز لا يلتقطها فحص `../` الحرفي. نظرًا لأن Camel نفسه يبني استدعاء `docling` من هذه القيم، فإن المكوّن مسؤول عن تقييدها، وقد سمح التحقق الضعيف بحقن وسائط CLI واجتياز الدلائل في الوسائط الممررة إلى الأداة الخارجية. يستخدم الاستدعاء الشكل القائم على القائمة من ProcessBuilder، لذا لا يفسر الغلاف قيم الوسائط؛ لم يكن حقن أوامر نظام التشغيل عبر محارف الغلاف ممكنًا، ورفض المحارف الوصفية المضاف بواسطة الإصلاح هو دفاع متعمق. تؤثر هذه المشكلة على Apache Camel: من 4.15.0 قبل 4.18.3. يُنصح المستخدمون بالترقية إلى إصدار يحتوي على إصلاح CAMEL-23212. على الخط الرئيسي، يتم تضمين الإصلاح من Apache Camel 4.19.0 (والإصدارات اللاحقة مثل 4.20.0). للمستخدمين على سلسلة إصدارات 4.18.x LTS، قم بالترقية إلى 4.18.3. يستبدل الإصلاح قائمة الحظر بقائمة سماح صارمة من علامات `docling` CLI المعروفة (يرفض أي علامة غير معروفة، ويرفض العلامات المُدارة من المنتج مثل علامات دليل الإخراج)، ويرفض دفاعيًا محارف الغلاف في قيم الوسائط، ويطبيع القيم الشبيهة بالمسارات باستخدام Path.normalize() قبل التحقق منها بحيث يتم اكتشاف تسلسلات الاجتياز التي تتجاوز فحص `../` الحرفي. كدفاع متعمق، يجب على مؤلفي المسارات تجنب تمرير محتوى رسائل غير موثوق إلى ترويسة `CamelDoclingCustomArguments` والترويسات الحاملة للمسارات، ويجب عليهم إزالة ترويسات Camel الداخلية من الرسائل القادمة من منتجين غير موثوقين.
المصادر
2الاستخدام المسؤول
استخدم معلومات الثغرات الأمنية فقط على الأنظمة التي تمتلكها أو المرخص لها باختبارها. يرتبط Kitploit ببيانات تعريف البحث العامة ولا يخزن أكواد الاستغلال أو الحمولات الضارة.