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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
RCity-CVE-2024-27198 — CVE-2024-27198 & CVE-2024-27199 PoC - RCE, एडमिन खाता निर्माण, उपयोगकर्ता एन्यूमरेशन, सर्वर जानकारी | Kitploit
उपकरण/GitHubGitHub/stuub/rcity-cve-2024-27198
प्रमाणीकरण और प्राधिकरणभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षारेड टीमिंग
GitHubstuub/rcity-cve-2024-27198

RCity-CVE-2024-27198

CVE-2024-27198 & CVE-2024-27199 PoC - RCE, एडमिन खाता निर्माण, उपयोगकर्ता एन्यूमरेशन, सर्वर जानकारी

रिपॉजिटरी देखें
3632 साल पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

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

RCity - CVE-2024-27198 (RCE और Admin Account Creation) और CVE-2024-27199 (Auth Bypass)

CVE-2024-27198 और CVE-2024-27199 का शोषण

RCity एक Python स्क्रिप्ट है जो एक असुरक्षित (vulnerable) TeamCity सर्वर के साथ इंटरैक्ट करती है। यह CVE डोमेन पर 403 को बायपास करते हुए, अनधिकृत (unauthorised) एडमिन अकाउंट निर्माण की सुविधा प्रदान करता है। साथ ही Debug/Processes रूट के माध्यम से RCE प्राप्त करता है।

उपयोग (Usage)

स्क्रिप्ट का उपयोग करने के लिए, आपको लक्षित TeamCity सर्वर URL को कमांड-लाइन तर्क के रूप में -t या --target विकल्प के साथ प्रदान करना होगा:

root@kitploit:~
python3 RCity.py -t http://teamcity.com:8111

आप -v या --verbose विकल्प के साथ आउटपुट की विस्तृत जानकारी (verbosity) बढ़ा सकते हैं:

root@kitploit:~
python3 RCity.py -t http://teamcity.com:8111 --verbose

आप -c या --command विकल्प के माध्यम से सीधे एक शॉट कमांड भेज सकते हैं, यदि आप इंटरैक्टिव शेल चाहते हैं तो इस विकल्प का उपयोग न करें। यह रिवर्स शेल के साथ अनुकूल नहीं है, क्योंकि cmd भेजे जाने के बाद कनेक्शन बंद हो जाता है:

root@kitploit:~
python3 RCity.py -t http://teamcity.com:8111 -c id

आप -s या --stealth विकल्प का उपयोग करके सुनिश्चित कर सकते हैं कि TeamCity सर्वर पर कोई POST अनुरोध नहीं भेजा जाए।

root@kitploit:~
python3 RCity.py -t http://teamcity.com:8111 -s

RCE फ़ंक्शन को अक्षम करता है - बाकी सब कुछ समान रहता है

root@kitploit:~
python3 RCity.py -t http://teamcity.com:8111 --no-rce

उपयोगकर्ता सूची एकत्रित होने से रोकता है, बड़ी उपयोगकर्ता सूचियों पर समय लेने वाला हो सकता है। इसके साथ सीधे RCE पर जाएं!

root@kitploit:~
python3 RCity.py -t http://teamcity.com:8111 --no-enum

विशेषताएँ (Features)

  • एडमिन अकाउंट निर्माण (Admin Account Creation)

  • रिमोट कोड एक्ज़ीक्यूशन (Remote Code Execution)

  • प्राधिकरण टोकन उत्पन्न करना (Generating Authorisation Tokens)

  • उपयोगकर्ताओं की गणना करना (Enumerating Users)

  • उपयोगकर्ताओं के सभी निजी Auth टोकन एकत्रित करना (Gathering all Private Auth Tokens of Users)

  • सर्वर विवरण एकत्रित करना (Gathering Server Details)

उदाहरण (Example)

image

RCE

image

टोकन निर्माण (Token Generation)

image

दस्तावेज़ीकरण (Documentation)

यहाँ मैं इस परियोजना में उपयोग किए गए फ़ंक्शनों के बारे में बताऊंगा, ताकि आपको इस एक्सप्लॉइट और इससे जुड़ी कमजोरियों की बेहतर समझ मिल सके।

पृष्ठभूमि (Background)

इस कमजोरी की प्रकृति CVE-2024-27198 और 99 दोनों के बीच संबंधित है, क्योंकि यह समस्या JetBrains TeamCity सर्वरों के भीतर REST API रूट्स के लिए एक ही प्रमाणीकरण बायपास (authentication bypass) से उत्पन्न होती है। हालाँकि, इस कमजोरी का प्रभाव वहीं है जहाँ यह बदलती है, और दिलचस्प हो जाती है... CVE-2024-27198 कागज पर असली भारी हिटर है, अपने खुलासा किए गए RCE प्रभाव के कारण, यह /app/rest/debug/processes एंडपॉइंट का लाभ उठाता है, केवल एक Auth टोकन के माध्यम से इस एंडपॉइंट पर आवश्यक अनुरोध करने की अनुमति के साथ। इस एंडपॉइंट पर यह कॉल Unix और Windows होस्ट के बीच भिन्न होती है, हालाँकि समान रूप से हेरफेर की जाती है, एकमात्र अंतर मूल शेल (native shell) का है जो एक अनुरोध के लिए उकसाया जाता है।

Linux - processes?exePath=/bin/sh&params=-c&params={yourRCE_HTMLEncoded}

Windows - processes?exePath=cmd.exe&params=/c&params={yourRCE_HTMLEncoded}

Auth बायपास (Auth Bypass)

अब, जैसा कि पहले उल्लेख किया गया है - यह प्रमाणीकरण के बिना संभव नहीं है, सुरक्षित होना चाहिए... है ना? यहीं पर Auth बायपास आता है।

TeamCity बिल्ड की नीति को बायपास करने से सर्वर के खिलाफ अनुरोध करने और हमारे Auth टोकन को वहाँ डालने का अवसर खुल जाता है, बिना तकनीकी रूप से हमारे अपने खाते की आवश्यकता के।

बायपास स्वयं, REST रूट्स के लिए एक वैकल्पिक पथ बनाना है, जो बिना अधिक विवरण में जाए, उस क्लास की सामग्री के नियंत्रण की आवश्यकता रखता है जिसका काम अनुरोधों को संभालना है, विशेष रूप से उन्हें जो 302 (रीडायरेक्ट) नहीं हैं, जो तब हमें अपने URL में 3 आवश्यक भागों को जोड़कर इसे नियंत्रित करने की अनुमति देता है।

  1. एक अनप्रमाणित (unauthenticated) एंडपॉइंट जो 302 ट्रिगर नहीं करेगा, हमारे मामले में /hax

  2. API रूट्स को क्वेरी करने के लिए jsp नामक एक URL क्वेरी पैरामीटर, उदाहरण के लिए, users पथ ?jsp=/app/rest/users

  3. एक मनमाना URI पथ जो .jsp के साथ समाप्त होता है। यह एक HTTP पथ पैरामीटर खंड ;.jsp जोड़कर प्राप्त किया जा सकता है

जिसका अर्थ है कि users एंडपॉइंट पर अनधिकृत अनुरोध करने के लिए अंतिम पेलोड है: /hax?jsp=/app/rest/users;.jsp

अब हम users एंडपॉइंट के खिलाफ अनुरोध कर सकते हैं और अपने स्वयं के उपयोगकर्ता जोड़ सकते हैं, यहाँ तक कि व्यवस्थापक (Administrators) भी!

हालाँकि, RCE पर जाने से पहले, हमें एक Auth टोकन चाहिए, जो उनके REST API के खिलाफ हमारे RCE अनुरोधों के लिए वाहक (bearer) के रूप में हो। अब कोई समस्या नहीं क्योंकि हमारे पास हमारा बायपास है, हम एक बना लेंगे!

REST API टोकन निर्माण --> RCE

टोकन एंडपॉइंट पिछले उदाहरण के समान पथ वृक्ष का अनुसरण कर रहा था, यह /app/rest/users/id:{user_id}/tokens/{token_name} पर पाया जा सकता है। तो आइए प्रमाणीकरण बायपास करने और टोकन बनाने के लिए एक और पेलोड तैयार करें!

(हम इसके लिए अपना स्वयं का टोकन नाम प्रदान करते हैं, इस स्क्रिप्ट के लिए यह अल्फ़ान्यूमेरिक ascii वर्णों का एक यादृच्छिक जनरेशन है)।

/hax?jsp=/app/rest/users/id:{user_id}/tokens/{token_name};.jsp

अपने नए बनाए गए उपयोगकर्ता में अपना टोकन जोड़ने के लिए अपना POST अनुरोध करने के बाद, हम अब /app/rest/debug/processes रूट के खिलाफ अनुरोध करना शुरू कर सकते हैं!

हमारे RCE पेलोड के निर्माण में कुछ खास नहीं है, बस अपने पेलोड को params तर्क में HTML एनकोड करें!

हैप्पी हैकिंग!

संदर्भ (References)

https://www.rapid7.com/blog/post/2024/03/04/etr-cve-2024-27198-and-cve-2024-27199-jetbrains-teamcity-multiple-authentication-bypass-vulnerabilities-fixed/

https://nvd.nist.gov/vuln/detail/CVE-2024-27198

https://github.com/W01fh4cker/CVE-2024-27198-RCE

अस्वीकरण (Disclaimer)

यह स्क्रिप्ट केवल शैक्षिक उद्देश्यों के लिए है। इसका जिम्मेदारी से उपयोग करें और केवल उन्हीं सिस्टम पर करें जिन तक आपके पास पहुँच की अनुमति है।

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