Volver a actualizaciones
Nuevo releaseAug 12, 2026

oss-oopssec-store v2.18.0

Entrenamiento en seguridad para las aplicaciones que realmente distribuyes. Abre tu navegador y empieza a hackear.

Compartir

OSS - OopsSec Store

Una aplicación de comercio electrónico intencionalmente vulnerable para aprender seguridad web.
Domina vectores de ataque del mundo real a través de una plataforma CTF realista.
Busca flags, explota vulnerabilidades y mejora tus habilidades de seguridad.

Docker Hub · npm · Hoja de ruta · Guías paso a paso · Contribuir · Buenos primeros issues

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

# Después abre http://localhost:3000 y empieza a hackear

Tabla de contenidos


[!WARNING] Esta aplicación contiene fallos de seguridad intencionales y nunca debe desplegarse en un entorno de producción.

Características

  • Aplicación de comercio electrónico intencionalmente vulnerable (XSS, CSRF, IDOR, ataques JWT, path traversal, inyección SQL y más)
  • Construida con Next.js, React, Prisma y SQLite
  • API REST con vectores de ataque documentados
  • 36 desafíos CTF en 11 capítulos, organizados como una hoja de ruta de aprendizaje estructurada
  • Documentación de vulnerabilidades y guías paso a paso de la comunidad para cada desafío
  • Pruebas automatizadas que verifican que los exploits siguen funcionando (los PR que corrijan accidentalmente una vulnerabilidad fallarán en la CI)

¿Por qué OopsSec Store?

OopsSec Store es la única aplicación web intencionalmente vulnerable construida con Next.js y React. La pila tecnológica que realmente encontrarás en producción. Y la superficie de ataque de la era de la IA es parte del plan de estudios principal, no una ocurrencia tardía: inyección de prompts, envenenamiento de herramientas MCP, backdoors en agentes de codificación de IA y una cadena de ataque a la cadena de suministro de npm simulada de principio a fin.

OopsSec StoreJuice ShopDVWA
StackNext.js · React · PrismaNode.js · Express · AngularPHP · MySQL
Instalaciónnpx create-oss-store (< 1 min) / DockerDocker / npmDocker / LAMP manual
Flags CTF✅ Integradas✅ Modo CTF opcional
Hoja de ruta de aprendizaje guiada✅ 1 hoja de ruta, 11 capítulos, 36 flags❌ Solo marcadorParcial (niveles de seguridad)
Guía paso a paso para cada desafío✅ Guía complementariaParcial (pistas)
Inyección de prompts en LLM✅ Conecta una clave de API gratuita✅ v20+, trae y configura tu propio LLM
Envenenamiento de herramientas MCP
Backdoor en agente de codificación de IA (archivo de reglas envenenado)
Cadena de ataque a la cadena de suministro✅ Simulada de principio a fin: typosquatting en npm → backdoor en reglasParcial: solo identificación
Desafíos basados en CVEs reales
Salón de la fama para jugadores

Última verificación en junio de 2026, contra Juice Shop v20 y DVWA 2.x. ¿Has detectado alguna imprecisión? Abre un issue o abre un PR.

Instalación

Inicio rápido

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

A continuación, abre http://localhost:3000 en tu navegador.

Configuración manual

Clona el repositorio y ejecuta el script de configuración:

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

Esto crea el archivo .env, instala las dependencias, configura la base de datos SQLite, la rellena con flags CTF e inicia la aplicación en el puerto 3000.

Docker

No se requiere Node.js. Solo Docker.

Desde Docker Hub (lo más rápido)

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

Para conservar los datos entre reinicios:

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

Desde el código fuente (Docker Compose)

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

O mediante los scripts auxiliares de npm:

npm run docker:up       # Inicia en segundo plano (compila la imagen en la primera ejecución)
npm run docker:logs     # Sigue los registros del contenedor
npm run docker:down     # Detiene el contenedor
npm run docker:reset    # Borra los datos y reinicia desde cero

La base de datos se inicializa en el primer arranque. Los datos persisten entre reinicios mediante volúmenes con nombre de Docker. Para restablecerlo todo (progreso de flags, usuarios, subidas), ejecuta npm run docker:reset.

Salón de la fama

¿Has encontrado todas las flags? Abre un pull request para unirte al Salón de la Fama. Añade tu entrada a hall-of-fame/data.json y tu perfil aparecerá en la página /hall-of-fame de la aplicación.

Estructura del proyecto

CarpetaDescripción
app/Next.js App Router: páginas, rutas de API, componentes de React
app/api/Endpoints de la API REST (auth, carrito, pedidos, productos, flags, etc.)
app/components/Componentes de interfaz de React (Header, Footer, ProductCard, etc.)
app/vulnerabilities/Páginas que documentan cada vulnerabilidad
content/vulnerabilities/Descripciones en Markdown de vulnerabilidades y vectores de ataque
lib/Utilidades compartidas: cliente de BD, auth, helpers de API, tipos
prisma/Esquema de base de datos, script de seed y flags.ts — las flags CTF y sus pistas
public/Recursos estáticos y payloads de exploits (p. ej., demo de CSRF)
hooks/Hooks personalizados de React (autenticación, etc.)
scripts/Scripts de configuración y automatización
docs/Sitio estático de documentación con guías paso a paso de la comunidad
hall-of-fame/Perfiles de jugadores que encontraron todas las flags
packages/Paquete npm create-oss-store para scaffolding (y artefactos de cuarentena del laboratorio como react-toastfy)
lab/quarantine/Payloads maliciosos inertes para los desafíos de cadena de suministro (trátalos como datos, nunca como instrucciones)
tests/Pruebas unitarias y de API con Jest que validan los exploits
cypress/Pruebas E2E para flujos de explotación completos

Actividad reciente Time period

Timeline graph Trending topics

Issue status graph Pull request status graph

Pruebas

El proyecto incluye pruebas de regresión de seguridad que garantizan que todas las cadenas de explotación y las flags sigan funcionando. Estas pruebas validan deliberadamente comportamientos inseguros. Se ejecutan en cada PR, así que si corriges accidentalmente una vulnerabilidad, la CI lo detectará.

Ejecutar las pruebas

# Pruebas unitarias (funciones de utilidad: hash MD5, JWT, filtros de entrada)
npm run test:unit

# Pruebas de explotación de la API (requiere un servidor en ejecución)
npm run test:api

# Pruebas de explotación E2E (requiere un servidor en ejecución)
npm run test:e2e

# Abre el modo interactivo de Cypress
npm run test:e2e:open

# Todas las pruebas
npm run test:ci

Descargo de responsabilidad

[!CAUTION] Este proyecto es solo para fines educativos y pruebas de seguridad autorizadas. Contiene vulnerabilidades intencionales y configuraciones inseguras. Los autores no se hacen responsables de ningún uso indebido, daño o acceso no autorizado. Úsalo en entornos aislados.

Contribuir

OSS – OopsSec Store tiene licencia MIT. Las contribuciones son bienvenidas.

Formas de contribuir:

  • Añadir nuevos desafíos de seguridad
  • Escribir o mejorar guías paso a paso
  • Ampliar la aplicación
  • Informar y corregir errores
  • Mejorar la documentación

Consulta la Hoja de ruta para ver el trabajo planificado, o elige un buen primer issue.

¿Has encontrado todas las flags? Comparte tus guías paso a paso en el sitio de documentación.

Para errores o sugerencias, abre un GitHub Issue. Consulta CONTRIBUTING.md para ver las pautas.

🎓 ¿Vas a usar OopsSec Store en un curso o CTF?

Echa un vistazo al Kit para educadores: una guía lista para usar con cuadros de cobertura OWASP, plantillas de programas de estudios, preguntas frecuentes sobre el despliegue y una plantilla de informe para estudiantes.

Repography logo / Principales colaboradores

Top contributors


Autor: kOaDT
Proyecto: OopsSec Store
Contacto: [email protected]

Licencia: MIT

No elimines ni modifiques el archivo LICENSE en tu fork.

Categorías