जानबूझकर असुरक्षित बनाया गया Next.js ऐप, CVE-2025-55182 सुरक्षा अनुसंधान और CTF चुनौतियों के लिए।
⚠️ केवल शैक्षिक उद्देश्य: यह एक जानबूझकर कमजोर बनाया गया अनुप्रयोग है जिसे अधिकृत सुरक्षा अनुसंधान और CTF चुनौतियों के लिए डिज़ाइन किया गया है। इन तकनीकों का उपयोग अनधिकृत सिस्टम पर न करें।
यह एक जानबूझकर कमजोर Next.js 15.1.6 अनुप्रयोग है जो CVE-2025-55182 (React2Shell) को प्रदर्शित करता है - जो React Server Components में एक गंभीर Remote Code Execution (RCE) भेद्यता है। इसे सुरक्षा शोधकर्ताओं, पैठ परीक्षकों (penetration testers) और छात्रों के लिए एक सुरक्षित, पृथक वातावरण में शोषण तकनीकों का अभ्यास करने हेतु बनाया गया है।
CVE-2025-55182, जिसे React2Shell के नाम से भी जाना जाता है, एक गंभीर Remote Code Execution (RCE) भेद्यता है जो Next.js में React Server Components को प्रभावित करती है।
यह भेद्यता React Server Actions में serialized डेटा के अनुचित संचालन के कारण उत्पन्न होती है। हमलावर दुर्भावनापूर्ण payloads तैयार कर सकते हैं जो सत्यापन को दरकिनार करते हुए सर्वर पर मनमाना कोड निष्पादित कर सकते हैं, निम्न माध्यमों से:
शुरू करने से पहले, सुनिश्चित करें कि निम्नलिखित स्थापित हैं:
docker --version
docker-compose --version
git --version
# 1. Clone the repository
git clone https://github.com/Machine-farmer/PunchingBag-for-React2Shell.git
cd PunchingBag-for-React2Shell
# 2. Build and run with Docker
docker-compose up --build
# 3. Access the application
# Open your browser to: http://localhost:3000
# 1. Clone the repository
git clone https://github.com/Machine-farmer/punchingbag-cve-2025-55182.git
cd punchingbag-cve-2025-55182
# 2. Install dependencies
npm install
# 3. Run development server
npm run dev
# 4. Access at http://localhost:3000
⚠️ चेतावनी: सुरक्षा अनुसंधान के लिए Docker के बिना मैन्युअल सेटअप की अनुशंसा नहीं की जाती है। अलगाव के लिए हमेशा Docker का उपयोग करें।
# Start the vulnerable application
docker-compose up
# Start in detached mode (background)
docker-compose up -d
# View logs
docker-compose logs -f
# Stop containers
docker-compose down
# Stop and remove volumes
docker-compose down -v
# Complete cleanup (removes images)
docker-compose down -v --rmi all
चालू होने के बाद, यहाँ जाएँ:
PunchingBag में 5 छिपे हुए फ़्लैग्स हैं जो विभिन्न शोषण तकनीकों का परीक्षण करते हैं:
| फ़्लैग | चुनौती | कठिनाई | अंक |
|---|---|---|---|
| 🚩 फ़्लैग 1 | बुनियादी टोह (Reconnaissance) | आसान | 100 |
| 🚩 फ़्लैग 2 | Server Action शोषण | मध्यम | 200 |
| 🚩 फ़्लैग 3 | एडमिन एक्सेस बाईपास | मध्यम | 300 |
| 🚩 फ़्लैग 4 | Remote Code Execution | कठिन | 400 |
| 🚩 फ़्लैग 5 | पर्यावरण रहस्य (Environment Secrets) | मध्यम | 250 |
सभी फ़्लैग्स इस प्रारूप का अनुसरण करते हैं: CTF{description_here}
# Explore the application
curl http://localhost:3000
# Check available endpoints
curl http://localhost:3000/dashboard
curl http://localhost:3000/admin
फ़ॉर्म सबमिशन को इंटरसेप्ट करें और payload को संशोधित करें:
// Example malicious payload
{
"name": "attacker",
"email": "[email protected]",
"message": "__proto__: { isAdmin: true }"
}
# Inject malicious headers
curl -X POST http://localhost:3000/api/data \
-H "Content-Type: application/json" \
-H "x-user-data: {\"role\":\"admin\"}" \
-d '{"exploit": true}'
क्रेडेंशियल्स के लिए .env.local जाँचें या प्रमाणीकरण का शोषण करें:
# Default admin token (intentionally weak)
Username: admin
Token: super_secret_admin_key_12345
कमजोर घटक (component) पर कमांड निष्पादन सुविधा का उपयोग करें:
# Simulate RCE
Command: cat /flag.txt
__proto__ गुण इंजेक्ट करें