CVE-2026-90885
Apache Camel: Camel-Saxon XML बाह्य एंटिटी प्रोसेसिंग - XQueryBuilder ने एक संदेश बॉडी को पार्स किया जो पहले से ही javax.xml.transform.Source थी, Saxon की डिफ़ॉल्ट पार्सर सेटिंग्स के साथ, इसलिए उस बॉडी में घोषित एक बाह्य एंटिटी को हल किया गया
- प्रकाशित
- 26 अक्टू॰ 2026
- अद्यतन
- 26 अक्टू॰ 2026
- सीएनए असाइन करना
- apache
- साक्ष्य देखे गए
- 30 अक्टू॰ 2026
प्राथमिक सीवीएसएस
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:Nकम · अगले 30 दिन
- प्रतिशत
- 48.5%
- मॉडल दिनांक
- 29 अक्टू॰ 2026
ईपीएसएस एक सांख्यिकीय अनुमान है, कोई निश्चितता या प्रभाव का माप नहीं। इसे सीवीएसएस, केईवी स्थिति, एक्सपोज़र और अपने वातावरण के साथ मिलाएं।
सारांश
Apache Camel Saxon घटक में XML External Entity Reference के अनुचित प्रतिबंध की भेद्यता। यह समस्या Apache Camel को प्रभावित करती है: 4.0.0 से 4.18.5 से पहले तक, 4.19.0 से 4.22.2 से पहले तक। camel-saxon में XQueryBuilder, जो xquery भाषा और xquery घटक के लिए अभिव्यक्तियों का मूल्यांकन करता है, ने अपना डिफ़ॉल्ट Saxon Configuration ऐसे parse विकल्पों के साथ बनाया जो केवल एक whitespace stripping नियम सेट करते थे, जिससे XML parser अपने डिफ़ॉल्ट पर ही रह गया, जिनके अंतर्गत DOCTYPE घोषणा स्वीकार की जाती है और external entities हल की जाती हैं। String या byte[] प्रकार का संदेश body, या InputStream के रूप में पढ़ा गया कोई भी body, पहले Camel के अपने XML type converters द्वारा javax.xml.transform.Source में बदला जाता है, जो parser को external entities के विरुद्ध कॉन्फ़िगर करते हैं, इसलिए वे bodies प्रभावित नहीं थीं। हालाँकि, जो body पहले से ही Source थी, उसे Saxon को अपरिवर्तित सौंप दिया जाता था, और जब उस Source को अभी भी parse करना होता था, जैसा कि stream-based Source करता है, तो Saxon उसे उसी Configuration के साथ parse करता था, जिससे अन्य body प्रकारों पर लागू सुरक्षा को बायपास कर दिया जाता था। ऐसी body उदाहरण के लिए तब उत्पन्न होती है जब कोई route संदेश को convertBodyTo(Source.class) के साथ परिवर्तित करता है, या जब route में पहले का कोई घटक या processor body को stream-based Source पर सेट करता है। इसलिए उस body में घोषित external subset वाला DOCTYPE, या कोई external entity, हल किया जाता था और उस दस्तावेज़ में विस्तारित किया जाता था जिसके विरुद्ध अभिव्यक्ति का मूल्यांकन किया जाता था। कोई external प्रेषक जिसका XML उस रूप में किसी XQuery अभिव्यक्ति या xquery endpoint तक पहुँचता है, Camel प्रक्रिया द्वारा पढ़ी जा सकने वाली फ़ाइलों को पढ़ सकता था और प्रक्रिया को उन होस्ट्स पर अनुरोध जारी करने के लिए प्रेरित कर सकता था जिनका नाम दस्तावेज़ में है। किसी गैर-डिफ़ॉल्ट विकल्प की आवश्यकता नहीं है, क्योंकि डिफ़ॉल्ट Configuration का उपयोग तब किया जाता है जब route अपना कोई विकल्प प्रदान नहीं करता। उपयोगकर्ताओं को संस्करण 4.23.0 में अपग्रेड करने की सलाह दी जाती है, जो इस समस्या को ठीक करता है। यदि उपयोगकर्ता 4.22.x रिलीज़ श्रृंखला पर हैं, तो उन्हें 4.22.2 में अपग्रेड करने का सुझाव दिया जाता है। यदि उपयोगकर्ता 4.18.x रिलीज़ श्रृंखला पर हैं, तो उन्हें 4.18.5 में अपग्रेड करने का सुझाव दिया जाता है। 4.14.x रिलीज़ श्रृंखला और उससे पहले की, साथ ही 4.15.x से 4.17.x और 4.19.x से 4.21.x रिलीज़ लाइनें, इस समस्या के समाधान से पहले ही end of life तक पहुँच चुकी थीं और उन्हें कोई fix नहीं मिलेगा, इसलिए उन पर तैनातियों को किसी समर्थित रिलीज़ पर स्थानांतरित होना चाहिए। जो तैनातियाँ तुरंत अपग्रेड नहीं कर सकतीं, उन्हें ऐसी संदेश body पर XQuery का मूल्यांकन नहीं करना चाहिए जो पहले से ही javax.xml.transform.Source है और जब वह body किसी अविश्वसनीय प्रेषक से XML ले जाती हो, या xquery endpoint या भाषा के configuration विकल्प को ऐसे Saxon Configuration पर सेट करना चाहिए जिसके parse विकल्प DOCTYPE घोषणा को अस्वीकार करें और external entities तथा external DTD लोडिंग को अक्षम करें, जो अब ठीक किए गए रिलीज़ डिफ़ॉल्ट रूप से लागू करते हैं।
जिम्मेदारीपूर्ण उपयोग
भेद्यता जानकारी का उपयोग केवल उन प्रणालियों पर करें जिनके मालिक आप हैं या परीक्षण के लिए अधिकृत हैं। किटप्लॉइट सार्वजनिक अनुसंधान मेटाडेटा से लिंक करता है और शोषण कोड या दुर्भावनापूर्ण पेलोड को संग्रहीत नहीं करता है।