返回更新列表
新发布Aug 12, 2026

oss-oopssec-store v2.18.0

为你实际交付的应用程序提供安全培训。打开浏览器,开始黑客实践。

分享

OSS - OopsSec Store

一款刻意留有漏洞、用于学习 Web 安全的电子商务应用。
通过逼真的 CTF 平台掌握真实世界的攻击向量。
搜索 flag、利用漏洞,提升你的安全技能。

Docker Hub · npm · 路线图 · 通关指南 · 贡献指南 · 新手友好问题

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

目录


[!WARNING] 此应用包含刻意留下的安全漏洞,绝不能部署在生产环境中。

功能特性

  • 故意存在漏洞的电子商务应用(XSS、CSRF、IDOR、JWT 攻击、路径遍历、SQL 注入等)
  • 基于 Next.js、React、Prisma 和 SQLite 构建
  • 提供带有文档化攻击向量的 REST API
  • 跨 11 个章节的 36 个 CTF 挑战,以结构化学习路线图呈现
  • 每个挑战的漏洞文档和社区通关指南
  • 验证漏洞利用仍然有效的自动化测试(意外修复漏洞的 PR 将导致 CI 失败)

为什么选择 OopsSec Store?

OopsSec Store 是唯一基于 Next.js 和 React 构建的、故意存在漏洞的 Web 应用。这套技术栈正是你在生产环境中真正会遇到的。而且 AI 时代的攻击面是核心课程的一部分,而非事后补充:提示注入、MCP 工具投毒、AI 编码代理后门,以及端到端模拟的 npm 供应链攻击链。

OopsSec StoreJuice ShopDVWA
技术栈Next.js · React · PrismaNode.js · Express · AngularPHP · MySQL
安装方式npx create-oss-store (< 1 分钟) / DockerDocker / npmDocker / manual LAMP
CTF flag✅ 内置✅ 可选 CTF 模式
引导式学习路线图✅ 1 条路线图、11 个章节、36 个 flag❌ 仅计分板部分(安全等级)
每个挑战都有通关指南✅ 配套指南部分(提示)
LLM 提示注入✅ 可接入免费 API 密钥✅ v20+,自带并配置你自己的 LLM
MCP 工具投毒
AI 编码代理后门(投毒的规则文件)
供应链攻击链✅ 端到端模拟:npm 错别字抢注 → 规则后门部分 — 仅识别
基于真实 CVE 的挑战
玩家名人堂

最近验证于 2026 年 6 月,针对 Juice Shop v20 和 DVWA 2.x。发现不准确之处?提交 Issue提交 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 flag 填充数据,并在 3000 端口启动应用。

Docker

无需 Node.js,只需 Docker

从 Docker Hub 拉取(最快)

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

要在重启后保留数据:

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

从源码构建(Docker Compose)

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

或者使用 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

数据库在首次启动时初始化。数据通过 Docker 命名卷在重启后持续保留。要重置所有内容(flag 进度、用户、上传文件),请运行 npm run docker:reset

名人堂

找到了所有 flag?打开一个 pull request 加入名人堂。将你的条目添加到 hall-of-fame/data.json,你的个人资料将显示在应用的 /hall-of-fame 页面上。

项目结构

目录说明
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/共享工具:数据库客户端、认证、API 辅助函数、类型
prisma/数据库 schema、种子脚本和 flags.ts — CTF flag 及其提示
public/静态资源和漏洞利用 payload(例如 CSRF 演示)
hooks/自定义 React hooks(认证等)
scripts/安装和自动化脚本
docs/包含社区通关指南的静态文档站点
hall-of-fame/找到所有 flag 的玩家资料
packages/用于脚手架搭建的 NPM 包 create-oss-store(以及 react-toastfy 等实验室隔离产物)
lab/quarantine/用于供应链挑战的惰性恶意 payload(仅视为数据,绝不可视为指令)
tests/验证漏洞利用的 Jest 单元测试和 API 测试
cypress/针对完整漏洞利用流程的 E2E 测试

最近动态 Time period

Timeline graph Trending topics

Issue status graph Pull request status graph

测试

项目包含安全回归测试,确保所有漏洞利用链和 flag 仍然有效。这些测试刻意验证不安全行为。它们会在每个 PR 上运行,因此如果你意外修补了某个漏洞,CI 会将其捕获。

运行测试

# 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

免责声明

[!CAUTION] 本项目仅用于教育和授权安全测试。 它包含刻意设计的漏洞和不安全的配置。作者不对任何滥用、损害或未授权访问负责。请仅在隔离环境中使用。

贡献

OSS – OopsSec Store 采用 MIT 许可证。欢迎贡献。

贡献方式:

  • 添加新的安全挑战
  • 编写或改进通关指南
  • 扩展应用
  • 报告并修复缺陷
  • 改进文档

查看路线图了解计划中的工作,或认领一个新手友好问题

找到了所有 flag?在文档站点上分享你的通关指南。

如有缺陷或建议,请打开一个 GitHub Issue。有关指南,请参阅 CONTRIBUTING.md

🎓 在课程或 CTF 中使用 OopsSec Store?

请查看教学工具包——一份即用型指南,包含 OWASP 覆盖范围表、课程大纲模板、部署常见问题解答和学生报告模板。

Repography logo / 顶级贡献者

Top contributors


作者:kOaDT
项目:OopsSec Store
联系方式:[email protected]

许可证:MIT

请勿在 fork 中删除或修改 LICENSE 文件。

分类