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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2021-26084 — CVE-2021-26084 के लिए तकनीकी विश्लेषण और प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, Atlassian Confluence Server में OGNL इंजेक्शन भेद्यता। मूल कारण विवरण, कमजोर पैरामीटर मैपिंग और पहचान मार्गदर्शन शामिल है। | Kitploit
उपकरण/GitHubGitHub/nahcusira/cve-2021-26084
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणजानकारी एकत्र करनापेनिट्रेशन टेस्टिंगलर्निंग और शिक्षा
GitHubnahcusira/cve-2021-26084

CVE-2021-26084

CVE-2021-26084 के लिए तकनीकी विश्लेषण और प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, Atlassian Confluence Server में OGNL इंजेक्शन भेद्यता। मूल कारण विवरण, कमजोर पैरामीटर मैपिंग और पहचान मार्गदर्शन शामिल है।

रिपॉजिटरी देखें
122 साल पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें

CVE-2021-26084

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

संस्करण < 6.13.23

6.14.0 ≤ संस्करण < 7.4.11

7.5.0 ≤ संस्करण < 7.11.6

7.12.0 ≤ संस्करण < 7.12.5

कारण और शोषण विधि

Confluence URL को Java कक्षाओं से मैप करने के लिए फ्रेमवर्क का उपयोग करता है, जिससे "action" नामक चीज़ बनती है। Action URLs ".action" में समाप्त होते हैं और confluence-.jar में xwork.xml फ़ाइल तथा शामिल प्लगइन्स की JAR फ़ाइलों में atlassian-plugin.xml फ़ाइल में परिभाषित होते हैं। प्रत्येक action में कम से कम एक name विशेषता होती है, जो क्रिया का नाम निर्धारित करती है, एक class विशेषता होती है, जो action को निष्पादित करने वाली Java class को निर्धारित करती है, और कम से कम एक result तत्व होता है जो action के result के आधार पर action बुलाए जाने के बाद प्रदर्शित होने वाले Velocity template को तय करता है। Actions से लौटाए जाने वाले सामान्य मान "error", "input", "success" हैं, लेकिन कोई भी परिणाम उपयोग किया जा सकता है यदि वह XWork XML में result तत्व से मेल खाता है। Actions में method विशेषता हो सकती है जो निर्दिष्ट Java class के किसी विशेष method को कॉल करने की अनुमति देती है। जब कोई command निर्दिष्ट नहीं होता है, तो doDefault() method को कॉल किया जाता है। नीचे createpage-entervariables action के लिए action प्रविष्टि दी गई है:

छवि

class com.atlassian.confluence.pages.actions.PageVariablesAction का doEnter() method, doenterpagevariables.action पर आने वाले अनुरोधों को संसाधित करता है और "error", "input", "success" मान लौटाता है। इसका परिणाम Velocity template प्रदर्शित होता है।

यहाँ, action तत्व के "name" विशेषता का मान एक पथ /.action के अनुरूप होता है, और यह तत्व निर्धारित करता है कि error/success आदि के आधार पर प्रतिक्रिया के भाग के रूप में कौन सा template प्रदर्शित होगा। इसलिए इस उदाहरण के अनुसार, केवल /pages/doenterpagevariables.action तक पहुँचने से velocity template फ़ाइल प्रदर्शित हो जाएगी।

छवि

हम देख सकते हैं कि velocity template HTML पृष्ठ में किस प्रकार प्रदर्शित होता है।

छवि

टेम्पलेट में टैग नाम को पैरामीटर के रूप में दर्ज करें और ध्यान दें कि मान request पैरामीटर से लिए जाते हैं और response में लौटा दिए जाते हैं।

छवि

#tag का उपयोग: #tag ("attribute1", "attribute2", "attribute3")

ये विशेषताएँ render प्रक्रिया के दौरान AbstrctTagDirective.applyAttributes() पर प्राप्त की जाती हैं।

छवि

#tag ("Hidden" "name='queryString'" "value='ahihihi'")

विशेषताओं को AbstrctTagDirective.applyAttributes() द्वारा प्राप्त करने के बाद, इसे AbstrctUITag.doEndTag() → AbstractUITag.evaluateParams() में पारित किया जाता है।

छवि

फिर इसे expression के रूप में WebWorkTagSupport.findValue() → OgnlValueFinder.findValue() में पारित किया जाता है।

छवि

फिर इसे SafeExpressionUtil.isSafeExpression() में पारित किया जाता है।

छवि

यहाँ expression को compile करने, blacklist जाँच करने और cache में डालने के लिए पारित किया जाता है। Compile चरण के दौरान इसे ASTConst रूप में compile किया जाता है, और मूल्यांकन करने पर यह पहले से compile की गई स्ट्रिंग लौटाता है।

छवि

जब input से expression में "'" जोड़ा जाता है, तो इसे html entity रूप में escape कर दिया जाता है।

छवि

Escape बिंदु HtmlAnnotationEscaper.annotatedValueInsert() पर है।

छवि

यहाँ ognl.JavaCharStream.readChar() विधि को कॉल किया जाता है और यह Unicode escape वर्णों का मूल्यांकन करती है, इसलिए जब "\u0027" पास किया जाता है, तो यह "'" में परिवर्तित हो जाता है। इस प्रकार escape करके OGNL expression जोड़ा जा सकता है।

छवि

लेकिन OGNL की blacklist को पार करना आवश्यक है, जैसा नीचे दिया गया है:

छवि

इसे Array accessors का उपयोग करके पार किया जा सकता है, बजाय "getClass" विधि या ".class" गुण का उपयोग करने के।

queryString=aaa\u0027%2b#{\u0022\u0022[\u0022class\u0022]}%2b\u0027bbb

छवि

पता लगाने की विधि

सभी HTTP अनुरोध ट्रैफ़िक की निगरानी करें जिसमें अनुरोध के URI के पथ घटक में नीचे दी गई तालिका के "URI पथ" कॉलम में से कोई एक स्ट्रिंग मौजूद हो:

URI पथ | संवेदनशील पैरामीटर

/users/darkfeatures.action | featureKey /users/enabledarkfeature.action | featureKey /users/disabledarkfeature.action | featureKey /login.action | token /dologin.action | token /signup.action | token /dosignup.action | token /pages/createpage-entervariables.action | queryString, linkCreation /pages/doenterpagevariables.action | queryString /pages/createpage.action | queryString /pages/createpage-choosetemplate.action | queryString /pages/docreatepagefromtemplate.action | queryString /pages/docreatepage.action | queryString /pages/createblogpost.action | queryString /pages/docreateblogpost.action | queryString /pages/copypage.action | queryString /pages/docopypage.action | queryString /plugins/editor-loader/editor.action | syncRev

यदि ऐसा अनुरोध मिलता है, तो HTTP अनुरोध की विधि की जाँच करनी चाहिए। यदि अनुरोध विधि POST है, तो HTTP अनुरोध के body में ऊपर दी गई तालिका से संबंधित संवेदनशील पैरामीटर खोजें, और यदि अनुरोध विधि GET है, तो HTTP अनुरोध के request-URI में पैरामीटर खोजें। जाँच करें कि किसी भी संवेदनशील पैरामीटर के मान में "\u0027" या उसका URL-encoded रूप मौजूद है या नहीं। यदि हाँ, तो ट्रैफ़िक को दुर्भावनापूर्ण माना जाएगा और इस भेद्यता का शोषण करने वाला हमला हो सकता है।

टूल डाउनलोड करें