Volver a actualizaciones
Nuevo releaseSep 10, 2026

oss-oopssec-store v2.20.0

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

Compartir

OSS - OopsSec Store

Entrenamiento de seguridad para las aplicaciones que realmente despliegas.

36 desafíos que abarcan web, API, autenticación, lógica de negocio, criptografía, cadena de suministro, agentes de IA y MCP.

Rompe una aplicación de comercio electrónico deliberadamente vulnerable construida sobre Next.js, React, TypeScript y Prisma.
Encuentra los errores. Explótalos. Entiende por qué funcionan.

Docker Hub · npm · Roadmap · Walkthroughs · Contributing · Good first issues

OWASP VWAD TryHackMe room Intentionally Vulnerable
GitHub license PRs Welcome Good first issues
GitHub stars GitHub forks

```bash

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

Start with Node.js

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

Start with Docker

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

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

<div align="center">

<table>
<tr>
<td width="50%" align="center">
<a href="https://github.com/koadt/oss-oopssec-store/blob/main/public/oopssec-store-storefront-0.png"><img src="https://raw.githubusercontent.com/koadt/oss-oopssec-store/main/public/oopssec-store-storefront-0.png" alt="OopsSec Store storefront" width="100%"></a>
<br><sub><b>Storefront</b> · la aplicación de comercio electrónico que estás atacando</sub>
</td>
<td width="50%" align="center">
<a href="https://github.com/koadt/oss-oopssec-store/blob/main/public/oopssec-store-storefront-1.png"><img src="https://raw.githubusercontent.com/koadt/oss-oopssec-store/main/public/oopssec-store-storefront-1.png" alt="Player dashboard tracking captured flags" width="100%"></a>
<br><sub><b>Panel del jugador</b> · progreso, dificultad y desglose por categoría</sub>
</td>
</tr>
<tr>
<td width="50%" align="center">
<a href="https://github.com/koadt/oss-oopssec-store/blob/main/public/oopssec-store-storefront-2.png"><img src="https://raw.githubusercontent.com/koadt/oss-oopssec-store/main/public/oopssec-store-storefront-2.png" alt="OSSBot AI customer support assistant" width="100%"></a>
<br><sub><b>OSSBot</b> · el asistente de soporte con IA al que le haces prompt injection</sub>
</td>
<td width="50%" align="center">
<a href="https://github.com/koadt/oss-oopssec-store/blob/main/public/oopssec-store-storefront-3.png"><img src="https://raw.githubusercontent.com/koadt/oss-oopssec-store/main/public/oopssec-store-storefront-3.png" alt="Challenge roadmap across 11 chapters" width="100%"></a>
<br><sub><b>Roadmap</b> · los bugs que se cuelan en el código de producción</sub>
</td>
</tr>
</table>

<sub>Haz clic en cualquier captura para verla a tamaño completo.</sub>

</div>

---

## Primeros pasos

<table>
<tr>
<td width="56" align="center" valign="top"><img src="https://img.shields.io/badge/1-15803d?style=for-the-badge" alt="Step 1"></td>
<td valign="top">
<b>Inicia el laboratorio</b><br>
<code>npx create-oss-store my-ctf-lab &amp;&amp; cd my-ctf-lab &amp;&amp; npm start</code><br>
<sub>O <a href="#docker">ejecútalo con Docker</a>. La tienda se levanta en <a href="http://localhost:3000">localhost:3000</a>.</sub>
</td>
</tr>
<tr>
<td width="56" align="center" valign="top"><img src="https://img.shields.io/badge/2-15803d?style=for-the-badge" alt="Step 2"></td>
<td valign="top">
<b>Ve a por el reto #1</b><br>
<a href="http://localhost:3000/vulnerabilities/public-env-variable">Fuga de variable de entorno pública</a>: un secreto de pago que Next.js incrusta en el bundle del cliente.<br>
<sub>Fácil · 15–20 min · solo necesitas las devtools de tu navegador.</sub>
</td>
</tr>
<tr>
<td width="56" align="center" valign="top"><img src="https://img.shields.io/badge/3-15803d?style=for-the-badge" alt="Step 3"></td>
<td valign="top">
<b>¿Atascado? Lee el walkthrough</b><br>
Cada reto tiene uno, desde la vulnerabilidad hasta el exploit y la solución.<br>
<sub>El primero: <a href="https://koadt.github.io/oss-oopssec-store/posts/next-public-env-variable-leak/">Reading Secrets From the Browser: The NEXT_PUBLIC_ Trap in Next.js</a>.</sub>
</td>
</tr>
<tr>
<td width="56" align="center" valign="top"><img src="https://img.shields.io/badge/4-15803d?style=for-the-badge" alt="Step 4"></td>
<td valign="top">
<b>Valida la flag</b><br>
Pega <code>OSS{...}</code> en el verificador de flags, el widget flotante de cada página.<br>
<sub>Tu <a href="http://localhost:3000/player-dashboard">panel de jugador</a> registra lo que queda.</sub>
</td>
</tr>
<tr>
<td width="56" align="center" valign="top"><img src="https://img.shields.io/badge/5-15803d?style=for-the-badge" alt="Step 5"></td>
<td valign="top">
<b>Elige el siguiente</b><br>
El <a href="https://koadt.github.io/oss-oopssec-store/roadmap">roadmap</a> ordena cada reto por capítulos: dificultad, estimación de tiempo, requisitos previos.<br>
<sub>Coge la siguiente tarjeta y vuelve al paso 2. ↻</sub>
</td>
</tr>
</table>

> [!TIP]
> ¿Los has capturado todos? [Únete al Salón de la Fama](#hall-of-fame), dale una estrella al repo y publica tu ruta en [Show your solve](https://github.com/kOaDT/oss-oopssec-store/discussions/categories/show-your-solve).

<sub>¿Nuevo en seguridad ofensiva? La <a href="https://tryhackme.com/jr/oopssecstorethesummeraudit">sala de TryHackMe</a> envuelve las primeras flags en una narrativa guiada.</sub>

---

## Tabla de contenidos

- [Características](#features)
- [¿Por qué OopsSec Store?](#why-oopssec-store)
- [Instalación](#installation)
  - [Inicio rápido (npm)](#quick-start)
  - [Docker](#docker)
- [Salón de la fama](#hall-of-fame)
- [Comunidad](#community)
- [Estructura del proyecto](#project-structure)
- [Testing](#testing)
- [Aviso legal](#disclaimer)
- [Contribuir](#contributing)
- [Kit para educadores](#-using-oopssec-store-in-a-course-or-ctf)
- [Estadísticas del proyecto](#project-stats)

---

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

## Características

Categorías