
आपके द्वारा वास्तव में शिप किए जाने वाले ऐप्स के लिए सुरक्षा प्रशिक्षण। अपना ब्राउज़र खोलें और हैकिंग शुरू करें।
वेब सुरक्षा सीखने के लिए एक जानबूझकर कमजोर ई-कॉमर्स ऐप।
एक यथार्थवादी CTF प्लेटफ़ॉर्म के माध्यम से वास्तविक दुनिया के अटैक वेक्टर में महारत हासिल करें।
फ़्लैग खोजें, कमजोरियों का शोषण करें, और अपने सुरक्षा कौशल को अगले स्तर पर ले जाएं।
Docker Hub · npm · रोडमैप · वॉकथ्रू · योगदान · अच्छे पहले मुद्दे
____ ____ ____ ____ ____ ____ _
/ __ \/ __// __/ / __ \ ___ ___ ___ / __/ ___ ____ / __/ / /_ ___ ____ ___
/ /_/ /\ \ _\ \ / /_/ // _ \ / _ \(_-<_\ \ / -_)/ __/_\ \ / __// _ \ / __// -_)
\____/___//___/ \____/ \___// .__/___/___/ \__/ \__//___/ \__/ \___//_/ \__/
/_/
# Node.js
npx create-oss-store my-ctf-lab && cd my-ctf-lab && npm start
# Docker
docker run -p 127.0.0.1:3000:3000 leogra/oss-oopssec-store
# Then open http://localhost:3000 and start hacking
[!WARNING] इस एप्लिकेशन में जानबूझकर सुरक्षा दोष हैं और इसे कभी भी प्रोडक्शन वातावरण में तैनात नहीं किया जाना चाहिए।
OopsSec Store Next.js और React के साथ निर्मित एकमात्र जानबूझकर कमजोर वेब एप्लिकेशन है। वह स्टैक जो आप वास्तव में प्रोडक्शन में देखेंगे। और AI-युग का हमला सतह मुख्य पाठ्यक्रम का हिस्सा है, कोई बाद का विचार नहीं: प्रॉम्प्ट इंजेक्शन, MCP टूल पॉइज़निंग, AI कोडिंग-एजेंट बैकडोर, और एक npm सप्लाई-चेन अटैक श्रृंखला जो अंत से अंत तक अनुकरण की गई है।
| OopsSec Store | Juice Shop | DVWA | |
|---|---|---|---|
| स्टैक | Next.js · React · Prisma | Node.js · Express · Angular | PHP · MySQL |
| सेटअप | npx create-oss-store (< 1 मिनट) / Docker | Docker / npm | Docker / मैनुअल LAMP |
| CTF फ़्लैग | ✅ अंतर्निहित | ✅ ऑप्ट-इन CTF मोड | ❌ |
| निर्देशित सीखने का रोडमैप | ✅ 1 रोडमैप, 11 अध्याय, 36 फ़्लैग | ❌ केवल स्कोर बोर्ड | आंशिक (सुरक्षा स्तर) |
| हर चुनौती के लिए वॉकथ्रू | ✅ | ✅ साथी गाइड | आंशिक (संकेत) |
| LLM प्रॉम्प्ट इंजेक्शन | ✅ मुफ़्त API कुंजी प्लग इन करें | ✅ v20+, अपना LLM लाएं और कॉन्फ़िगर करें | ❌ |
| MCP टूल पॉइज़निंग | ✅ | ❌ | ❌ |
| AI कोडिंग-एजेंट बैकडोर (जहरीली नियम फ़ाइल) | ✅ | ❌ | ❌ |
| सप्लाई-चेन अटैक श्रृंखला | ✅ अंत से अंत तक अनुकरण: npm typosquat → नियम बैकडोर | आंशिक — केवल पहचान | ❌ |
| वास्तविक CVE पर आधारित चुनौतियाँ | ✅ | ❌ | ❌ |
| खिलाड़ियों के लिए हॉल ऑफ़ फ़ेम | ✅ | ❌ | ❌ |
अंतिम बार जून 2026 में, Juice Shop v20 और DVWA 2.x के विरुद्ध सत्यापित। कोई अशुद्धि मिली? एक मुद्दा खोलें या एक PR खोलें।
npx create-oss-store my-ctf-lab
cd my-ctf-lab
npm start
फिर अपने ब्राउज़र में http://localhost:3000 खोलें।
रिपॉजिटरी को क्लोन करें और सेटअप स्क्रिप्ट चलाएं:
git clone https://github.com/kOaDT/oss-oopssec-store.git
cd oss-oopssec-store
npm run setup
यह .env फ़ाइल बनाता है, निर्भरताएँ स्थापित करता है, SQLite डेटाबेस सेट करता है, इसे CTF फ़्लैग के साथ सीड करता है, और पोर्ट 3000 पर ऐप शुरू करता है।
कोई Node.js आवश्यक नहीं। बस Docker।
127.0.0.1:3000:3000लैब को केवल आपकी अपनी मशीन से पहुंच योग्य रखता है। सादा-p 3000:3000केवल एक अलग VM पर उपयोग करें जिसे आप नियंत्रित करते हैं।
docker run -p 127.0.0.1:3000:3000 leogra/oss-oopssec-store
पुनः आरंभ के दौरान डेटा बनाए रखने के लिए:
docker run -p 127.0.0.1:3000:3000 -v oss-data:/app/data leogra/oss-oopssec-store
git clone https://github.com/kOaDT/oss-oopssec-store.git
cd oss-oopssec-store
docker compose up -d
या npm सहायक स्क्रिप्ट का उपयोग करके:
npm run docker:up # पृष्ठभूमि में प्रारंभ करें (पहली बार चलाने पर छवि बनाता है)
npm run docker:logs # कंटेनर लॉग का अनुसरण करें
npm run docker:down # कंटेनर रोकें
npm run docker:reset # डेटा मिटाएं और नए सिरे से शुरू करें
डेटाबेस पहली बार शुरू होने पर प्रारंभ होता है। Docker नामित वॉल्यूम के माध्यम से डेटा पुनः आरंभ के दौरान बना रहता है। सब कुछ रीसेट करने के लिए (फ़्लैग प्रगति, उपयोगकर्ता, अपलोड), npm run docker:reset चलाएं।
सभी फ़्लैग मिल गए? हॉल ऑफ़ फ़ेम में शामिल होने के लिए एक पुल रिक्वेस्ट खोलें। अपनी प्रविष्टि hall-of-fame/data.json में जोड़ें और आपकी प्रोफ़ाइल ऐप के /hall-of-fame पेज पर दिखाई देगी।
प्रश्न, समाधान और प्रतिक्रिया चर्चाओं में रहती है।
| कहाँ जाएं | किस लिए |
|---|---|
| 🧩 किसी चुनौती पर अटके हैं | शोषण नहीं चलेगा, फ़्लैग मान्य नहीं होगा |
| 🛠️ सेटअप और स्थापना | लैब चालू करने में Docker, npm या Node समस्याएँ |
| 🏆 अपना समाधान दिखाएं | फ़्लैग का एक रास्ता जो वॉकथ्रू कवर नहीं करता |
| 💡 चुनौती विचार | एक कमजोरी वर्ग जो पाठ्यक्रम में जोड़ने लायक है |
| 🎓 OopsSec के साथ शिक्षण | किसी कक्षा, बूटकैंप या टीम के साथ लैब चलाना |
| मुद्दे | लैब में ही बग, और केवल वे |
| फ़ोल्डर | विवरण |
|---|---|
app/ | Next.js App Router: पेज, API रूट, React घटक |
app/api/ | REST API एंडपॉइंट (auth, cart, orders, products, flags, आदि) |
app/components/ | React UI घटक (Header, Footer, ProductCard, आदि) |
app/vulnerabilities/ | प्रत्येक कमजोरी का दस्तावेजीकरण करने वाले पेज |
content/vulnerabilities/ | कमजोरियों और अटैक वेक्टर के Markdown विवरण |
lib/ | साझा उपयोगिताएँ: DB क्लाइंट, auth, API सहायक, प्रकार |
prisma/ | डेटाबेस स्कीमा, सीड स्क्रिप्ट, और flags.ts — CTF फ़्लैग और उनके संकेत |
public/ | स्थिर संपत्तियाँ और शोषण पेलोड (जैसे, CSRF डेमो) |
hooks/ | कस्टम React हुक (प्रमाणीकरण, आदि) |
scripts/ | सेटअप और स्वचालन स्क्रिप्ट |
docs/ | सामुदायिक वॉकथ्रू के साथ स्थिर दस्तावेज़ साइट |
hall-of-fame/ | उन खिलाड़ियों के लिए प्रोफ़ाइल जिन्होंने सभी फ़्लैग पाए |
packages/ | स्कैफोल्डिंग के लिए NPM पैकेज create-oss-store (और लैब क्वारंटीन कलाकृतियाँ जैसे react-toastfy) |
lab/quarantine/ | सप्लाई-चेन चुनौतियों के लिए निष्क्रिय दुर्भावनापूर्ण पेलोड (डेटा के रूप में मानें, निर्देशों के रूप में कभी नहीं) |
tests/ | Jest यूनिट और API परीक्षण जो शोषण को मान्य करते हैं |
cypress/ | पूर्ण शोषण वर्कफ़्लो के लिए E2E परीक्षण |
प्रोजेक्ट में सुरक्षा प्रतिगमन परीक्षण शामिल हैं जो सुनिश्चित करते हैं कि सभी शोषण श्रृंखलाएँ और फ़्लैग अभी भी काम करते हैं। ये परीक्षण जानबूझकर असुरक्षित व्यवहार को मान्य करते हैं। वे हर PR पर चलते हैं, इसलिए यदि आप गलती से किसी कमजोरी को पैच करते हैं, तो CI इसे पकड़ लेगा।
# यूनिट परीक्षण (उपयोगिता फ़ंक्शन: MD5 हैशिंग, JWT, इनपुट फ़िल्टर)
npm run test:unit
# API शोषण परीक्षण (चालू सर्वर की आवश्यकता है)
npm run test:api
# E2E शोषण परीक्षण (चालू सर्वर की आवश्यकता है)
npm run test:e2e
# Cypress इंटरैक्टिव मोड खोलें
npm run test:e2e:open
# सभी परीक्षण
npm run test:ci
[!CAUTION] यह प्रोजेक्ट केवल शैक्षिक और अधिकृत सुरक्षा परीक्षण के लिए है। इसमें जानबूझकर कमजोरियाँ और असुरक्षित कॉन्फ़िगरेशन शामिल हैं। लेखक किसी भी दुरुपयोग, क्षति या अनधिकृत पहुंच के लिए ज़िम्मेदार नहीं हैं। इसे अलग-थलग वातावरण में उपयोग करें।
OSS – OopsSec Store MIT-लाइसेंस प्राप्त है। योगदान का स्वागत है।
योगदान करने के तरीके:
नियोजित कार्य के लिए रोडमैप देखें, या एक अच्छा पहला मुद्दा उठाएं।
सभी फ़्लैग मिल गए? दस्तावेज़ साइट पर अपने वॉकथ्रू साझा करें।
बग या सुझावों के लिए, एक GitHub मुद्दा खोलें। दिशानिर्देशों के लिए CONTRIBUTING.md देखें।
शिक्षक किट देखें - OWASP कवरेज ग्रिड, पाठ्यक्रम टेम्पलेट, तैनाती FAQ, और एक छात्र रिपोर्ट टेम्पलेट के साथ एक उपयोग के लिए तैयार गाइड। पाठ्यक्रम के आसपास अपना स्वयं का टूलिंग बना रहे हैं? पूरी चीज़ challenges.json पर मशीन-पठनीय फ़ीड के रूप में प्रकाशित है, जो हर दस्तावेज़ तैनाती पर पुनर्जीवित होती है।
लेखक: kOaDT
प्रोजेक्ट: OopsSec Store
संपर्क: [email protected]
लाइसेंस: MIT
अपने फोर्क में LICENSE फ़ाइल को न हटाएं या संशोधित न करें।