arkhala/ttxforge

GitHub: arkhala/ttxforge

TTXForge 是一个基于 Next.js 和 LLM 构建的网络安全桌面演练平台,帮助安全团队快速启动互动式 CSIRT 演练并自动生成专业的事件响应报告。

Stars: 0 | Forks: 0

# TTXForge **AI 驱动的网络安全桌面演练平台** [![Next.js](https://img.shields.io/badge/Next.js-15-black?logo=next.js)](https://nextjs.org/) [![TypeScript](https://img.shields.io/badge/TypeScript-5.0-blue?logo=typescript)](https://www.typescriptlang.org/) [![Tailwind CSS](https://img.shields.io/badge/Tailwind_CSS-3.4-38B2AC?logo=tailwind-css)](https://tailwindcss.com/) [![shadcn/ui](https://img.shields.io/badge/shadcn%2Fui-latest-black)](https://ui.shadcn.com/) ## 🎯 使命 TTXForge 赋能安全团队开展真实的、自选冒险式的桌面演练(TTX),严格遵循现实世界的 CSIRT 流程。每个决策都会被记录,后果具有教育意义,并且每次会议结束时都会自动生成生产级别的行动后报告(AAR)、高管摘要和经验教训。 **成功标准**:团队可以在不到 5 分钟的设置内,启动一场为期 60 分钟的勒索软件 TTX,由 4-8 名参与者运行,并获得一份看起来像是由资深事件响应专家撰写的专业 AAR。 ## ✨ 核心功能 (MVP) - **精选与自定义场景**:勒索软件、APT、内部威胁、BEC、供应链、数据泄露 + LLM 生成的自定义演练 - **动态 CSIRT 站会**:角色分配(事件指挥官、首席分析师、通讯主管、法务、高管联络人等) - **互动运行器**:叙事注入 + 3-5 个高质量的 LLM 生成选项 + 自由文本自定义操作 - **实时状态机**:跟踪阶段、已知事实、攻击者进度、CSIRT 准备情况 - **完整审计跟踪**:每个操作、笔记、通信和角色更改都会带有时间戳和归属记录 - **自动化输出**:记录日志(PDF/JSON)、AAR、高管摘要、角色分配日志、经验教训 - **美观的暗色赛博 UI**:响应式、键盘优先、分屏布局(叙事 | 决策 | 实时日志 | 参与者) ## 🛠 技术栈 **前端** - Next.js 15(App Router, Server Components, Streaming) - TypeScript(严格模式) - Tailwind CSS + shadcn/ui + Radix UI + Lucide icons + Framer Motion - TanStack Query + Zustand 进行状态管理 **后端与数据** - Next.js API Routes(初期) - Prisma + PostgreSQL(Neon)— 从内存 + localStorage 迁移 - Auth.js v5(凭据 / 魔法链接 MVP) **LLM 层** - 抽象客户端:`GrokClient`(以 xAI 为主)+ `OllamaClient`(本地后备) - `/prompts/` 中的版本化提示词 **报告** - 服务端 PDF(Puppeteer 或 pdfmake) - DOCX 导出 **开发者体验** - ESLint + Prettier + Husky + Conventional Commits - 优秀的文档 + C4 架构图 ## 🚀 快速开始(本地开发) ``` git clone https://github.com/arkhala/ttxforge.git cd ttxforge npm install npm run dev ``` 打开 [http://localhost:3000](http://localhost:3000) ### 环境变量 ``` # .env.local XAI_API_KEY=your_xai_key_here OLLAMA_BASE_URL=http://localhost:11434 DATABASE_URL=postgresql://... NEXTAUTH_SECRET=... NEXTAUTH_URL=http://localhost:3000 ``` ## 📁 项目结构 ``` /app layout.tsx # Root layout + providers page.tsx # Landing /exercises # Library /new-exercise # Wizard /runner/[id] # Interactive runner /components /ui # shadcn primitives (Button, Card, etc.) /exercise # Domain components (future) /lib /llm # GrokClient + OllamaClient (full abstraction) /state # Zustand stores (Phase 1) /utils /prompts # Versioned LLM prompts (.md + .ts) /docs # PRD, ARCHITECTURE, ROADMAP, DECISIONS /public # Static assets, favicon ``` ## 🗺 路线图亮点 - **v0.1(当前)**:核心脚手架 + 着陆页 + 资源库 + 向导 + 占位符运行器 + LLM 抽象 ✅ - **v0.2**:带有状态机的完整互动运行器 + 基础日志记录 + 真实 LLM 调用 - **v0.3**:持久化、身份验证、多参与者模式、PDF 报告 - **v0.4**:高级报告、自定义场景生成器 - **v1.0**:具备 SSO、审计合规、团队工作区等功能的生产就绪版 ## 🤝 贡献 我们遵循 Conventional Commits。请提交 issue 或 PR。安全第一的思维是不可妥协的。 **由防守者怀着 ❤️ 为防守者打造。** *TTXForge — 模拟与现实交汇之处。*
标签:AI, AI风险缓解, Web平台, 库, 应急响应, 桌面演练, 测试用例, 网络安全, 自动化代码审查, 自动化攻击, 隐私保护