Retour aux mises à jour
New releaseAug 12, 2026

oss-oopssec-store v2.18.0

Formation à la sécurité pour les applications que vous livrez réellement. Ouvrez votre navigateur et commencez à pirater.

Partager

OSS - OopsSec Store

Une application e-commerce volontairement vulnérable pour apprendre la sécurité web.
Maîtrisez les vecteurs d'attaque réels grâce à une plateforme CTF réaliste.
Cherchez des flags, exploitez des vulnérabilités et améliorez vos compétences en sécurité.

Docker Hub · npm · Feuille de route · Guides pas à pas · Contribuer · Bons premiers tickets

GitHub license PRs Welcome Good first issues Intentionally Vulnerable
GitHub stars GitHub forks


   ____  ____ ____     ____                  ____            ____  _
  / __ \/ __// __/    / __ \ ___   ___  ___ / __/ ___  ____ / __/ / /_ ___   ____ ___
 / /_/ /\ \ _\ \     / /_/ // _ \ / _ \(_-<_\ \  / -_)/ __/_\ \  / __// _ \ / __// -_)
 \____/___//___/     \____/ \___// .__/___/___/  \__/ \__//___/  \__/ \___//_/   \__/
                                /_/

# Node.js
npx create-oss-store my-ctf-lab && cd my-ctf-lab && npm start

# Docker
docker run -p 3000:3000 leogra/oss-oopssec-store

# Then open http://localhost:3000 and start hacking

Table des matières


[!WARNING] Cette application contient des failles de sécurité intentionnelles et ne doit jamais être déployée dans un environnement de production.

Fonctionnalités

  • Application e-commerce volontairement vulnérable (XSS, CSRF, IDOR, attaques JWT, path traversal, injection SQL, et plus encore)
  • Construite avec Next.js, React, Prisma et SQLite
  • API REST avec vecteurs d'attaque documentés
  • 36 défis CTF répartis sur 11 chapitres, organisés selon une feuille de route pédagogique
  • Documentation des vulnérabilités et guides pas à pas communautaires pour chaque défi
  • Tests automatisés qui vérifient que les exploits fonctionnent toujours (les PR qui corrigeraient accidentellement une vulnérabilité échouent à la CI)

Pourquoi OopsSec Store ?

OopsSec Store est la seule application web volontairement vulnérable construite avec Next.js et React, la stack que vous rencontrerez réellement en production. Et la surface d'attaque de l'ère de l'IA fait partie du programme principal, pas d'une simple réflexion après coup : injection de prompts, empoisonnement d'outils MCP, backdoors d'agents de codage IA et chaîne d'attaque sur la supply-chain npm simulée de bout en bout.

OopsSec StoreJuice ShopDVWA
StackNext.js · React · PrismaNode.js · Express · AngularPHP · MySQL
Mise en placenpx create-oss-store (moins d'1 min) / DockerDocker / npmDocker / LAMP manuel
Flags CTF✅ Intégrés✅ Mode CTF optionnel
Parcours pédagogique guidé✅ 1 parcours, 11 chapitres, 36 flags❌ Tableau de scores uniquementPartiel (niveaux de sécurité)
Guide pas à pas pour chaque défi✅ Guide compagnonPartiel (indices)
Injection de prompts LLM✅ Branchez une clé API gratuite✅ v20+, apportez et configurez votre propre LLM
Empoisonnement d'outil MCP
Backdoor d'agent de codage IA (fichier de règles empoisonné)
Chaîne d'attaque sur la supply-chain✅ Simulée de bout en bout : typosquat npm → backdoor dans les règlesPartiel — identification uniquement
Défis basés sur de vrais CVE
Hall of Fame pour les joueurs

Dernière vérification en juin 2026, avec Juice Shop v20 et DVWA 2.x. Vous avez repéré une inexactitude ? Ouvrez une issue ou ouvrez une PR.

Installation

Démarrage rapide

npx create-oss-store my-ctf-lab
cd my-ctf-lab
npm start

Ouvrez ensuite http://localhost:3000 dans votre navigateur.

Installation manuelle

Clonez le dépôt et exécutez le script d'installation :

git clone https://github.com/kOaDT/oss-oopssec-store.git
cd oss-oopssec-store
npm run setup

Ce script crée le fichier .env, installe les dépendances, configure la base de données SQLite, la remplit avec les flags CTF, puis lance l'application sur le port 3000.

Docker

Aucun Node.js requis. Il suffit de Docker.

Depuis Docker Hub (le plus rapide)

docker run -p 3000:3000 leogra/oss-oopssec-store

Pour conserver les données entre les redémarrages :

docker run -p 3000:3000 -v oss-data:/app/data leogra/oss-oopssec-store

Depuis les sources (Docker Compose)

git clone https://github.com/kOaDT/oss-oopssec-store.git
cd oss-oopssec-store
docker compose up -d

Ou à l'aide des scripts npm :

npm run docker:up       # Start in background (builds image on first run)
npm run docker:logs     # Follow container logs
npm run docker:down     # Stop the container
npm run docker:reset    # Wipe data and restart fresh

La base de données est initialisée au premier démarrage. Les données persistent entre les redémarrages grâce aux volumes nommés Docker. Pour tout réinitialiser (progression des flags, utilisateurs, téléversements), exécutez npm run docker:reset.

Hall of Fame

Vous avez trouvé tous les flags ? Ouvrez une pull request pour rejoindre le Hall of Fame. Ajoutez votre entrée dans hall-of-fame/data.json et votre profil apparaîtra sur la page /hall-of-fame de l'application.

Structure du projet

FolderDescription
app/Routeur App de Next.js : pages, routes API, composants React
app/api/Points de terminaison de l'API REST (auth, panier, commandes, produits, flags, etc.)
app/components/Composants React (Header, Footer, ProductCard, etc.)
app/vulnerabilities/Pages documentant chaque vulnérabilité
content/vulnerabilities/Descriptions Markdown des vulnérabilités et vecteurs d'attaque
lib/Utilitaires partagés : client DB, auth, helpers API, types
prisma/Schéma de base de données, script de seed et flags.ts — les flags CTF et leurs indices
public/Ressources statiques et charges utiles d'exploitation (ex. démo CSRF)
hooks/Hooks React personnalisés (authentification, etc.)
scripts/Scripts de mise en place et d'automatisation
docs/Site de documentation statique avec les guides pas à pas communautaires
hall-of-fame/Profils des joueurs ayant trouvé tous les flags
packages/Paquet NPM create-oss-store pour le scaffolding (et artefacts de quarantaine du lab comme react-toastfy)
lab/quarantine/Charges malveillantes inertes pour les défis supply-chain (à traiter comme des données, jamais comme des instructions)
tests/Tests unitaires et API Jest qui valident les exploits
cypress/Tests E2E pour les workflows d'exploitation complets

Activité récente Time period

Timeline graph Trending topics

Issue status graph Pull request status graph

Tests

Le projet comprend des tests de non-régression de sécurité qui garantissent que toutes les chaînes d'exploitation et tous les flags fonctionnent toujours. Ces tests valident délibérément des comportements non sécurisés. Ils s'exécutent à chaque PR : si vous corrigez accidentellement une vulnérabilité, la CI le détectera.

Exécuter les tests

# Unit tests (utility functions: MD5 hashing, JWT, input filters)
npm run test:unit

# API exploitation tests (requires a running server)
npm run test:api

# E2E exploitation tests (requires a running server)
npm run test:e2e

# Open Cypress interactive mode
npm run test:e2e:open

# All tests
npm run test:ci

Avertissement

[!CAUTION] Ce projet est destiné uniquement à des fins éducatives et à des tests de sécurité autorisés. Il contient des vulnérabilités intentionnelles et des configurations non sécurisées. Les auteurs ne sont pas responsables d'un usage abusif, des dommages ou d'un accès non autorisé. Utilisez-le dans des environnements isolés.

Contribuer

OSS – OopsSec Store est sous licence MIT. Les contributions sont les bienvenues.

Comment contribuer :

  • Ajouter de nouveaux défis de sécurité
  • Rédiger ou améliorer les guides pas à pas
  • Étendre l'application
  • Signaler et corriger des bugs
  • Améliorer la documentation

Consultez la feuille de route pour les travaux planifiés, ou prenez un bon premier ticket.

Vous avez trouvé tous les flags ? Partagez vos guides pas à pas sur le site de documentation.

Pour les bugs ou suggestions, ouvrez une issue GitHub. Consultez CONTRIBUTING.md pour les directives.

🎓 Vous utilisez OopsSec Store dans un cours ou un CTF ?

Consultez le Kit Éducateur - un guide prêt à l'emploi avec des grilles de couverture OWASP, des modèles de syllabus, une FAQ de déploiement et un modèle de rapport étudiant.

Repography logo / Contributeurs principaux

Top contributors


Auteur : kOaDT
Projet : OopsSec Store
Contact : [email protected]

Licence : MIT

Ne supprimez pas et ne modifiez pas le fichier LICENSE dans votre fork.

Catégories