
⚠️ चेतावनी: यह एप्लिकेशन केवल शैक्षिक और सुरक्षा अनुसंधान उद्देश्यों के लिए जानबूझकर असुरक्षित है। इसे प्रोडक्शन में तैनात न करें या इंटरनेट पर एक्सपोज़ न करें।
यह एक असुरक्षित Next.js एप्लिकेशन है जो CVE-2025-55182 को प्रदर्शित करता है, जो React Server Components में एक गंभीर रिमोट कोड एक्ज़ीक्यूशन भेद्यता है। यह एप्लिकेशन एक पेशेवर क्लाउड होस्टिंग डैशबोर्ड जैसा दिखने के लिए डिज़ाइन किया गया है, जबकि सुरक्षा परीक्षण और शैक्षिक उद्देश्यों के लिए जानबूझकर असुरक्षित है।
CVE विवरण:
curl_id.sh शामिल हैnpm install --legacy-peer-deps
npm run dev
एप्लिकेशन http://localhost:3000 पर उपलब्ध होगा
रिपॉजिटरी में curl_id.sh शामिल है, जो CVE-2025-55182 का शोषण करने के लिए Nuclei template पर आधारित एक कमांड-लाइन टूल है।
उपयोग:
# Execute id command (default)
./curl_id.sh -d localhost:3000 -c id
# Execute custom commands
./curl_id.sh -d localhost:3000 -c "whoami"
./curl_id.sh -d localhost:3000 -c "uname -a"
./curl_id.sh -d localhost:3000 -c "ls -la /tmp"
# Test remote domains (if vulnerable)
./curl_id.sh -d vulnapp.com -c id
विकल्प:
-d, --domain: लक्ष्य डोमेन/URL (डिफ़ॉल्ट: http://localhost:3000)-c, --command: निष्पादित करने के लिए कमांड (डिफ़ॉल्ट: id)git clone https://github.com/assetnote/react2shell-scanner.git
cd react2shell-scanner
pip install -r requirements.txt
python3 scanner.py -u http://localhost:3000
python3 scanner.py -u http://localhost:3000 --safe-check
भेद्यता का शोषण सर्वर को एक क्राफ्टेड multipart POST अनुरोध भेजकर किया जा सकता है, जिसमें शामिल हैं:
Next-Action: x हेडरX-Nextjs-Request-Id हेडरX-Nextjs-Html-Request-Id हेडरसटीक पेलोड संरचना के लिए react2shell-scanner रिपॉजिटरी देखें।
भेद्यता React Server Components के डिसीरियलाइज़ेशन तंत्र में मौजूद है। जब Next.js सर्वर एक्शन्स को प्रोसेस करता है, तो यह अनुरोध पेलोड को डिसीरियलाइज़ करता है। React के असुरक्षित संस्करण (19.0.0-19.2.0) डिसीरियलाइज़ किए गए डेटा को उचित रूप से मान्य या सैनिटाइज़ नहीं करते हैं, जिससे हमलावर निम्न कार्य कर सकते हैं:
process.mainModule.require('child_process').execSync() के माध्यम सेX-Action-Redirect रिस्पॉन्स हेडर में कमांड आउटपुट पुनर्प्राप्त करनाएक्सप्लॉइट JSON डिसीरियलाइज़ेशन प्रक्रिया में प्रोटोटाइप पॉल्यूशन हमले का उपयोग करता है। पेलोड संरचना में शामिल हैं:
then प्रॉपर्टी जो प्रोटोटाइप चेन को पॉल्यूट करती है_response ऑब्जेक्ट जिसमें JavaScript कोड युक्त _prefix फ़ील्ड होता हैexecSync() के माध्यम से निष्पादित होता है और आउटपुट को रिस्पॉन्स हेडर पर रीडायरेक्ट करता हैइस भेद्यता को ठीक करने के लिए:
npm install react@latest react-dom@latest
npm install next@latest
npm audit fix
vuln-app-CVE-2025-55182/
├── app/
│ ├── actions.ts # Vulnerable server action
│ ├── layout.tsx # Root layout
│ └── page.tsx # Main dashboard page
├── node_modules/ # Dependencies
├── curl_id.sh # Exploit script for testing
├── package.json # Project dependencies (vulnerable versions)
├── tsconfig.json # TypeScript configuration
├── next.config.js # Next.js configuration
├── .gitignore # Git ignore rules
└── README.md # This file
यह एप्लिकेशन केवल सुरक्षा अनुसंधान और शैक्षिक उद्देश्यों के लिए बनाया गया है।
लेखक और योगदानकर्ता इस कोड के किसी भी दुरुपयोग के लिए ज़िम्मेदार नहीं हैं। कंप्यूटर सिस्टम तक अनधिकृत पहुँच अवैध है और इसके परिणामस्वरूप आपराधिक मुकदमा चल सकता है।
यह एक शैक्षिक रिपॉजिटरी है। दस्तावेज़ीकरण में सुधार करने, बेहतर उदाहरण जोड़ने या शैक्षिक मूल्य बढ़ाने वाले योगदानों का स्वागत है।
यह प्रोजेक्ट शैक्षिक उद्देश्यों के लिए प्रदान किया गया है। अपने जोखिम पर उपयोग करें।
याद रखें: यह एक असुरक्षित एप्लिकेशन है। ज़िम्मेदारी से उपयोग करें और इसे केवल सुरक्षा अनुसंधान और शिक्षा के लिए नियंत्रित वातावरण में ही चलाएँ।