
Bash स्क्रिप्ट CVE-2025-55182 (React2Shell) और Next.js प्रोजेक्ट्स में क्रेडेंशियल लीक का पता लगाने के लिए। शून्य निर्भरताएँ।
日本語版は README.ja.md を参照してください।
बैश स्क्रिप्ट जो CVE-2025-55182 (React2Shell) और Next.js प्रोजेक्ट्स में क्रेडेंशियल लीक का पता लगाती है। कोई निर्भरता नहीं।
CVSS: 10.0 (CRITICAL) | CWE-502: अविश्वसित डेटा का डिसीरियलाइज़ेशन | SNORT SID: 65554
Next.js सर्वर घटकों में अविश्वसित डेटा के डिसीरियलाइज़ेशन के माध्यम से बिना प्रमाणीकरण के रिमोट कोड निष्पादन। हमलावर किसी भी Next.js सर्वर घटक एंडपॉइंट पर एक क्राफ्टेड HTTP अनुरोध भेजता है; सर्वर पेलोड को डिसीरियलाइज़ करता है और मनमाना कोड निष्पादित करता है।
प्रभावित संस्करण:
| पैकेज | संवेदनशील श्रेणी |
|---|
| Next.js | 15.0.0–15.0.4, 15.1.0–15.1.8, 15.2.0–15.2.5, 15.3.0–15.3.5, 15.4.0–15.4.7, 15.5.0–15.5.6, 15.6.0, 16.0.0–16.0.6 |
| React | 19.0.0, 19.1.0, 19.1.1, 19.2.0 |
संदर्भ:
चरण 1 — Next.js संस्करण: package.json, package-lock.json, और yarn.lock को पढ़कर हल किए गए Next.js संस्करण का पता लगाता है और उसकी तुलना संवेदनशील श्रेणी से करता है।
चरण 2 — React संस्करण: React (19.0.0, 19.1.0, 19.1.1, 19.2.0) के लिए वही दृष्टिकोण।
चरण 3 — ऐप राउटर / सर्वर घटक: app/ निर्देशिका और "use server" निर्देशों का पता लगाता है। सक्रिय सर्वर घटकों वाला संवेदनशील संस्करण एक जीवित हमले की सतह है।
चरण 4 — क्रेडेंशियल एक्सपोज़र: .env* फ़ाइलों (.env.example और .env.sample को छोड़कर), next.config.*, और स्रोत फ़ाइलों को API कुंजियों, डेटाबेस URL, JWT रहस्यों और हार्डकोडेड गुप्त उपसर्गों (sk-, AKIA, ghp_, npm_) के लिए स्कैन करता है।
चरण 5 — SSH कुंजियाँ: प्रोजेक्ट के अंदर कमिट की गई निजी कुंजी फ़ाइलों (id_rsa, *.pem, *.p12, आदि) और .ssh/ निर्देशिकाओं की तलाश करता है।
चरण 6 — क्लाउड कॉन्फ़िग: हार्डकोडेड रहस्यों के लिए Docker Compose फ़ाइलों, सेवा खाता टोकन एक्सपोज़र के लिए Kubernetes मैनिफ़ेस्ट और IMDSv2 संकेतों के लिए AWS SDK उपयोग की जाँच करता है।
चरण 7 — IOC जाँच: Cisco Talos खुफिया जानकारी से C2 IP पतों और संदिग्ध /tmp/ डॉटफ़ाइल पैटर्न (Linux) की खोज करता है।
C2 IPs (Cisco Talos): 144.172.102.88 / 172.86.127.128 / 144.172.112.136 / 144.172.117.112
चरण 8 — सारांश: CRITICAL/WARNING/INFO गणनाएँ सुधारात्मक कदमों के साथ।
कोई इंस्टॉलेशन आवश्यक नहीं। डाउनलोड करें और चलाएँ:
curl -O https://raw.githubusercontent.com/aliksir/nextjs-security-scanner/main/scan.sh
bash scan.sh [लक्ष्य-निर्देशिका]
या क्लोन करें:
git clone https://github.com/aliksir/nextjs-security-scanner.git
bash nextjs-security-scanner/scan.sh /path/to/your/nextjs-app
# वर्तमान निर्देशिका स्कैन करें
bash scan.sh
# किसी विशिष्ट प्रोजेक्ट को स्कैन करें
bash scan.sh /path/to/nextjs-app
# CI/CD में (गैर-शून्य निकास पर पाइपलाइन विफल)
bash scan.sh . || exit 1
निकास कोड:
0 — कोई समस्या नहीं1 — चेतावनियाँ (क्रेडेंशियल पैटर्न का पता चला, समीक्षा आवश्यक)2 — गंभीर (संवेदनशील संस्करण की पुष्टि, तत्काल कार्रवाई आवश्यक)=== Next.js Security Scanner ===
लक्ष्य: /home/user/myapp
दिनांक: 2026-04-04 12:00
CVE: CVE-2025-55182 (React2Shell, CVSS 10.0)
[चरण 1] Next.js संस्करण जाँच
[CRITICAL] Next.js v15.2.4 CVE-2025-55182 (React2Shell) के लिए संवेदनशील है
-> package.json: "next": "^15.2.4"
-> यह संस्करण सर्वर घटकों के डिसीरियलाइज़ेशन के माध्यम से बिना प्रमाणीकरण के RCE की अनुमति देता है
[चरण 2] React संस्करण जाँच
[CRITICAL] React v19.1.0 CVE-2025-55182 संवेदनशील सूची में है
[चरण 3] ऐप राउटर / सर्वर घटक पहचान
[INFO] ऐप राउटर का पता चला (app/ निर्देशिका मौजूद है)
[CRITICAL] संवेदनशील Next.js + सर्वर घटक = React2Shell के लिए सक्रिय हमले की सतह
...
=== स्कैन सारांश ===
CRITICAL : 3
WARNING : 0
INFO : 2
CRITICAL समस्याएँ मिलीं। तत्काल कार्रवाई आवश्यक।
=== सुधार (CVE-2025-55182) ===
1. Next.js को पैच किए गए संस्करण में अपग्रेड करें:
npm install next@latest
...
तत्काल अपग्रेड करें:
npm install next@latest
npm install react@latest react-dom@latest
प्रत्येक माइनर श्रृंखला में पहले पैच किए गए संस्करण के लिए https://github.com/vercel/next.js/releases देखें।
यदि शोषण का संदेह है:
ps aux | grep -E '\.sh|\.py'
crontab -l; cat /etc/cron*
ss -tnp | grep -E '144\.172|172\.86'
ls -la /tmp/ | grep '^\.'
144.172.102.88, 172.86.127.128, 144.172.112.136, 144.172.117.112bash scan.sh [लक्ष्य-निर्देशिका]
ट्रिगर कीवर्ड: "next.js security check", "CVE-2025-55182", "React2Shell", "Next.js vulnerability scan"
कौशल रैपर के लिए claude-code/SKILL.md देखें।
यह उपकरण केवल रक्षात्मक सुरक्षा उद्देश्यों के लिए प्रदान किया गया है। यह आपके अपने प्रोजेक्ट फ़ाइलों के विरुद्ध केवल स्थानीय, केवल-पढ़ने योग्य जाँच करता है। कोई नेटवर्क कनेक्शन नहीं बनाया जाता, कोई डेटा बाहरी रूप से नहीं भेजा जाता, और कोई शोषण निष्पादित नहीं किया जाता।
भेद्यता जानकारी और IOC डेटा सार्वजनिक रूप से उपलब्ध स्रोतों (NVD, Cisco Talos) पर आधारित हैं। यह स्कैनर गलत सकारात्मक परिणाम दे सकता है या कुछ हमले वैक्टरों को चूक सकता है। यह पेशेवर सुरक्षा ऑडिट, पैठ परीक्षण या विक्रेता-प्रदत्त सुरक्षा पैच को प्रतिस्थापित नहीं करता।
अपने जोखिम पर उपयोग करें। लेखक इस उपकरण के उपयोग से होने वाले नुकसान के लिए कोई दायित्व नहीं मानते।
MIT — LICENSE देखें