CVE-2026-79983
Apache Camel: camel-ftp ने सर्वर निर्देशिका सूची में बताए गए नाम से पोल की गई फ़ाइल का रिमोट पथ हल किया, बिना उसे पोल की जा रही निर्देशिका तक सीमित किए, इसलिए ट्रैवर्सल सेगमेंट वाली एक सूची प्रविष्टि को बाहर स्थानांतरित किया जा सकता था
- प्रकाशित
- 19 अक्टू॰ 2026
- अद्यतन
- 20 अक्टू॰ 2026
- सीएनए असाइन करना
- apache
- साक्ष्य देखे गए
- 17 अक्टू॰ 2026
प्राथमिक सीवीएसएस
cvelist · CVSS 3.1
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:Nसारांश
Apache Camel FTP घटक में एक प्रतिबंधित निर्देशिका तक पथनाम की अनुचित सीमा ('पथ ट्रैवर्सल') भेद्यता। यह समस्या Apache Camel को प्रभावित करती है: 4.0.0 से 4.18.5 से पहले तक, 4.19.0 से 4.22.1 से पहले तक। Camel के रिमोट-फ़ाइल उपभोक्ता किसी रिमोट सर्वर पर एक निर्देशिका को पोल करते हैं और प्रत्येक फ़ाइल का पूर्ण रिमोट पथ, कॉन्फ़िगर की गई निर्देशिका को सर्वर की निर्देशिका सूची में बताए गए फ़ाइल नाम के साथ जोड़कर बनाते हैं। उस संयोजन (FtpUtils.absoluteFilePath और GenericFileConsumer) में कोई शाब्दिक सामान्यीकरण (lexical normalization) नहीं और कोई जाँच नहीं थी कि परिणाम पोल की जा रही निर्देशिका के भीतर ही रहा, और परिणामी पथ फ़ाइल पर प्रत्येक आगामी रिमोट ऑपरेशन के लिए ऑपरेंड बन गया: पुनर्प्राप्ति (FtpOperations.retrieveFile / SftpOperations, जिस तक GenericFileConsumer से पहुँचा जाता है जहाँ पुनर्प्राप्ति नाम GenericFile.getAbsoluteFilePath से शब्दशः लिया जाता है), delete=true होने पर विलोपन (GenericFileDeleteProcessStrategy), और जब move, preMove, moveFailed या readLock=rename कॉन्फ़िगर हो तो पुनर्नामकरण (GenericFileProcessStrategySupport और GenericFileRenameExclusiveReadLockStrategy)। न तो isValidFile और न ही isMatched ने कोई कंटेनमेंट जाँच की। इसलिए एक सूची प्रविष्टि जो एकल पथ खंड नहीं थी, कॉन्फ़िगर की गई पोलिंग निर्देशिका के बाहर के पथ पर हल हो गई, जिससे Camel ने एंडपॉइंट के अपने क्रेडेंशियल्स का उपयोग करके उसके बाहर की फ़ाइलों को पढ़ा, हटाया या पुनर्नामित किया। सूची नाम रूट-नियंत्रित डेटा नहीं है। यह रिमोट सर्वर द्वारा प्रदान किया जाता है, और FTP नियंत्रण चैनल में कोई अखंडता सुरक्षा नहीं है, इसलिए एक ऑन-पाथ हमलावर बिना कोई क्रेडेंशियल रखे LIST प्रतिक्रिया को फिर से लिख सकता है; एक समझौता किया गया, दुर्भावनापूर्ण या मल्टी-टेनेंट सर्वर, या वर्चुअल फ़ाइलसिस्टम द्वारा समर्थित सर्वर, ऐसा नाम सीधे उत्सर्जित कर सकता है। पुनर्प्राप्ति डिफ़ॉल्ट उपभोक्ता कॉन्फ़िगरेशन में पहुँच योग्य है, क्योंकि रिमोट उपभोक्ता प्रत्येक सूचीबद्ध फ़ाइल को डाउनलोड करते हैं; विलोपन और पुनर्नामकरण के लिए अतिरिक्त रूप से उपरोक्त में से एक डिस्पोज़िशन विकल्प आवश्यक है, जो सभी सामान्य हैं। Camel को जिस निर्देशिका को पोल करने के लिए कॉन्फ़िगर किया गया था, उससे पलायन बिना शर्त है, जबकि सर्वर के अपने खाता सीमा से पलायन अतिरिक्त रूप से इस पर निर्भर करता है कि वह सर्वर खाते को सीमित करता है या नहीं। jailStartingDirectory विकल्प, जिसे Camel को प्रारंभिक निर्देशिका तक सीमित करने के रूप में प्रलेखित किया गया है और डिफ़ॉल्ट रूप से सक्षम है, उत्पादक लेखन को नियंत्रित करता था और, localWorkDirectory कंटेनमेंट कार्य के बाद से, उपभोक्ता डाउनलोड को स्थानीय कार्य निर्देशिका तक - लेकिन इसने इस रिमोट ऑपरेंड को सीमित नहीं किया, इसलिए इसके नाम और विवरण ने एक ऐसी सीमा का दावा किया जो यहाँ लागू नहीं थी। वही प्रवेश बिंदु स्थानीय पक्ष पर पहले ही पहचाना जा चुका था: localWorkDirectory डाउनलोड पथ को इस प्रकार सीमित किया गया था कि पैरेंट-निर्देशिका खंडों वाला रिमोट फ़ाइल नाम स्थानीय कार्य निर्देशिका के बाहर हल न हो सके। रिमोट ऑपरेंड उस सतह का शेष आधा भाग था। यह आर्टिफ़ैक्ट ftp, ftps और sftp स्कीम प्रदान करता है, जो सभी प्रभावित हैं। रिपोर्टर ने इस समस्या को एक ftp एंडपॉइंट के विरुद्ध शुरू से अंत तक प्रदर्शित किया, एक दुर्भावनापूर्ण सर्वर के साथ Camel रूट को चलाकर जिसकी LIST प्रतिक्रिया ने पोल की गई निर्देशिका के बाहर की फ़ाइल का नाम दिया। Apache Camel 4.23.0 में अपग्रेड करें, जो इस समस्या को ठीक करता है। 4.22.x रिलीज़ स्ट्रीम पर उपयोगकर्ताओं को 4.22.1 में अपग्रेड करना चाहिए। 4.18.x LTS रिलीज़ स्ट्रीम पर उपयोगकर्ताओं को 4.18.5 में अपग्रेड करना चाहिए। 4.14.x स्ट्रीम जीवन-चक्र के अंत तक पहुँच चुकी है और इसे यह फ़िक्स प्राप्त नहीं होता; इस पर उपयोगकर्ताओं को किसी समर्थित रिलीज़ स्ट्रीम पर स्थानांतरित होना चाहिए।
जिम्मेदारीपूर्ण उपयोग
भेद्यता जानकारी का उपयोग केवल उन प्रणालियों पर करें जिनके मालिक आप हैं या परीक्षण के लिए अधिकृत हैं। किटप्लॉइट सार्वजनिक अनुसंधान मेटाडेटा से लिंक करता है और शोषण कोड या दुर्भावनापूर्ण पेलोड को संग्रहीत नहीं करता है।