williamsouzadelima/suricatoos-platform
GitHub: williamsouzadelima/suricatoos-platform
一个由 AI Agent 编排的开源自动化渗透测试平台,整合了知识库、模板库和多格式报告功能,为红队和安全研究人员提供端到端的测试编排能力。
Stars: 0 | Forks: 0

# Suricatoos
**由 AI Agent 编排的自动化渗透测试。**
描述目标 —— Suricatoos 将端到端地规划并执行侦察、漏洞利用和报告。




## ✨ 为什么选择 Suricatoos
Suricatoos 是一个开源的自动化渗透测试平台 —— 一个多 Agent 系统
(研究员 · 开发者 · 执行者),负责协调 LLM,在**隔离的 Docker sandboxes** 中运行
工具,并在多次测试任务之间维护**持久化的向量记忆**。
在此基础之上,Suricatoos 增加了一层专为 **red team、渗透测试和
进攻性安全操作** 设计的产品层:
| | Suricatoos 增加的内容 |
|---|---|
| 🎨 **品牌标识与设计** | 独立的品牌(蓝色/珊瑚红的 suricata)以及内部界面的全面重新设计 —— 产品级的视觉、深色主题、专注于信息密度。 |
| 🌍 **三种语言** | 100% 翻译的界面,支持 **pt-BR(默认)**、**英语**和**西班牙语**,可实时切换。 |
| 🔑 **界面内配置 LLM 密钥** | 直接在 UI 中注册提供商和 API 密钥 —— **加密存储 (AES-256-GCM)**,无需仅仅依赖环境变量。 |
| 🧠 **进攻性知识库** | **70 份**技术文档(问答形式,pt-BR)附带 **100% 本地的语义搜索** (Ollama `bge-m3` + pgvector) —— 不会将数据发送给第三方。 |
| 🎯 **模板库** | **45 个现成的测试任务模板**(34 个由 Suricatoos 精心策划的进攻性 playbooks):AD、cloud、API、Web、内部网络、移动端、DevSecOps… |
| 📚 **参考资料** | **25 份文档**,分为 Cheatsheets、Checklists、方法论和参考文档。 |
| 📄 **多格式报告** | **技术**报告 (`.docx` / `.pptx` / `.pdf`) 和**执行**报告 (`.pptx` / `.pdf`),均可在浏览器中生成。 |
## 📸 界面截图
| 新建渗透测试流程 | 知识库 (70 份文档) |
|---|---|
|  |  |
| **任务模板** | **参考资料** |
|  |  |
| **LLM 提供商** | **界面内的 API 密钥** |
|  |  |
| **分析仪表板** | |
|  | |
## 🧠 包含的进攻性内容 (在 seed 中)
首次 `up` 时即预装完毕,开箱即用:
- **🎯 45 个测试任务模板** —— 涵盖 AD、内部/外部基础设施、
cloud (AWS)、API、WordPress、移动端、DevSecOps pipelines 等的现成测试范围。
- **📚 25 份参考资料:**
- `Cheatsheets/` (9) · `Checklists/` (6) · `Metodologias/` (7) · `Referencias/` (3)
- 包含 PTES、OWASP WSTG、OWASP API Top 10、MITRE ATT&CK red-team、Linux/Windows privesc、
K8s/cloud 探查、IAM/storage/secrets…
- **🧩 70 份知识文档** —— pt-BR 的技术解答(盲注 SQLi、NTLM relay、
Kerberos/AS-REP roasting、SUID/SGID 滥用、CORS、kubelet 暴露等),均已建立索引以支持
**本地语义搜索**。
### 100% 本地语义搜索
索引功能使用 **Ollama** 以及多语言模型 **`bge-m3`** (1024 维度) 和 **pgvector**。
没有任何知识库内容会离开您的基础设施去进行检索。
## 🔑 界面中的 LLM 提供商
直接在 **设置 → 提供商** 中配置任意数量的提供商:Anthropic、OpenAI、
Gemini、Bedrock、DeepSeek、GLM、Kimi、Qwen、Ollama 或**自定义** endpoint。密钥在进入
数据库之前会经过 **AES-256-GCM 加密** (前缀为 `enc:v1:`),如果该字段留空,
系统将使用相应的环境变量。
## 🌍 国际化
界面支持 **pt-BR (默认)**、**英语**和**西班牙语**。英文字符串作为键值;
缺失的翻译会自动回退到英语,不会导致界面崩溃。可通过用户菜单实时切换语言。
## 📄 示例报告
一份精心制作的、符合 PTES 标准的报告 —— 包含 **storytelling** (攻击叙事)、
带有快速修复方案和修复时间的 **行动计划**、**高级图表** (风险仪表盘、
5×5 矩阵、影响×努力象限、时间线) 以及 **co-branding whitelabel** (应用
Logo + 客户端 Logo)。这三种格式在视觉上相互**保持一致**:
| 格式 | 文件 |
|---|---|
| 📕 PDF | [suricatoos-relatorio-ptes.pdf](docs/sample-reports/suricatoos-relatorio-ptes.pdf) |
| 📘 Word | [suricatoos-relatorio-ptes.docx](docs/sample-reports/suricatoos-relatorio-ptes.docx) |
| 📙 PowerPoint | [suricatoos-relatorio-ptes.pptx](docs/sample-reports/suricatoos-relatorio-ptes.pptx) |
## 🏗️ 架构与技术栈
| 路径 | 作用 | 技术 |
|---|---|---|
| `backend/` | API REST + GraphQL 及 Agent 编排 | **Go**, gqlgen, sqlc, goose, GORM, **pgvector** |
| `frontend/` | Web 界面 | **React 19**, TypeScript, Vite, Tailwind v4, shadcn/ui, Apollo |
| `observability/` | 可选监控 | OpenTelemetry, Grafana, Langfuse |
- **品牌标识:** 蓝色 `#194FE3` · 珊瑚红 `#FF7678` · 白色 —— suricata 吉祥物构成字母 **"S"**。
- **工具执行:** 按流程隔离的 Docker sandboxes。
## 🚀 快速开始
全新的服务器,从零开始 —— 只需三个步骤:
```
git clone https://github.com/williamsouzadelima/suricatoos-platform.git
cd suricatoos-platform
./setup.sh # cria .env, gera COOKIE_SIGNING_SALT + senha de DB aleatórios, seta LISTEN_IP=0.0.0.0
docker compose up -d --build # builda do fonte (1ª vez) e sobe a stack
```
技术栈将在 **`https://localhost`** 上运行(端口 **443**,使用启动时生成的自签名 HTTPS 证书 →
浏览器首次访问会显示警告,继续即可)。初始登录账号为
**`admin@suricatoos.com` / `admin`** —— 请在首次登录时**修改密码**。
**可选内容 (知识库 + 资源):** 数据库 migrations 已经植入了管理员账号、**34 个**
进攻性 templates 和方法论。如果还需要加载 **70 份知识库文档**以及 **25 份**
参考资料,请在技术栈运行且配置好 embedder 的情况下执行:
```
./seed-content.sh # usa admin@suricatoos.com/admin por padrão; veja as flags no topo do script
```
**使用预构建镜像 (而非自行构建):** CI 发布完成后,在 `.env` 中指定
`SURICATOOS_IMAGE=ghcr.io/williamsouzadelima/suricatoos-platform:latest` (在 GitHub Packages 将该包设为公开,
或者使用具备 `read:packages` 权限的账号执行 `docker/podman login ghcr.io`)。
### 开发
```
# Backend (Go) — 在 backend/ 中 (Go 模块: suricatoos)
go build -o suricatoos ./cmd/suricatoos
go test ./...
# Frontend (React + Vite) — 在 frontend/ 中
pnpm install
pnpm run dev
```
## 🔐 安全与责任
- 提供商的密钥会**静态加密** (AES-256-GCM)。
- 工具运行在**隔离的 containers** 中,而不是宿主机上。
- 这是一个**进攻性安全**工具:请仅在**授权的测试范围**内使用。
您须对遵守相关法律法规及适用合同负责。
## 🙌 致谢与许可
Suricatoos 包含了第三方的开源组件。上游的版权信息以及
`LICENSE` (MIT)、`NOTICE` 和 `EULA.md` 文件均**原样保留**,并包含了各许可证所要求的
完整版权声明 —— 在重新分发前请务必查阅。
请参阅 [CLAUDE.md](CLAUDE.md) 获取开发指南和架构说明。
标签:AI智能体, AI风险缓解, Docker隔离, EVTX分析, GraphQL, XXE攻击, 向量检索, 密码管理, 插件系统, 日志审计, 用户代理, 请求拦截