CVE-2026-88900
Apache Camel: Camel-JGroups: JGroups कंज़्यूमर में क्लस्टर संदेशों का असुरक्षित Java डीसेरियलाइज़ेशन दूरस्थ कोड निष्पादन (Remote Code Execution) का कारण बन सकता है
- प्रकाशित
- 19 अक्टू॰ 2026
- अद्यतन
- 20 अक्टू॰ 2026
- सीएनए असाइन करना
- apache
- साक्ष्य देखे गए
- 21 अक्टू॰ 2026
प्राथमिक सीवीएसएस
nvd · CVSS 3.1
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:Hकम · अगले 30 दिन
- प्रतिशत
- 46.3%
- मॉडल दिनांक
- 25 अक्टू॰ 2026
ईपीएसएस एक सांख्यिकीय अनुमान है, कोई निश्चितता या प्रभाव का माप नहीं। इसे सीवीएसएस, केईवी स्थिति, एक्सपोज़र और अपने वातावरण के साथ मिलाएं।
सारांश
Apache Camel के Camel-Jgroups घटक में अविश्वसनीय डेटा के डीसेरियलाइज़ेशन का भेद्यता। यह समस्या Apache Camel को प्रभावित करती है: 4.0.0 से 4.18.5 से पहले तक, 4.19.0 से 4.22.1 से पहले तक। JGroupsEndpoint.createExchange(Message), जिसे CamelJGroupsReceiver, jgroups उपभोक्ता द्वारा प्राप्त प्रत्येक संदेश के लिए exchange के रूट होने से पहले कॉल करता है, exchange body को org.jgroups.Message.getObject() से सेट करता है। ObjectMessage के लिए, जो Camel jgroups उत्पादक द्वारा भेजा जाने वाला संदेश प्रकार है, JGroups संदेश आने पर अपने स्वयं के receive थ्रेड पर ObjectInputStream के माध्यम से payload को Java-डीसेरियलाइज़ करता है, और getObject() परिणामी ऑब्जेक्ट लौटाता है। उस पथ पर कोई java.io.ObjectInputFilter लागू नहीं किया गया था, जब तक कि डिप्लॉयमेंट ने JVM-व्यापी serialization फ़िल्टर सेट न किया हो: camel-jgroups ने कोई भी इंस्टॉल नहीं किया, और प्रभावित रिलीज़ के साथ भेजे गए JGroups संस्करण अपने स्वयं के कोई भी लागू नहीं करते हैं, इसलिए एप्लिकेशन classpath पर कोई भी serializable क्लास इंस्टैंशिएट की जा सकती थी और उसके deserialization कॉलबैक चलाए जा सकते थे। जब तक कोई चैनल या channelProperties विकल्प कॉन्फ़िगर नहीं किया जाता, उपभोक्ता अपना चैनल new JChannel() के साथ बनाता है, जो स्टॉक JGroups प्रोटोकॉल स्टैक है, जो AUTH प्रोटोकॉल के बिना और एन्क्रिप्शन के बिना UDP पर मल्टीकास्ट करता है, इसलिए क्लस्टर के मल्टीकास्ट समूह या बाइंड पोर्ट तक पहुँचने में सक्षम कोई भी होस्ट बिना क्रेडेंशियल के क्लस्टर में शामिल हो सकता है और उपभोक्ता को संदेश भेज सकता है। ऐसा होस्ट एक तैयार किया गया serialized ऑब्जेक्ट भेज सकता है जो Camel प्रक्रिया में रिमोट कोड एक्ज़ीक्यूशन का कारण बनता है जब classpath पर एक उपयोगी deserialization गैजेट चेन मौजूद हो, और उपभोक्ता पर कोई गैर-डिफ़ॉल्ट विकल्प आवश्यक नहीं था। चूँकि JGroups Camel के receiver के चलने से पहले ऑब्जेक्ट को भौतिक रूप देता है, Camel द्वारा किया गया जाँच केवल डीसेरियलाइज़ किए गए परिणाम का निरीक्षण कर सकता है और डीसेरियलाइज़ेशन के दौरान चलने वाले कोड को रोक नहीं सकता, इसलिए समस्या को बंद करने के लिए एक ऐसे नियंत्रण की भी आवश्यकता है जो payload पढ़े जाने से पहले लागू हो, जैसा कि शमन में वर्णित है। शोषण के लिए क्लस्टर के मल्टीकास्ट समूह या बाइंड पोर्ट तक नेटवर्क पहुँच की आवश्यकता होती है, जिसका डिफ़ॉल्ट UDP मल्टीकास्ट ट्रांसपोर्ट के साथ अर्थ है कि निकटवर्ती नेटवर्क पर एक होस्ट, और classpath पर एक उपयोगी गैजेट चेन, यही कारण है कि गंभीरता को महत्वपूर्ण के बजाय उच्च के रूप में आंका गया है। उपयोगकर्ताओं को संस्करण 4.23.0 में अपग्रेड करने की सिफारिश की जाती है, जो समस्या को ठीक करता है। यदि उपयोगकर्ता 4.22.x रिलीज़ स्ट्रीम पर हैं, तो उन्हें 4.22.1 में अपग्रेड करने का सुझाव दिया जाता है। यदि उपयोगकर्ता 4.18.x रिलीज़ स्ट्रीम पर हैं, तो उन्हें 4.18.5 में अपग्रेड करने का सुझाव दिया जाता है। 4.14.x रिलीज़ स्ट्रीम और उससे पहले, तथा 4.15.x से 4.17.x और 4.19.x से 4.21.x रिलीज़ लाइनें, इस समस्या के समाधान से पहले जीवन-चक्र के अंत तक पहुँच गई थीं और उन्हें कोई फ़िक्स प्राप्त नहीं होगा, इसलिए उन लाइनों पर डिप्लॉयमेंट को समर्थित रिलीज़ पर स्थानांतरित होना चाहिए।
जिम्मेदारीपूर्ण उपयोग
भेद्यता जानकारी का उपयोग केवल उन प्रणालियों पर करें जिनके मालिक आप हैं या परीक्षण के लिए अधिकृत हैं। किटप्लॉइट सार्वजनिक अनुसंधान मेटाडेटा से लिंक करता है और शोषण कोड या दुर्भावनापूर्ण पेलोड को संग्रहीत नहीं करता है।