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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
react2shell — CVE-2025-55182 और CVE-2025-66478 के लिए React Server Components में RCE एक्सप्लॉइट टूलकिट। इसमें कई एक्सप्लॉइट वेरिएंट, डिटेक्शन स्क्रिप्ट, एक कमजोर टेस्ट सर्वर, और Flight प्रोटोकॉल डिसीरियलाइज़ेशन भेद्यता का गहन तकनीकी विश्लेषण शामिल है। | Kitploit
उपकरण/GitHubGitHub/freeqaz/react2shell
गतिशील विश्लेषण (सैंडबॉक्सिंग)भेद्यता विश्लेषणकोड विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगपेपर और शोधलर्निंग और शिक्षापेलोड डेवलपमेंट
GitHubfreeqaz/react2shell

react2shell

CVE-2025-55182 और CVE-2025-66478 के लिए React Server Components में RCE एक्सप्लॉइट टूलकिट। इसमें कई एक्सप्लॉइट वेरिएंट, डिटेक्शन स्क्रिप्ट, एक कमजोर टेस्ट सर्वर, और Flight प्रोटोकॉल डिसीरियलाइज़ेशन भेद्यता का गहन तकनीकी विश्लेषण शामिल है।

6818109 महीने पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
रिपॉजिटरी देखें
साझा करें

React2Shell: React Server Components में RCE 0-day

CVE-2025-55182 (React) और CVE-2025-66478 (Next.js)

इस रिपॉजिटरी में केवल अधिकृत सुरक्षा परीक्षण और शैक्षिक उद्देश्यों के लिए एक्सप्लॉइट कोड है।

यह भी देखें: कई शोधकर्ताओं ने इस भेद्यता के विश्लेषण प्रकाशित किए हैं। अतिरिक्त दृष्टिकोण, एक्सप्लॉइट तकनीकों और पहचान विधियों के लिए संदर्भ अनुभाग देखें।

यह क्या है?

बुधवार, 3 दिसंबर 2025 को, React Server Components में एक गंभीर रिमोट कोड निष्पादन (Remote Code Execution) भेद्यता सार्वजनिक रूप से उजागर की गई। "React2Shell" नामक यह बग, एक बिना प्रमाणीकरण वाले हमलावर को केवल एक HTTP अनुरोध भेजकर React RSC या Next.js App Router के भेद्य संस्करण चलाने वाले किसी भी सर्वर पर मनमाना कोड निष्पादित करने की अनुमति देता है।

Next.js इतना सर्वव्यापी हो गया है - यह आधुनिक वेब के एक महत्वपूर्ण हिस्से को शक्ति देता है - इसलिए इस भेद्यता का प्रभाव गंभीर है। RSC सक्षम के साथ App Router (Next.js 13 के बाद से नई परियोजनाओं के लिए डिफ़ॉल्ट) का उपयोग करने वाला कोई भी Next.js एप्लिकेशन भेद्य है। कोई विशेष कॉन्फ़िगरेशन नहीं। कोई विशिष्ट एंडपॉइंट नहीं। बस किसी भी रूट पर एक POST अनुरोध।

भेद्यता React के "Flight" प्रोटोकॉल में रहती है, जो React Server Components में सर्वर और क्लाइंट के बीच डेटा पास करने के लिए उपयोग किया जाने वाला सीरियलाइज़ेशन प्रारूप है। डिसीरियलाइज़ेशन के दौरान hasOwnProperty जाँच की कमी प्रोटोटाइप श्रृंखला ट्रैवर्सल की अनुमति देती है, अंततः JavaScript Function कंस्ट्रक्टर तक पहुँचकर हमलावर-नियंत्रित कोड निष्पादित करती है।

यह दोष React के react-server-dom-webpack, react-server-dom-turbopack और react-server-dom-parcel पैकेजों में मौजूद है। Next.js, प्रमुख RSC उपभोक्ता के रूप में, अपने App Router के माध्यम से भेद्यता प्राप्त करता है।

कौन प्रभावित है?

कई सेवाएँ संभावित रूप से भेद्य हैं। Next.js सबसे लोकप्रिय React फ्रेमवर्क में से एक है, जिसका उपयोग सभी आकारों की कंपनियाँ करती हैं - स्टार्टअप से लेकर एंटरप्राइज़ तक। React Server Components के साथ App Router संस्करण 13 के बाद से नई Next.js परियोजनाओं के लिए डिफ़ॉल्ट आर्किटेक्चर रहा है, जिसका अर्थ है कि अधिकांश आधुनिक Next.js डिप्लॉयमेंट प्रभावित हैं।

निम्न का उपयोग करने वाला कोई भी एप्लिकेशन:

  • React Server Components भेद्य react-server-dom-* पैकेजों के साथ (19.0.0 - 19.2.0)
  • Next.js App Router संस्करण 15.x (15.0.5 से पहले) और 16.x (16.0.7 से पहले)

इसमें Vercel, AWS, सेल्फ-होस्टेड इन्फ्रास्ट्रक्चर और किसी भी अन्य स्थान पर चलने वाले प्रोडक्शन डिप्लॉयमेंट शामिल हैं जहाँ Next.js App Router एप्लिकेशन चलते हैं।

प्रभावित नहीं:

  • Next.js Pages Router एप्लिकेशन (कोई RSC नहीं)
  • Next.js 13.x और 14.x स्थिर रिलीज़
  • केवल React क्लाइंट-साइड रेंडरिंग का उपयोग करने वाले एप्लिकेशन
  • Edge Runtime डिप्लॉयमेंट (कोई process.mainModule उपलब्ध नहीं)

प्रभावित संस्करण

React Server Components

पैकेजभेद्यपैच किया गया
react-server-dom-webpack19.0.0, 19.1.0, 19.1.1, 19.2.019.0.1, 19.1.2, 19.2.1+
react-server-dom-turbopack19.0.0, 19.1.0, 19.1.1, 19.2.019.0.1, 19.1.2, 19.2.1+
react-server-dom-parcel19.0.0, 19.1.0, 19.1.1, 19.2.019.0.1, 19.1.2, 19.2.1+

Next.js

संस्करण लाइनभेद्यपैच किया गया
15.0.x< 15.0.515.0.5+
15.1.x< 15.1.915.1.9+
15.2.x< 15.2.615.2.6+
15.3.x< 15.3.615.3.6+
15.4.x< 15.4.815.4.8+
15.5.x< 15.5.715.5.7+
16.0.x< 16.0.716.0.7+

शमन

तुरंत अपग्रेड करें। कोई वर्कअराउंड नहीं हैं।

Next.js एप्लिकेशनों के लिए:

npm install next@latest
# or
pnpm update next

सीधे React RSC उपयोग के लिए:

npm install react-server-dom-webpack@latest

अपने इंस्टॉल किए गए संस्करणों को सत्यापित करें:

npm ls next react-server-dom-webpack react-server-dom-turbopack

एक्सप्लॉइट कैसे काम करता है

एक्सप्लॉइट आवश्यकताएँ

  1. भेद्य React Server Components चलाने वाला सर्वर (Next.js App Router या सीधे RSC उपयोग के माध्यम से)
  2. HTTP POST अनुरोध भेजने के लिए नेटवर्क पहुँच
  3. बस इतना ही। कोई प्रमाणीकरण नहीं। कोई विशिष्ट एंडपॉइंट नहीं। कोई भी रूट काम करता है।

हमला

इस भेद्यता के लिए कई हमला वेक्टर खोजे गए हैं। सबसे सामान्य - और जो बिना किसी पूर्वापेक्षा के काम करता है - React के Flight प्रोटोकॉल संदर्भ प्रणाली के माध्यम से प्रोटोटाइप पॉल्यूशन का उपयोग करता है।

एक्सप्लॉइट Next-Action हेडर के साथ एक क्राफ्टेड मल्टीपार्ट POST अनुरोध भेजता है। पेलोड संदर्भ प्रणाली का दुरुपयोग करता है:

  1. $1:__proto__:then के माध्यम से प्रोटोटाइप श्रृंखला को ट्रैवर्स करें
  2. एक नकली "चंक" ऑब्जेक्ट बनाएं जो React के आंतरिक Chunk वर्ग की नकल करता है
  3. डिसीरियलाइज़र को JavaScript Function कंस्ट्रक्टर को कॉल करने के लिए धोखा दें
  4. परिणामी फ़ंक्शन को Promise thenable के रूप में लागू करने पर मनमाना कोड निष्पादित करें
POST / HTTP/1.1
Host: target.com
Content-Type: multipart/form-data; boundary=----Boundary
Next-Action: x

------Boundary
Content-Disposition: form-data; name="0"

{"then":"$1:__proto__:then","status":"resolved_model","value":"{...}","_response":{...}}
------Boundary
Content-Disposition: form-data; name="1"

"$@0"
------Boundary--

कोड डिसीरियलाइज़ेशन के दौरान, किसी भी एक्शन ID सत्यापन से पहले निष्पादित होता है। इसका मतलब है कि कोई भी Next-Action हेडर मान भेद्य कोड पथ को ट्रिगर करता है - कोई मान्य एक्शन ID आवश्यक नहीं है।

अन्य हमला वेक्टर मौजूद हैं, जिनमें $F फ़ंक्शन संदर्भ और प्रत्यक्ष मॉड्यूल गैजेट शामिल हैं। इन्हें आमतौर पर एक मान्य एक्शन ID की आवश्यकता होती है। विवरण के लिए वैकल्पिक हमला वेक्टर देखें।

मूल कारण

React का Flight प्रोटोकॉल $1:path:to:value जैसे संदर्भों को कोलन पर विभाजित करके और ऑब्जेक्ट को ट्रैवर्स करके हल करता है:

// ReactFlightReplyServer.js - getOutlinedModel()
for (let i = 1; i < path.length; i++) {
  value = value[path[i]];  // No hasOwnProperty check!
}

विडंबना: इसी फ़ाइल के शीर्ष पर, पंक्ति 35:

import hasOwnProperty from 'shared/hasOwnProperty';

गार्ड आयात किया गया था। यह उपलब्ध था। बस उस एक लूप में इसका उपयोग नहीं किया गया जहाँ इसकी सबसे अधिक आवश्यकता थी।

यह एकल लापता जाँच $1:__proto__:then को एक चंक ऑब्जेक्ट से, प्रोटोटाइप श्रृंखला के ऊपर, Chunk.prototype.then तक - एक फ़ंक्शन जो Promise-जैसी ऑब्जेक्ट्स को संसाधित करता है - ट्रैवर्स करने की अनुमति देती है। सही गुणों के साथ एक नकली चंक बनाकर, हम नियंत्रित करते हैं कि कौन सा कोड निष्पादित हो।

स्थानीय रूप से पुनरुत्पादन

भेद्य टेस्ट सर्वर को क्लोन करें:

git clone https://github.com/freeqaz/react2shell
cd react2shell/vulnerable-next-server
pnpm install
pnpm dev

दूसरे टर्मिनल में:

./detect.sh http://localhost:3443

एक भेद्य सर्वर प्रतिक्रिया बॉडी में E{"digest" के साथ HTTP 500 लौटाता है। RCE प्रदर्शित करने के लिए:

./exploit-redirect.sh http://localhost:3443 "id"

कमांड आउटपुट प्रतिक्रिया में दिखाई देता है। इंटरैक्टिव अन्वेषण के लिए:

./shell.sh http://localhost:3443

इस रिपॉजिटरी में क्या है

भेद्य टेस्ट सर्वर

vulnerable-next-server/ निर्देशिका में सुरक्षित स्थानीय परीक्षण के लिए एक पूर्व-कॉन्फ़िगर Next.js 16.0.6 + React 19.2.0 एप्लिकेशन है। यह डिफ़ॉल्ट रूप से पोर्ट 3443 पर चलता है। यह एक न्यूनतम App Router सेटअप है जो दर्शाता है कि डिफ़ॉल्ट कॉन्फ़िगरेशन भेद्य हैं।

एक्सप्लॉइट स्क्रिप्ट्स

हमने विभिन्न परिदृश्यों को संभालने के लिए कई एक्सप्लॉइट वेरिएंट विकसित किए:

स्क्रिप्टHTTPआउटपुटप्रोडक्शननोट्स
exploit-redirect.sh303x-action-redirect हेडरहाँअनुशंसित। कोई पूर्वापेक्षा नहीं।
exploit-throw.sh500त्रुटि प्रतिक्रिया बॉडीनहींकेवल डेव मोड (प्रोडक्शन में त्रुटियाँ सैनिटाइज़ होती हैं)।
exploit-blind.sh200केवल सर्वर-साइडहाँफायर-एंड-फॉरगेट। OOB एक्सफिल के लिए उपयोग करें।
exploit-urlencoded.sh303x-action-redirect हेडरहाँभिन्न WAF सिग्नेचर। एक्शन ID आवश्यक।
exploit-reflect.sh200प्रतिक्रिया बॉडीहाँसबसे गोपनीय। एक्शन ID आवश्यक।
टूल डाउनलोड करें