Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2024-12356 — गैर-विनाशकारी डिटेक्टर BeyondTrust Remote Support और PRA में अनप्रमाणित RCE के लिए, तर्क इंजेक्शन और PostgreSQL एस्केप बाईपास को जोड़कर समय-आधारित विभेदन के माध्यम से शोषण-क्षमता की पुष्टि करता है। | Kitploit
उपकरण/GitHubGitHub/skraft9/cve-2024-12356
भेद्यता स्कैनरभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगरेड टीमिंग
GitHubskraft9/cve-2024-12356

CVE-2024-12356

गैर-विनाशकारी डिटेक्टर BeyondTrust Remote Support और PRA में अनप्रमाणित RCE के लिए, तर्क इंजेक्शन और PostgreSQL एस्केप बाईपास को जोड़कर समय-आधारित विभेदन के माध्यम से शोषण-क्षमता की पुष्टि करता है।

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

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

सभी देखें →

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

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

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

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

BeyondTrust रिमोट सपोर्ट और प्रिविलेज्ड रिमोट एक्सेस में आर्गुमेंट इंजेक्शन और PostgreSQL स्ट्रिंग-एस्केप बायपास के माध्यम से अनप्रमाणित रिमोट कोड निष्पादन

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


BeyondTrust रिमोट सपोर्ट (RS) और प्रिविलेज्ड रिमोट एक्सेस (PRA) ऐसे उपकरण हैं जो किसी संगठन के आंतरिक सिस्टम में प्रिविलेज्ड रिमोट सत्रों की मध्यस्थता करते हैं, इसलिए वे अक्सर इंटरनेट पर उजागर होते हैं और नेटवर्क पर एक विश्वसनीय स्थान रखते हैं।

एक अनप्रमाणित हमलावर जो उपकरण के WebSocket एंडपॉइंट तक पहुंच सकता है, दो दोषों को जोड़कर साइट उपयोगकर्ता के रूप में ऑपरेटिंग-सिस्टम कमांड निष्पादित कर सकता है: उपकरण की thin-scc-wrapper स्क्रिप्ट में एक आर्गुमेंट इंजेक्शन (CVE-2024-12356) और एक PostgreSQL स्ट्रिंग-एस्केप बायपास जो एक अमान्य UTF-8 बाइट को प्रारंभिक SQL-लिटरल ब्रेक में बदल देता है (CVE-2025-1094)। कमजोर पथ किसी भी प्रमाणीकरण से पहले पहुंचा जाता है।

इस रिपॉजिटरी में bt_rs_rce_check.py उस श्रृंखला के लिए एक गैर-विनाशकारी डिटेक्टर है। यह उस सटीक अनप्रमाणित कोड पथ को चलाता है जिसका वास्तविक एक्सप्लॉइट उपयोग करता है लेकिन पहुंच-क्षमता के प्रमाण पर रुक जाता है: यह लक्ष्य से केवल एक हानिरहित sleep (समय-आधारित अंतर) या आपके नियंत्रण वाले आउट-ऑफ-बैंड कलेक्टर के लिए एक हानिरहित होस्टनाम/HTTP लुकअप चलाने के लिए कहता है। यह कभी शेल नहीं खोलता, फाइलें नहीं लिखता, डेटा नहीं पढ़ता, स्थायित्व नहीं बनाता, या पार्श्व रूप से आगे नहीं बढ़ता।

  • CVE आईडी:
    • CVE-2024-12356 — BeyondTrust RS और PRA में कमांड/आर्गुमेंट इंजेक्शन
    • CVE-2025-1094 — PostgreSQL psql अमान्य-UTF-8 SQL-इंजेक्शन दोष, RCE को पूरा करने के लिए जोड़ा गया
  • कमजोरी का प्रकार:
    • मूल कारण: CWE-88 आर्गुमेंट इंजेक्शन (BeyondTrust ने CVE-2024-12356 को CWE-77 के रूप में वर्गीकृत किया; Rapid7 का विश्लेषण तर्क देता है कि CWE-88 अधिक सटीक है)
    • जुड़ा दोष: CWE-89 अमान्य UTF-8 के अनुचित हैंडलिंग के माध्यम से SQL इंजेक्शन (CVE-2025-1094)
    • शुद्ध प्रभाव: CWE-78 OS कमांड इंजेक्शन (अनप्रमाणित RCE)
  • प्रभावित सॉफ्टवेयर: BeyondTrust रिमोट सपोर्ट (RS) और प्रिविलेज्ड रिमोट एक्सेस (PRA)।
  • प्रभावित संस्करण: 24.3.1 और पुराने (सभी अनपैच्ड ऑन-प्रिम और, प्रकटीकरण के समय, क्लाउड बिल्ड)।
  • समाधान: BeyondTrust पैच BT24-10 (BT24-10-ONPREM1 / BT24-10-ONPREM2 स्व-होस्टेड उपकरणों के लिए; क्लाउड इंस्टेंस BeyondTrust द्वारा पैच किए गए थे)।
  • स्कोर: 9.8 (क्रिटिकल) CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • शोषण स्थिति: जंगली में सक्रिय रूप से शोषित; CISA KEV कैटलॉग में सूचीबद्ध।

प्रभाव

यह श्रृंखला एक ऐसे उपकरण पर साइट उपयोगकर्ता के रूप में अनप्रमाणित रिमोट कोड निष्पादन उत्पन्न करती है जिसका पूरा उद्देश्य आंतरिक सिस्टम में प्रिविलेज्ड एक्सेस की मध्यस्थता करना है, इसलिए एक एकल अनाम अनुरोध एक उजागर RS या PRA होस्ट को एक पैर जमाने और उपकरण द्वारा मध्यस्थता किए गए प्रत्येक डाउनस्ट्रीम सिस्टम की ओर एक पिवट में बदल देता है।

इसके लिए कोई क्रेडेंशियल, कोई उपयोगकर्ता इंटरैक्शन, और कोई पूर्व पहुंच की आवश्यकता नहीं है: हमलावर बाहरी और अनाम है, और एकमात्र पूर्वापेक्षा उपकरण के WebSocket एंडपॉइंट तक नेटवर्क पहुंच है।

कमजोरी का खुलासा जंगली में शोषित पाए जाने के बाद किया गया था, इसे 19 दिसंबर 2024 को CISA ज्ञात शोषित कमजोरियों कैटलॉग में जोड़ा गया था, और इसे सार्वजनिक रूप से दिसंबर 2024 में अमेरिकी वित्त विभाग के उल्लंघन से जोड़ा गया है जिसका श्रेय एक राज्य-प्रायोजित अभिनेता को दिया जाता है।


कमजोरी श्रृंखला

कमजोर तर्क उपकरण की thin-scc-wrapper शेल स्क्रिप्ट में रहता है, जो एक अनप्रमाणित WebSocket फ्रेम से हमलावर-नियंत्रित सत्र कुंजी (gskey) पढ़ता है और इसे डेटाबेस की ओर भेजता है। पूर्ण RCE तीन अलग-अलग समस्याओं की एक श्रृंखला है।

1. thin-scc-wrapper में आर्गुमेंट इंजेक्शन (CVE-2024-12356)। रैपर अविश्वसनीय gskey को एक हेल्पर को बिना उद्धरण के भेजता है, इसलिए शेल echo चलने से पहले इसे तर्कों में विभाजित कर देता है:

quoted=$(export PHPRC="$BG_app_root/config/php-cli.ini"; echo $gskey | $ingrediRoot/app/dbquote)

एक कुंजी जो -e से शुरू होती है, echo को echo -e में बदल देती है, जो बैकस्लैश एस्केप की व्याख्या करता है और हमलावर को अगले चरण में प्रवाहित डेटा में मनमाने कच्चे बाइट्स — सबसे महत्वपूर्ण रूप से \xC0 — उत्सर्जित करने देता है। हमलावर एक नया कमांड इंजेक्ट करने के बजाय एक मौजूदा कमांड के फ्लैग को नियंत्रित करता है, यही कारण है कि यह क्लासिक कमांड इंजेक्शन के बजाय आर्गुमेंट इंजेक्शन (CWE-88) है।

2. अमान्य UTF-8 के माध्यम से PostgreSQL एस्केप बायपास (CVE-2025-1094)। dbquote PHP के pg_escape_string() के साथ मान को एस्केप करता है, जो libpq के PQescapeStringInternal() को कॉल करता है। एक मल्टीबाइट वर्ण के लिए यह pg_encoding_mblen() द्वारा रिपोर्ट की गई लंबाई पर भरोसा करता है और वर्ण के बाइट्स को शब्दशः, बिना सत्यापन के कॉपी करता है:

len = pg_encoding_mblen(encoding, source);
for (i = 0; i < len; i++)   /* copy the character */
    *target++ = *source++;

0xC0 जैसा बाइट 2-बाइट वर्ण की घोषणा करता है, इसलिए एस्केपर अगले बाइट को अपने "निरंतरता" के रूप में निगल जाता है — तब भी जब वह बाइट एकल उद्धरण (0x27) हो। इसलिए अनुक्रम 0xC0 0x27 एक अनएस्केप्ड सिंगल-कोट बाइट के साथ "एस्केप्ड" स्ट्रिंग में एम्बेडेड रहते हुए गुजरता है।

3. psql लिटरल से बाहर निकलता है और \! चलाता है (CVE-2025-1094)। "एस्केप्ड" स्ट्रिंग को psql में पाइप किया जाता है, जो 0xC0 0x27 को एक वर्ण के रूप में नहीं मानता है, इसलिए 0x27 SQL स्ट्रिंग लिटरल को जल्दी बंद कर देता है और इसके बाद की हर चीज़ को नए इनपुट के रूप में पार्स किया जाता है। हमलावर इसका उपयोग psql के \! मेटा-कमांड तक पहुंचने के लिए करता है, जो साइट उपयोगकर्ता के रूप में एक शेल कमांड चलाता है:

<0xC0>'; \! <cmd> #

Rapid7 ने पाया कि व्यवहार में RCE हमेशा CVE-2025-1094 पर निर्भर करता है, और यह अपने आप में पर्याप्त है: एक बाइनरी WebSocket फ्रेम के अंदर कच्चा 0xC0 बाइट वितरित करना (एक टेक्स्ट फ्रेम के बजाय, जहां UTF-8 सत्यापन इसे हटा देगा) gskey तक अपरिवर्तित पहुंचता है और बिना किसी echo -e चरण के SQL ब्रेकआउट को ट्रिगर करता है। यह डिटेक्टर उस बाइनरी-फ्रेम दृष्टिकोण का उपयोग करता है।


पहुंच-क्षमता

पूरी श्रृंखला एक एकल WebSocket पर प्री-प्रमाणीकरण पहुंच योग्य है:

  1. एंडपॉइंट — /nw के लिए एक अनप्रमाणित WebSocket (उपकरण पर एक Tornado हैंडलर)।
  2. ऐप चयन — कमजोर "thin" ऐप को Sec-WebSocket-Protocol: ingredi support desk customer thin हेडर के साथ चुना जाता है, जिसे URL-एन्कोडेड ingredi%20support%20desk%20customer%20thin के रूप में भेजा जाता है।
  3. कंपनी समाधान — लक्ष्य टेनेंट HTTP Host हेडर (एक स्थापित कंपनी से मैप किया गया) या, फॉलबैक के रूप में, X-Ns-Company हेडर से हल किया जाता है। यदि कोई भी स्थापित कंपनी से मैप नहीं होता है तो उपकरण gskey संसाधित होने से पहले सॉकेट बंद कर देता है।
  4. पेलोड — एक न्यूलाइन-सीमांकित बाइनरी फ्रेम जिसमें प्रोटोकॉल संस्करण 1, एक thinMint UUID, authType 0 (gskey प्रमाणीकरण), फिर दुर्भावनापूर्ण gskey (संस्करण 1 का अर्थ है कोई locale_code लाइन नहीं):
1
<thinMint UUID>
0
<0xC0>'; \! <cmd> #

पहचान

BT24-10 एक इनपुट-सत्यापन गेट जोड़ता है जो किसी भी गैर-अल्फ़ान्यूमेरिक gskey को dbquote/psql तक पहुंचने से पहले अस्वीकार कर देता है:

elif [[ ! "$gskey" =~ ^[a-zA-Z0-9]{32}$ ]]; then
    blog "bad session key given"
    ...
    exit 1
टूल डाउनलोड करें