
CVE-2025-55182 के लिए पृथक Docker लैब और स्थैतिक स्कैनर, जिसमें कमजोर/पैच किए गए Next.js बिल्ड और RSC Flight डिसीरियलाइज़ेशन का PoC सत्यापन शामिल है।
अस्वीकरण: यह रिपॉजिटरी और इसके PoC आर्टिफैक्ट केवल शैक्षिक, अनुसंधान और रक्षात्मक सुरक्षा प्रदर्शन उद्देश्यों के लिए एक पृथक लैब वातावरण में सख्ती से बनाए गए हैं। बाहरी प्रणालियों के विरुद्ध अनधिकृत परीक्षण सख्त वर्जित है।
यह रिपॉजिटरी एक पुनरुत्पादक, द्वि-कंटेनर Docker वातावरण प्रदान करती है जो React Server Components (RSC) Flight Protocol Deserialization भेद्यता (लोकप्रिय रूप से React2Shell / CVE-2025-55182 के रूप में संदर्भित) के लिए शमन का विश्लेषण, शोषण और सत्यापन करने के लिए डिज़ाइन की गई है। लैब एक अनपैच्ड Next.js बिल्ड पर पोस्ट-एक्सप्लॉइटेशन प्रभाव प्रदर्शित करता है और एक पैच किए गए बिल्ड पर शमन प्रभावकारिता को साबित करता है।
http://127.0.0.1:3001 (react2shell-vulnerable कंटेनर)http://127.0.0.1:3002 (react2shell-patched कंटेनर)internal: true)।127.0.0.1 (लोकलहोस्ट) से बंधे हैं।DUMMY_SECRET=LAB_VULNERABLE_SECRET_DO_NOT_USE_12345) का उपयोग किया जाता है।24.0.0+, Compose v2.20.0+)3.8+ — केवल आधार स्वचालन के लिए मानक लाइब्रेरी)रिपॉजिटरी क्लोन करें और अपने स्थानीय पर्यावरण को सत्यापित करें:
git clone https://github.com/PhanHoangKhang/React2Shell.git
lab/ निर्देशिका पर जाएं और दोनों द्वि-बिल्ड कंटेनरों को प्रारंभ करें:
cd lab
docker-compose up -d --build
cd ..
दोनों लैब में पहचान स्कैनर चलाएं:
python src/react2shell_scanner.py lab/patched
python src/react2shell_scanner.py lab/vulnerable
cd lab
docker-compose stop
cd ..
शोषण सत्यापन परीक्षणों को निष्पादित करने और एक्सफिल्ट्रेशन आर्टिफैक्ट्स को सत्यापित करने के लिए, कृपया विस्तृत चरण-दर-चरण PoC मार्गदर्शिका देखें:
👉 PoC और भेद्यता सत्यापन मार्गदर्शिका देखें (poc_reference.md)
package-lock.json (v3 प्रारूप)। स्टैटिक स्कैनर सटीक पहचान के लिए packages["node_modules/next"] के अंदर हल किए गए निर्भरता ट्री को पार्स करने को प्राथमिकता देता है।< 15.0.3 (जिसमें 15.0.0-rc बिल्ड शामिल हैं) को RSC Flight Protocol deserialization के प्रति असुरक्षित के रूप में चिह्नित करती हैं।| लक्ष्य सेवा | फ्रेमवर्क / पैकेज | स्थापित संस्करण | लॉकफ़ाइल प्रारूप |
|---|
असुरक्षित लक्ष्य (:3001) | Next.js | 15.0.0-rc.1 | package-lock.json (लॉकफ़ाइल संस्करण 3) |
| React / React-DOM | 19.0.0-rc-65a56d0e-20241020 | NPM रजिस्ट्री रिलीज़ | |
पैच किया गया लक्ष्य (:3002) | Next.js | 15.0.3 (स्थिर) | package-lock.json (लॉकफ़ाइल संस्करण 3) |
| React / React-DOM | 19.0.0 (स्थिर) | NPM रजिस्ट्री रिलीज़ |