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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2021-2471 — CVE-2021-2471 के लिए PoC - MySQL Connector/J में XXE | Kitploit
उपकरण/GitHubGitHub/drunkenshells/cve-2021-2471
भेद्यता विश्लेषणकोड विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगडेटाबेस सुरक्षा
GitHubdrunkenshells/cve-2021-2471

CVE-2021-2471

CVE-2021-2471 के लिए PoC - MySQL Connector/J में XXE

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

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

सभी देखें →

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

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

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

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

CVE-2021-2471 - MySQL Connector/J में XXE

Oracle MySQL के MySQL Connectors उत्पाद में भेद्यता (घटक: Connector/J)। प्रभावित समर्थित संस्करण 8.0.26 और उससे पहले के हैं।
इस भेद्यता के सफल हमलों के परिणामस्वरूप महत्वपूर्ण डेटा तक अनधिकृत पहुंच या सभी MySQL Connectors सुलभ डेटा तक पूर्ण पहुंच और MySQL Connectors का हैंग या बार-बार क्रैश (पूर्ण DOS) करने की अनधिकृत क्षमता हो सकती है।

अस्वीकरण:

यह भेद्यता Alibaba Cloud Security Team के Xu Yuanzhen और Alibaba के Hongkun Chen द्वारा पाई गई थी।
यह PoC केवल शोध उद्देश्यों के लिए प्रदान किया गया है। इसका उपयोग उन लक्ष्यों पर हमला करने के लिए न करें जिन्हें आपके पास exploit करने की स्पष्ट अनुमति नहीं है।

विक्रेता प्रकटीकरण:

इस भेद्यता के लिए विक्रेता का प्रकटीकरण और समाधान यहाँ पाया जा सकता है।

प्रूफ ऑफ कॉन्सेप्ट:

XXE भेद्यता में एक XML शामिल है जिसमें दुर्भावनापूर्ण DTD Entities होती हैं जिन्हें MysqlSQLXML घटक द्वारा प्राप्त किया जाता है और यह तब ट्रिगर होती है जब getSource() फ़ंक्शन को कॉल किया जाता है।

जैसा कि नीचे mysql-connector-java-8.0.26.jar के कोड में देखा गया है, जब DOMSource क्लास को getSource() फ़ंक्शन में तर्क के रूप में दिया जाता है, तो यह DocumentBuilder को असुरक्षित तरीके से उजागर करता है, जिससे यदि कोई हमलावर builder को पारित inputSource की सामग्री को नियंत्रित करता है, तो वह XXE प्राप्त करने के लिए इसका लाभ उठा सकता है:

root@kitploit:~
public <T extends Source> T getSource(Class<T> clazz) throws SQLException {
        try {
            this.checkClosed();
            this.checkWorkingWithResult();
            InputSource reader;
            if (clazz != null && !clazz.equals(SAXSource.class)) {
                SQLException sqlEx;
                if (clazz.equals(DOMSource.class)) {
                    try {
                        DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
                        builderFactory.setNamespaceAware(true);
                        DocumentBuilder builder = builderFactory.newDocumentBuilder();
                        if (this.fromResultSet) {
                            inputSource = new InputSource(this.owningResultSet.getCharacterStream(this.columnIndexOfXml));
                        } else {
                            inputSource = new InputSource(new StringReader(this.stringRep));
                        }

                        return new DOMSource(builder.parse(inputSource));

दुर्भावनापूर्ण XXE को MysqlSQLXML में पारित करने के 2 तरीके हैं:

  • sqlxml.setString() फ़ंक्शन का उपयोग करना (यदि हमलावर setString फ़ंक्शन में मनमाना इनपुट कॉल या प्रचारित कर सकता है)
  • XML को DB में रखना और resultSet.getSQLXML() फ़ंक्शन का उपयोग करके इसे रिज़ल्ट सेट के माध्यम से पुनर्प्राप्त करना (यदि हमलावर के पास DB में लिखने की पहुंच है, या पीड़ित को हमलावर-नियंत्रित डेटाबेस पर इंगित कर सकता है)

अतिरिक्त संसाधन:

sqlxml.setString() का उपयोग करके PoC XXE
resultSet.getSQLXML() का उपयोग करके PoC XXE
असुरक्षित JAR डाउनलोड करें
अन्य XXE Payloads

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