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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
pgAdminOpendoor — CVE-2025-2945 के लिए एक्सप्लॉइट और परीक्षण स्टैंड | Kitploit
उपकरण/GitHubGitHub/i3r1h0n/pgadminopendoor
भेद्यता विश्लेषणकोड विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षा
GitHubi3r1h0n/pgadminopendoor

pgAdminOpendoor

CVE-2025-2945 के लिए एक्सप्लॉइट और परीक्षण स्टैंड

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

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

सभी देखें →

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

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

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

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

pgAdminOpendoor (CVE-2025-2945)

अवलोकन

यह CVE-2025-2945 पर मेरा शोध है। इस रिपॉजिटरी में postgress और असुरक्षित pgadmin के साथ एक परीक्षण स्टैंड, साथ ही एक एक्सप्लॉइट शामिल है।

CVE

उपयोगी लिंक:

  • NVD विवरण
  • WIZ विश्लेषण
  • Metasploit

विवरण

pgAdmin बैकएंड में, जो Python में लिखा गया है, दो एंडपॉइंट हैं जिनमें उचित सैनिटाइज़ेशन की कमी है। एंडपॉइंट हैं:

  • /sqleditor/query_tool/download - query_commited पैरामीटर
  • /cloud/deploy - high_availability पैरामीटर

आइए sqleditor के कोड को देखें:

root@kitploit:~
for key, value in data.items():
    if key == 'query':
        sql = value
    if key == 'query_commited':
        query_commited = (
            eval(value) if isinstance(value, str) else value
        )

यहाँ हम देखते हैं कि query_commited का मान सीधे eval() फ़ंक्शन को पास किया जाता है। आप eval के दस्तावेज़ देख सकते हैं।

pgacloud के कोड को भी देखें:

root@kitploit:~
def _create_google_postgresql_instance(self, args):
    credentials = self._get_credentials(self._scopes)
    service = discovery.build('sqladmin', 'v1beta4',
                              credentials=credentials)
    high_availability = \
        'REGIONAL' if eval(args.high_availability) else 'ZONAL'

यहाँ भी यही समस्या है।

इन एंडपॉइंट्स तक पहुँचने के लिए अभी भी मान्य क्रेडेंशियल्स और pgadmin तक पहुँच आवश्यक है। लेकिन कोई भी हमलावर, जो इसे एक्सेस कर सकता है, eval को कोई भी मान पास कर सकता है। जो किसी भी Python वन-लाइनर को निष्पादित करने के बराबर है।

एक्सप्लॉइटेशन

एक्सप्लॉइटेशन काफी सीधा है। exploit/src/main.py देखें। रिवर्स शेल पाने के लिए कॉन्फ़िग अपडेट करना न भूलें।

स्टैंड सेटअप

स्टैंड सेटअप करने के लिए यह चलाएँ:

root@kitploit:~
cd stand
docker compose up -d

बस इतना ही। pgAdmin अब http://localhost:8080 पर उपलब्ध है। डिफ़ॉल्ट क्रेडेंशियल्स हैं:

root@kitploit:~
[email protected]
admin

बेझिझक .env फ़ाइल और stand/init-db/01-init.sql को संपादित करें।


I3r1h0n द्वारा निर्मित।

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