Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
cve-2026-34486-tomcat_encrypt_bypass_reproduction — CVE पुनरुत्पादन: cve-2026-34486-tomcat_encrypt_bypass_reproduction | Kitploit
उपकरण/GitHubGitHub/razureink/cve-2026-34486-tomcat_encrypt_bypass_reproduction
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणवेब सुरक्षापेनिट्रेशन टेस्टिंगलर्निंग और शिक्षा
GitHubrazureink/cve-2026-34486-tomcat_encrypt_bypass_reproduction

cve-2026-34486-tomcat_encrypt_bypass_reproduction

CVE पुनरुत्पादन: cve-2026-34486-tomcat_encrypt_bypass_reproduction

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें
रिपॉजिटरी देखें
29 दिन पहलेअभी तक समीक्षित नहीं

CVE-2026-34486: Apache Tomcat EncryptInterceptor बाईपास

फ़ील्डमान
CVECVE-2026-34486
CVSS7.5 उच्च
प्रकारसंवेदनशील डेटा की अनुपस्थित एन्क्रिप्शन
घटकApache Tomcat क्लस्टर EncryptInterceptor
प्रकाशित2026

अवलोकन

CVE-2026-34486 एक रीग्रेशन है जो CVE-2026-29146 के अधूरे सुधार द्वारा पेश किया गया है। Apache Tomcat की क्लस्टर प्रतिकृति में, EncryptInterceptor क्लस्टर संदेशों को एन्क्रिप्ट और प्रमाणित करने के लिए ज़िम्मेदार है। CVE-2026-29146 के सुधार में एक रीफैक्टरिंग ने अनजाने में super.messageReceived(msg) कॉल को उस try-catch ब्लॉक के बाहर स्थानांतरित कर दिया जो डिक्रिप्शन विफलताओं को संभालता है। परिणामस्वरूप, जब किसी संदेश का डिक्रिप्शन विफल हो जाता है (अर्थात, यह प्लेनटेक्स्ट में प्राप्त होता है लेकिन इंटरसेप्टर एन्क्रिप्टेड डेटा की अपेक्षा करता है), तो कच्चा अनएन्क्रिप्टेड संदेश हैंडलर श्रृंखला के ऊपर भेज दिया जाता है, न कि त्याग दिया जाता है।

तकनीकी विवरण

कोड प्रवाह रीग्रेशन

EncryptInterceptor.messageReceived() विधि तब लागू होती है जब एक क्लस्टर संदेश आता है। अपेक्षित प्रवाह है:

  1. कच्चे संदेश बाइट्स प्राप्त करें
  2. संदेश को डिक्रिप्ट और मान्य करें (try-catch के अंदर)
  3. यदि डिक्रिप्शन सफल होता है, तो डिक्रिप्टेड संदेश को आगे भेजने के लिए super.messageReceived(msg) को कॉल करें
  4. यदि डिक्रिप्शन विफल हो जाता है, तो संदेश को त्याग दें (या त्रुटि लॉग करें)

कमजोर संस्करणों में, डिक्रिप्शन/सत्यापन तर्क try-catch में लिपटा रहता है, लेकिन कॉल श्रृंखला को पुनर्गठित किया गया था ताकि super.messageReceived(msg) try-catch ब्लॉक के बाहर निष्पादित हो जो डिक्रिप्शन की सुरक्षा करता है। चर msg try-catch से पहले घोषित किया जाता है और उसके अंदर निर्दिष्ट किया जाता है। जब डिक्रिप्शन एक अपवाद फेंकता है, तो msg अपना प्रारंभिक (अनएन्क्रिप्टेड/कच्चा) मान बनाए रखता है, और catch ब्लॉक केवल त्रुटि लॉग करता है — यह जल्दी वापस नहीं लौटता। निष्पादन असंसाधित कच्चे डेटा के साथ super.messageReceived(msg) तक जारी रहता है।

इसका मतलब है कि एक हमलावर जो Tomcat क्लस्टर पोर्ट तक पहुंच सकता है, वह मनमाना अनएन्क्रिप्टेड संदेश इंजेक्ट कर सकता है जिसे इंटरसेप्टर स्वीकार और संसाधित करेगा।

बग का सरलीकृत स्यूडोकोड

root@kitploit:~
public void messageReceived(Message msg) {
    // msg arrives raw
    try {
        // decrypt and populate msg fields
        decrypt(msg);
    } catch (Exception e) {
        log.error("Decryption failed", e);
        // BUG: no return statement here
    }
    // msg is still the original unencrypted object when catch is hit
    super.messageReceived(msg); // outside try-catch → passes raw data
}

सुधार यह सुनिश्चित करना चाहिए कि या तो:

  • super.messageReceived(msg) को केवल try ब्लॉक के अंदर सफल डिक्रिप्शन के बाद कॉल किया जाए, या
  • catch ब्लॉक तुरंत वापस लौट जाए ताकि अनएन्क्रिप्टेड संदेश कभी आगे न भेजा जाए।

प्रभावित संस्करण

उत्पादसंस्करण
Apache Tomcat 1111.0.20
Apache Tomcat 1010.1.53
Apache Tomcat 99.0.116

पुनरुत्पादन

पूर्वापेक्षाएँ

  • EncryptInterceptor का उपयोग करके क्लस्टर प्रतिकृति सक्षम वाला एक कमजोर Tomcat इंस्टेंस
  • Tomcat क्लस्टर पोर्ट (आमतौर पर 4000 या 5000, <Receiver> के माध्यम से कॉन्फ़िगर किया गया) तक नेटवर्क पहुंच
  • Python 3.6+

चरण

  1. server.xml में EncryptInterceptor के साथ कॉन्फ़िगर किए गए Tomcat क्लस्टर सदस्य की पहचान करें।
  2. क्लस्टर रिसीवर का पता और पोर्ट निर्धारित करें।
  3. क्राफ्टेड कच्चा क्लस्टर संदेश भेजने के लिए शोषण स्क्रिप्ट चलाएँ।
  4. देखें कि संदेश रिसीवर द्वारा स्वीकार और लॉग किया गया है, जिससे एन्क्रिप्शन सत्यापन बायपास हो जाता है।

PoC

इस निर्देशिका में exploit.py स्क्रिप्ट बाईपास को प्रदर्शित करती है। यह एक न्यूनतम Tomcat क्लस्टर संदेश (ClusterMessage सीरियलाइज़ेशन प्रारूप पर आधारित) बनाता है और उसे बिना किसी एन्क्रिप्शन के सीधे रिसीवर पोर्ट पर भेजता है। एक कमजोर इंटरसेप्टर एन्क्रिप्शन की कमी के बावजूद संदेश को स्वीकार और आगे भेज देगा।

शमन

Apache Tomcat के पैच किए गए संस्करण में अपग्रेड करें:

उत्पादपैच किया गया संस्करण
Apache Tomcat 1111.0.21+
Apache Tomcat 1010.1.54+
Apache Tomcat 99.0.117+

यदि तुरंत अपग्रेड करना संभव नहीं है, तो Tomcat क्लस्टर पोर्ट तक नेटवर्क पहुंच को केवल विश्वसनीय होस्ट तक सीमित करें (उदाहरण के लिए, फ़ायरवॉल नियमों के माध्यम से या रिसीवर को लूपबैक या निजी इंटरफ़ेस से बांधकर)।

संदर्भ

  • CVE-2026-34486
  • CVE-2026-29146 (मूल भेद्यता)
  • Apache Tomcat सुरक्षा सलाहकार
  • EncryptInterceptor दस्तावेज़ीकरण
टूल डाउनलोड करें