
CVE-2025-55183 और CVE-2025-55184 के लिए React Server Components में सुरक्षा अनुसंधान प्रयोगशाला
रिएक्ट सर्वर कंपोनेंट्स में CVE-2025-55183 (स्रोत कोड प्रकटीकरण) और CVE-2025-55184 (सेवा अस्वीकार) कमजोरियों के लिए एक व्यापक सुरक्षा परीक्षण वातावरण।
केवल शैक्षिक और सुरक्षा अनुसंधान उद्देश्यों के लिए
इस भंडार में जानबूझकर कमजोर एप्लिकेशन और शोषण उपकरण शामिल हैं। केवल उन प्रणालियों पर परीक्षण करें जिनके आप स्वामी हैं या जिनके लिए आपके पास स्पष्ट लिखित अनुमति है। अनधिकृत परीक्षण अवैध और अनैतिक है।
दोनों कमजोरियाँ रिएक्ट सर्वर कंपोनेंट्स के संस्करण 19.0.0 से 19.2.2 को प्रभावित करती हैं, जिनका खुलासा 11 दिसंबर 2025 को हुआ था।
| गुण | मान |
|---|---|
| गंभीरता | मध्यम (CVSS 5.3) |
| प्रकार | सूचना प्रकटीकरण |
| प्रभाव | सर्वर स्रोत कोड का प्रकटीकरण |
हमलावर सर्वर एक्शन आर्गुमेंट्स को सर्वर फंक्शन ऑब्जेक्ट्स पर .toString() कॉल करके सर्वर-केवल स्रोत कोड लीक करने के लिए मजबूर कर सकते हैं। इससे निम्नलिखित उजागर होता है:
| गुण | मान |
|---|---|
| गंभीरता | उच्च (CVSS 7.5) |
| प्रकार | सेवा अस्वीकार |
| प्रभाव | पूर्ण सेवा आउटेज |
विशेष रूप से तैयार किए गए पेलोड अनंत प्रॉमिस रिकर्शन बनाते हैं, जिससे Node.js सर्वर अनिश्चित काल के लिए हैंग हो जाता है। परिणामस्वरूप:
TL;DR: ऐप कमजोर है (React 19.0.0), लेकिन आधुनिक सुरक्षाएँ इस डेमो वातावरण में वास्तविक क्रैश को रोक सकती हैं।
CVE-2025-55184 एक वास्तविक, गंभीर कमजोरी है जो उत्पादन वातावरण में React 19.0.0-19.2.2 को प्रभावित करती है। हालाँकि, स्थानीय डेमो में DoS क्रैश को सफलतापूर्वक प्रदर्शित करना चुनौतीपूर्ण हो सकता है:
भले ही शोषण डेमो को क्रैश न करे, आप निम्नलिखित के माध्यम से कमजोरी सत्यापित कर सकते हैं:
cd vulnerable-app
npm list react react-dom
# आउटपुट दिखाता है:
[email protected] ← कमजोर संस्करण
[email protected] ← कमजोर संस्करण
यदि आप 19.0.0 से 19.2.2 देखते हैं, तो एप्लिकेशन कमजोर है।
cd scanner
python scan.py http://localhost:3000
स्कैनर जाँचता है:
git clone https://github.com/StealthMoud/react-server-cve-lab.git
cd react-server-cve-lab
# ऐप प्रारंभ करें (दोनों CVE के लिए कमजोर)
docker-compose up --build -d
# ऐप उपलब्ध: http://localhost:3000
cd scanner
# निर्भरताएँ स्थापित करें
pip install -r requirements.txt
# दोनों कमजोरियों के लिए स्कैन करें
python scan.py http://localhost:3000
# केवल CVE-2025-55183 स्कैन करें
python scan.py --cve 55183 http://localhost:3000
# केवल CVE-2025-55184 स्कैन करें
python scan.py --cve 55184 http://localhost:3000
# एकाधिक लक्ष्य स्कैन करें
python scan.py --file targets.txt
react-server-cve-lab/
├── README.md # यह फ़ाइल
├── DOCUMENTATION.md # पूर्ण तकनीकी दस्तावेज़ीकरण
├── LICENSE
├── .gitignore
├── docker-compose.yml
│
├── vulnerable-app/ # दोनों CVE के लिए कमजोर
│ ├── Dockerfile
│ ├── package.json
│ ├── next.config.js
│ └── app/
│ ├── layout.js
│ ├── page.js
│ └── actions.js # कमजोर सर्वर एक्शन
│
├── scanner/
│ ├── requirements.txt
│ ├── scan.py # दोनों CVE के लिए स्कैनर
│ └── README.md
│
└── exploits/
├── exploit-55183.py # CVE-2025-55183 के लिए PoC
├── exploit-55184.py # CVE-2025-55184 के लिए PoC
└── README.md
एप्लिकेशन React 19.0.0 के साथ सर्वर एक्शन वाला एक Next.js ऐप है, जो दोनों CVE के लिए कमजोर है।
# Docker Compose का उपयोग करके (अनुशंसित)
docker-compose up --build -d
# चल रहा है या नहीं जाँचें
curl http://localhost:3000
# लॉग देखें
docker-compose logs -f
# ऐप रोकें
docker-compose down
cd vulnerable-app
npm install
npm run build
npm start
एकीकृत स्कैनर CVE-2025-55183 और CVE-2025-55184 दोनों का पता लगाता है।
cd scanner
# दोनों CVE के लिए स्कैन करें
python scan.py http://localhost:3000
# विशिष्ट CVE स्कैन करें
python scan.py --cve 55183 http://localhost:3000
python scan.py --cve 55184 http://localhost:3000
# विस्तृत आउटपुट
python scan.py --verbose http://localhost:3000
# कस्टम टाइमआउट
python scan.py --timeout 10 http://example.com
# फ़ाइल से एकाधिक URL स्कैन करें
python scan.py --file targets.txt
# परिणाम JSON में सहेजें
python scan.py --output results.json http://localhost:3000
# SSL सत्यापन अक्षम करें
python scan.py --no-verify https://self-signed.example.com
# विस्तृत आउटपुट के साथ सभी CVE स्कैन करें और परिणाम सहेजें
python scan.py --verbose --output scan-results.json http://localhost:3000
╔═══════════════════════════════════════════════════════════╗
║ React सर्वर कंपोनेंट्स कमजोरी स्कैनर ║
║ CVE-2025-55183 और CVE-2025-55184 ║
╚═══════════════════════════════════════════════════════════╝
[*] http://localhost:3000 का परीक्षण किया जा रहा है
[CVE-2025-55183] स्रोत कोड प्रकटीकरण
[!] कमजोर: स्रोत कोड लीक हुआ
उजागर फ़ंक्शन: 3
कोड की लंबाई: 1247 वर्ण
रहस्य शामिल: ✓ (API कुंजियाँ मिलीं)
[CVE-2025-55184] सेवा अस्वीकार
[!] कमजोर: DoS आक्रमण सफल
स्थिति कोड: 404
सामग्री प्रकार: text/plain
चिह्न मिले: ✓
============================================================
सारांश
============================================================
कुल परीक्षित: 1
CVE-2025-55183 कमजोर: 1
CVE-2025-55184 कमजोर: 1
दोनों CVE कमजोर: 1
कमजोर नहीं: 0
दोनों कमजोरियों के व्यापक तकनीकी विश्लेषण के लिए:
DOCUMENTATION.md - पूर्ण तकनीकी दस्तावेज़ीकरण जिसमें शामिल हैं:
दोनों कमजोरियाँ समान पैच संस्करणों में ठीक की गई हैं:
React को पैच किए गए संस्करण में अपडेट करें:
npm install [email protected] [email protected]
# या
npm install react@latest react-dom@latest
Next.js अपडेट करें (यदि लागू हो):
npm install next@latest
सुधार सत्यापित करें:
npm list react react-dom next
python scanner/scan.py http://localhost:3000
# सुधारों की पुष्टि के लिए स्कैनर चलाएँ
cd scanner
python scan.py http://your-patched-app.com
# अपेक्षित आउटपुट:
# [+] CVE-2025-55183: कमजोर नहीं
# [+] CVE-2025-55184: कमजोर नहीं
योगदान का स्वागत है! सुधार के क्षेत्र:
कृपया बेझिझक पुल रिक्वेस्ट सबमिट करें।
यह प्रोजेक्ट MIT लाइसेंस के तहत लाइसेंस प्राप्त है - विवरण के लिए LICENSE फ़ाइल देखें।
यदि आपको यह भंडार आपके सुरक्षा अनुसंधान के लिए उपयोगी लगता है, तो कृपया इसे एक स्टार देने पर विचार करें!
| प्रमाणीकरण |
| कोई आवश्यक नहीं |
| कोई आवश्यक नहीं |
| पहलू | CVE-2025-55183 | CVE-2025-55184 |
|---|
| गंभीरता | मध्यम | उच्च |
| प्रकार | सूचना प्रकटीकरण | सेवा अस्वीकार |
| प्रभाव | स्रोत कोड लीक | सर्वर क्रैश |
| पता लगाना | प्रतिक्रिया में कोड होता है | सर्वर टाइमआउट/हैंग |
| पुनर्प्राप्ति | तत्काल | पुनरारंभ आवश्यक |
| पैकेज | कमजोर संस्करण | पैच किए गए संस्करण |
|---|
| React | 19.0.0 - 19.2.2 | 19.0.3+, 19.1.4+, 19.2.3+ |
| Next.js 15.1.x | < 15.1.4 | 15.1.4+ |
| Next.js 15.0.x | < 15.0.4 | 15.0.4+ |
| Next.js 14.x | < 14.2.24 | 14.2.24+ |