bb1nfosec/spectra-ai
GitHub: bb1nfosec/spectra-ai
一款企业级 AI 原生攻击面监控平台,用于发现、监控和保护暴露的 AI 基础设施并满足合规要求。
Stars: 0 | Forks: 1

# SpectraAI
**AI 原生攻击面监控**
用于发现、监控和保护暴露的 AI 基础设施的企业级平台 — MCP 服务器、泄露的凭证、向量数据库、Agentic 工作流以及影子 AI 工具。
[](https://github.com/bb1nfosec/spectra-ai/actions/workflows/ci.yml)
[](LICENSE)
[](https://nextjs.org/)
[](https://www.typescriptlang.org/)
[](https://react.dev/)
[](https://tailwindcss.com/)
[](https://www.prisma.io/)
[](https://ui.shadcn.com/)
[](docker-compose.yml)
[演示](#live-demo) · [快速开始](#-quick-start) · [文档](#modules) · [贡献](CONTRIBUTING.md) · [更新日志](CHANGELOG.md)
## 核心功能
- **14 个集成模块** — 仪表盘、资产清单、外部扫描器、凭证监控、威胁检测器、Agent 监控、模型安全、合规中心、影子 AI、SIEM、修复、威胁订阅源、红队、设置
- **基于插件的扫描器** — GitHub(泄露的密钥)、Shodan(暴露的服务)、HuggingFace(模型风险)
- **实时监控** — WebSocket 事件流、实时扫描进度、即时告警
- **多租户** — 组织隔离、基于角色的访问控制 (Admin/Analyst/Viewer)、支持 SSO/SAML
- **合规引擎** — NIST AI RMF、ISO 42001、EU AI Act、SOC 2,支持 PDF 报告生成
- **MITRE ATLAS 映射** — 映射到 MITRE ATLAS 框架的威胁情报
- **企业级认证** — NextAuth.js JWT、Azure AD、Google Workspace、Okta、SAML 2.0
- **Docker 就绪** — 使用 Docker Compose + Caddy HTTPS 实现一键部署
## 架构
SpectraAI 采用模块化、微服务就绪的架构构建,具备基于插件的扫描器、租户隔离和实时事件流功能。
```
┌──────────────────────────────────────────────────────────┐
│ SpectraAI Platform │
├──────────┬──────────┬──────────┬──────────┬───────────────┤
│ Discovery│ Threat │ Risk & │Integration│ Intelligence │
│ │ Detection│Compliance│& Response │ │
├──────────┼──────────┼──────────┼──────────┼───────────────┤
│ AI Asset │ LLM │Compliance│ SIEM │ Threat Feed │
│Inventory │ Threat │ Hub │Connectors│ │
│ External │ Detector │ Shadow AI│ Remediation│ Red Team │
│ Scanner │ Agent │ │ Engine │ Engine │
│ │ Monitor │ │ │ │
└──────────┴──────────┴──────────┴──────────┴───────────────┘
│ │ │
┌────▼────┐ ┌──────▼──────┐ ┌──────▼──────┐
│ Scanner │ │ WebSocket │ │ Job Queue │
│ Plugins │ │ Events │ │ (BullMQ) │
│GitHub │ │ Service │ │ │
│Shodan │ │ (Port 3004)│ │ Redis │
│HuggingFace│ └─────────────┘ │ Persistent │
└─────────┘ └─────────────┘
```
## 模块
| 模块 | 描述 |
|--------|-------------|
| **高管仪表盘** | 实时 KPI、风险评分、合规概览 |
| **AI 资产清单** | 发现并编录所有 AI 基础设施 |
| **外部扫描器** | 基于 Shodan 的暴露服务检测 |
| **凭证监控** | GitHub/DockerHub 泄露密钥检测 |
| **LLM 威胁检测器** | Prompt 注入、越狱、数据窃取 |
| **Agent 工作流** | 监控 Agentic AI 并配备紧急终止开关 |
| **模型安全** | SBOM、Pickle 漏洞利用、供应链扫描 |
| **合规中心** | NIST AI RMF、ISO 42001、EU AI Act、SOC 2 |
| **影子 AI 检测** | 检测未经授权的 AI 工具使用情况 |
| **SIEM 连接器** | Splunk、CrowdStrike、Palo Alto 集成 |
| **修复引擎** | 基于自动化 Playbook 的修复 |
| **威胁订阅源** | 映射到 MITRE ATLAS 的威胁情报 |
| **红队引擎** | 模拟 AI 攻击场景 |
| **设置** | API 密钥管理、组织管理、SSO 配置 |
## 技术栈
| 层级 | 技术 |
|-------|-----------|
| **前端** | Next.js 16 (App Router)、React 19、TypeScript、Tailwind CSS 4、shadcn/ui |
| **后端** | Next.js API Routes、Prisma ORM、SQLite (生产环境使用 PostgreSQL) |
| **实时** | Socket.IO WebSocket 事件服务器 |
| **认证** | NextAuth.js JWT + SSO/SAML (Azure AD、Google、Okta) |
| **队列** | 内存作业队列 (兼容 BullMQ,生产环境由 Redis 支持持久化) |
| **状态** | Zustand 存储 |
| **扫描器** | 插件架构 — GitHub、Shodan、HuggingFace |
| **部署** | Docker、Docker Compose、Caddy 反向代理、兼容 Vercel |
## 在线演示
```
docker compose up -d
```
然后打开 **http://localhost:3000** 并使用以下凭据登录:
- **Admin**: `admin@spectra.ai` / `admin123`
- **Analyst**: `analyst@spectra.ai` / `analyst123`
- **Viewer**: `viewer@spectra.ai` / `viewer123`
## 快速开始
### 前置条件
- Node.js 20+ 或 Bun
### 安装与运行
```
git clone https://github.com/bb1nfosec/spectra-ai.git
cd spectra-ai
bun install
cp .env.example .env
npx prisma db push
npx prisma generate
bun dev
```
打开 [http://localhost:3000](http://localhost:3000) 即可开始使用。
### Docker 部署
```
docker compose up -d
docker compose logs -f app # View logs
docker compose down # Stop
```
| 服务 | URL |
|---------|-----|
| **应用** | http://localhost:3000 |
| **WebSocket 事件** | ws://localhost:3004 |
| **Redis** | localhost:6379 |
| **Caddy (HTTPS)** | http://localhost / https://localhost |
## 扫描器集成
SpectraAI 使用基于插件的扫描器架构。可通过“设置 > 集成”界面或环境变量配置 API 密钥。
### GitHub 扫描器
扫描仓库以查找泄露的 AI API 密钥 (OpenAI、Anthropic、HuggingFace、Cohere 等)、密钥扫描告警以及暴露的凭证。
### Shodan 扫描器
发现暴露在互联网上的 AI/ML 服务,包括向量数据库、模型 API (Ollama、LiteLLM)、Jupyter 笔记本和 MCP 服务器。
### HuggingFace 扫描器
枚举模型、空间和数据集以排查安全风险,包括 Pickle 文件漏洞利用、可疑的 Python 导入以及敏感的公开数据集。
## 安全架构
- **绝不存储原始 API 密钥** — 仅使用 SHA-256 指纹哈希
- **多租户隔离** — 所有数据均采用行级 org_id 作用域隔离
- **不可变的审计日志** — 完整的操作追踪记录
- **JWT 认证** — 24 小时会话令牌与基于角色的访问控制
- **安全响应头** — X-Frame-Options、X-Content-Type-Options、HSTS
- **速率限制** — 每个 IP 每分钟 120 次请求
- **支持 SSO/SAML** — Azure AD、Google Workspace、Okta、SAML 2.0
- **沙盒化扫描器** — 插件隔离并具备重试逻辑
## 项目结构
```
spectra-ai/
├── prisma/
│ └── schema.prisma # 20+ data models
├── src/
│ ├── app/
│ │ ├── api/ # 25+ API routes
│ │ │ ├── auth/ # NextAuth + SSO
│ │ │ ├── scanner/jobs/ # Job queue endpoints
│ │ │ ├── integrations/ # API key management
│ │ │ ├── organizations/ # Multi-tenant
│ │ │ └── reports/ # PDF/HTML compliance reports
│ │ ├── layout.tsx
│ │ └── page.tsx
│ ├── components/
│ │ ├── auth/ # Login, session provider
│ │ ├── dashboard/ # Executive overview
│ │ ├── scanner/ # Attack surface scanner
│ │ ├── credentials/ # Credential monitor
│ │ ├── threats/ # LLM threat detector
│ │ ├── workflows/ # Agent monitor
│ │ ├── models/ # Model security
│ │ ├── compliance/ # Compliance hub
│ │ ├── shadow-ai/ # Shadow AI detection
│ │ ├── siem/ # SIEM connectors
│ │ ├── remediation/ # Remediation engine
│ │ ├── intelligence/ # Threat feed
│ │ ├── redteam/ # Red team engine
│ │ ├── settings/ # Integrations, organization
│ │ ├── layout/ # Sidebar, header, org switcher
│ │ └── ui/ # 50+ shadcn/ui components
│ ├── hooks/ # useAuth, useScanEvents, useMobile
│ ├── lib/
│ │ ├── auth.ts # NextAuth configuration
│ │ ├── db.ts # Prisma client
│ │ ├── multi-tenant.ts # Org guards, RLS
│ │ ├── scanners/ # GitHub, Shodan, HuggingFace plugins
│ │ ├── queue/ # Job queue (BullMQ-compatible)
│ │ ├── integrations.ts # API key management
│ │ ├── sso-config.ts # SSO provider config
│ │ ├── pdf-generator.ts # Compliance report generator
│ │ └── report-templates.ts
│ ├── middleware.ts # Security headers, rate limiting
│ └── store/ # Zustand (navigation, auth, org)
├── mini-services/
│ └── scan-events/ # WebSocket events server
├── .github/
│ ├── workflows/ # CI + Release actions
│ ├── ISSUE_TEMPLATE/ # Bug, feature, security templates
│ └── PULL_REQUEST_TEMPLATE.md
├── Dockerfile
├── docker-compose.yml
├── Caddyfile
└── .env.example
```
## API 端点
| 方法 | 端点 | 描述 |
|--------|----------|-------------|
| GET | `/api/dashboard` | 高管仪表盘 KPI |
| GET/POST | `/api/scanner/jobs` | 列出/创建扫描作业 |
| GET/DELETE/POST | `/api/scanner/jobs/[id]` | 作业详情、取消、重试 |
| GET/POST/DELETE | `/api/integrations` | 管理 API 密钥集成 |
| POST | `/api/integrations/test` | 测试集成连接 |
| GET/POST | `/api/organizations` | 列出/创建组织 |
| GET/POST/DELETE/PATCH | `/api/organizations/[id]/members` | 成员管理 |
| GET/PATCH | `/api/organizations/[id]/settings` | 组织设置 |
| POST | `/api/reports/compliance` | 生成合规报告 |
| GET | `/api/reports/download/[id]` | 下载报告 |
| GET | `/api/auth/sso` | 列出已启用的 SSO 提供商 |
| GET | `/api/assets` | AI 资产清单 |
| GET | `/api/threats` | LLM 威胁事件 |
| GET | `/api/compliance` | 合规框架数据 |
| GET | `/api/intelligence` | 威胁情报订阅源 |
## 生产环境检查清单
- [ ] 将 `NEXTAUTH_SECRET` 更改为强随机值
- [ ] 配置真实的扫描器 API 密钥
- [ ] 从 SQLite 切换到 PostgreSQL
- [ ] 启用 SSO 提供商 (Azure AD / Google / Okta)
- [ ] 配置 Redis 以实现持久化作业队列
- [ ] 通过 Caddy 或您的反向代理设置 HTTPS
- [ ] 启用审计日志轮转
- [ ] 配置数据库备份策略
## 贡献
欢迎贡献代码!请查阅 [CONTRIBUTING.md](CONTRIBUTING.md) 了解指南。
## 许可证
[MIT](LICENSE) © 2026 SpectraAI
标签:AI基础设施安全, AI安全, AMSI绕过, ASM, Chat Copilot, CISA项目, DLP, Docker, EASM, GitHub泄露扫描, HuggingFace模型风险, Linux系统监控, MCP服务器监控, Prisma, RBAC权限控制, React, SAML SSO, shadcn/ui, Shodan集成, SIEM集成, Syscalls, Tailwind CSS, TypeScript, WebSocket, 企业级安全平台, 依赖分析, 修复建议, 凭据监控, 凭证泄露监控, 合规管理, 向量数据库安全, 外部威胁扫描, 外部攻击面管理, 威胁情报, 威胁检测, 安全合规, 安全插件, 安全防御评估, 实时处理, 密码管理, 开发者工具, 影子AI, 搜索引擎查询, 数据泄露, 数据泄露防护, 智能体工作流安全, 模型安全, 网络代理, 网络安全, 网络安全监控, 网络探测, 自动化攻击, 请求拦截, 资产盘点, 隐私保护, 驱动开发