rahul1713/vulnshield-platform
GitHub: rahul1713/vulnshield-platform
企业级 AI 驱动的漏洞评估、红队模拟与安全代码审查平台,以云原生微服务架构提供从资产发现到合规报告的端到端安全闭环。
Stars: 0 | Forks: 0
# VulnShield 平台
**企业级漏洞管理** — 资产发现、扫描、AI 辅助分析、风险优先级排序、合规性和报告。作为云原生微服务构建,支持 Docker Compose 和 Kubernetes。
[](https://github.com/rahul1713/vulnshield-platform/actions/workflows/ci.yml)
## 3 步部署(沙盒环境 — 推荐)
经过工业强化的部署,**无硬编码密码**,**无演示数据泄露**,且基础架构端口保持内部访问。

```
git clone https://github.com/rahul1713/vulnshield-platform.git
cd vulnshield-platform
# 步骤 1 — 生成 secrets(admin password 仅显示一次 — 请妥善保存)
make sandbox-env
# 步骤 2 — 启动平台
make sandbox-up
# 步骤 3 — 打开 dashboard
open http://localhost:3000
```
| 部署后 | URL |
|--------------|-----|
| **Dashboard** | http://localhost:3000 |
| **API** | http://localhost:8080/api/v1 |
| **健康检查** | http://localhost:8080/health |
使用 `make sandbox-env` 输出的管理员凭据登录。完整安全清单 → [docs/SANDBOX_DEPLOYMENT.md](docs/SANDBOX_DEPLOYMENT.md)
### 其他部署选项
| 方法 | 适用场景 | 指南 |
|--------|-------------|-------|
| **沙盒 (Docker)** | 预发布、POC、隔离实验室 | [SANDBOX_DEPLOYMENT.md](docs/SANDBOX_DEPLOYMENT.md) |
| **开发 (Docker)** | 本地工程 | [DEPLOYMENT.md](docs/DEPLOYMENT.md) |
| **Kubernetes** | 生产 / 企业级规模 | [INSTALLATION.md](docs/INSTALLATION.md) + `k8s/` |
**要求:** Docker 24+、Compose v2、16 GB RAM、50 GB 磁盘。
## VulnShield 的功能

VulnShield 在您的基础架构中运行连续的 **发现 → 扫描 → 关联 → 优先级排序 → 修复** 循环。

## 平台功能与操作
下面的每个模块都对应 Dashboard 中的一个**侧边栏部分**以及后端的一个**微服务**。
### 资产管理
| 操作 | 功能 |
|-----------|--------------|
| **发现资产** | Linux/Windows agent 收集 OS、软件包、端口、用户、服务和补丁信息 |
| **查看清单** | 按关键程度、OS、标签搜索和过滤服务器、工作站及云资产 |
| **跟踪变更** | 资产元数据、软件清单及开放端口随时间变化的历史记录 |
### 漏洞扫描
| 操作 | 功能 |
|-----------|--------------|
| **新建扫描** | 从 Scans 页面启动基于 agent、SSH/WinRM、网络、CIS 或 Web 应用扫描 |
| **启动 / 取消扫描** | 控制运行中的任务;实时更新状态(排队 → 运行中 → 已完成) |
| **查看发现结果** | CVE 与 CVSS、EPSS 和 CISA KEV 数据的关联 |
| **更新状态** | 漏洞分类:开放 → 处理中 → 已缓解 → 已解决 / 误报 |
### Web 应用安全 (DAST)
| 操作 | 功能 |
|-----------|--------------|
| **启动 Web 扫描** | 对目标 URL 进行爬取并测试 OWASP Top 10 问题 |
| **审查发现结果** | 带有严重程度的 SQLi、XSS、缺失标头及其他 DAST 结果 |
### AI 代码审查
| 操作 | 功能 |
|-----------|--------------|
| **新建审查** | 提交 repository URL 进行由 LLM 驱动的静态安全分析 |
| **查看发现结果** | 映射到 OWASP/CWE 的问题及修复指导 |
| **模型** | 仅限本地 **Ollama + Qwen 3.6** — 源代码绝不发送至云端 LLM |
### AI 红队
| 操作 | 功能 |
|-----------|--------------|
| **新建活动** | 针对定义的范围启动自动化对手模拟 |
| **攻击路径** | 映射到 MITRE ATT&CK 的发现结果及高管摘要 |
| **模型** | 仅限本地 **Ollama + Qwen 3.6** |
### 补丁情报
| 操作 | 功能 |
|-----------|--------------|
| **CVE 查找** | 将漏洞映射至可用的厂商补丁 |
| **EOL 跟踪** | 受影响软件的生命周期终止 (EOL) 状态 |
| **公告推送** | 厂商安全公告参考 |
### 风险引擎
| 操作 | 功能 |
|-----------|--------------|
| **风险评分** | 综合评分:CVSS + EPSS + KEV + 资产关键程度 + 暴露面 |
| **热力图** | 跨资产和类别的可视化风险分布 |
| **优先级排序** | 根据业务上下文对优先修复的内容进行排序 |
### 合规性
| 操作 | 功能 |
|-----------|--------------|
| **运行评估** | 根据 CIS Controls、NIST CSF、NIST 800-53、ISO 27001、PCI-DSS 进行评分 |
| **差距分析** | 通过与未通过的控制项及修复映射 |
| **趋势跟踪** | 合规性评分随时间的变化 |
### 报告
| 操作 | 功能 |
|-----------|--------------|
| **高管报告** | 面向领导层的高层级风险态势 (PDF) |
| **技术报告** | 面向工程团队的详细发现结果 |
| **合规报告** | 特定框架的凭证 (PDF, Excel, CSV) |
| **导出** | 定时或按需生成报告 |
### 通知
| 操作 | 功能 |
|-----------|--------------|
| **邮件告警** | 针对严重发现结果和扫描完成的 SMTP 通知 |
| **Slack / Teams** | 用于 SOC 频道的 Webhook 集成 |
| **自定义 Webhook** | 将事件推送到 SIEM 或工单系统 |
### 管理
| 操作 | 功能 |
|-----------|--------------|
| **用户与 RBAC** | 角色:管理员、安全管理员、SOC 分析师、开发者、审计员 |
| **审计日志** | 登录、扫描操作和配置变更的不可变记录 |
| **Agent token** | 使用具有作用域限制的 API token 注册 Linux/Windows agent |
| **LDAP / MFA** | 企业 SSO 和 TOTP 多因素身份验证 |
## 架构

```
Browser / Agents → API Gateway (:8080) → 12 Microservices → PostgreSQL / Redis / RabbitMQ / MinIO
```
| 服务 | 端口 (内部) | 用途 |
|---------|-----------------|---------|
| api-gateway | 8080 | JWT 验证、路由、TLS 终结点 |
| auth-service | 8001 | 登录、RBAC、审计、LDAP、MFA |
| asset-service | 8002 | 资产清单与发现 |
| scanner-service | 8003 | 漏洞扫描、agent、CVE 关联 |
| web-scanner-service | 8004 | DAST Web 应用扫描 |
| ai-code-review | 8005 | LLM 代码安全分析 |
| ai-redteam | 8006 | 对手模拟 |
| patch-intelligence | 8007 | 补丁和 EOL 映射 |
| risk-engine | 8008 | 综合风险评分 |
| reporting-service | 8009 | PDF / Excel / CSV 报告 |
| compliance-service | 8010 | 框架评估 |
| notification-service | 8011 | Email、Slack、Teams 告警 |
详细架构图 → [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md)
## 端点 Agent
### Linux agent
收集 OS 信息、软件包 (dpkg/rpm/apk)、进程、端口、用户、cron、systemd 服务、内核模块和安全补丁。支持 HTTPS 和 mTLS。
```
docker build -t vulnshield-linux-agent agents/linux/
docker run -d \
-e VULNSHIELD_API_URL=http://host.docker.internal:8080/api/v1 \
-e VULNSHIELD_API_TOKEN=your-agent-token \
vulnshield-linux-agent
```
### Windows agent
PowerShell/Python 混合架构。收集 OS、注册表软件、服务、计划任务、端口、修补程序和本地用户信息。
```
.\agents\windows\install.ps1 -ApiUrl "https://your-server:8080/api/v1" -ApiToken "your-token"
```
## 文档
| 文档 | 目标读者 | 内容 |
|----------|----------|----------|
| [CAPABILITIES.md](docs/CAPABILITIES.md) | 所有人 | 包含操作的完整功能参考 |
| [SANDBOX_DEPLOYMENT.md](docs/SANDBOX_DEPLOYMENT.md) | DevOps / 安全 | 强化版沙盒部署 + 清单 |
| [DEPLOYMENT.md](docs/DEPLOYMENT.md) | DevOps | Docker Compose 部署 |
| [INSTALLATION.md](docs/INSTALLATION.md) | DevOps | 逐步安装 + agent + LDAP |
| [ARCHITECTURE.md](docs/ARCHITECTURE.md) | 架构师 | 系统设计、数据流、Mermaid 图表 |
| [USER_MANUAL.md](docs/USER_MANUAL.md) | SOC / 分析师 | Dashboard 操作演示 |
| [ADMIN_MANUAL.md](docs/ADMIN_MANUAL.md) | 管理员 | 用户、agent、备份、安全加固 |
| [DEVELOPER.md](docs/DEVELOPER.md) | 工程师 | 扩展服务和 agent |
| [ER_DIAGRAM.md](docs/ER_DIAGRAM.md) | DBA | 数据库实体关系 |
## 开发
```
make build # Build Docker images
make up # Start development stack
make logs # Tail service logs
make test # Run tests
make lint # Run linters
make sandbox-up # Start hardened sandbox
make clean # Remove containers and volumes
```
### 本地纯 UI 模式(无后端)
```
# frontend/.env.local
NEXT_PUBLIC_ENABLE_DEMO_MODE=true
NEXT_PUBLIC_DEMO_USERNAME=admin
NEXT_PUBLIC_DEMO_PASSWORD=your-local-password
```
切勿在沙盒或生产构建中启用演示模式。
## 技术栈
| 层级 | 技术 |
|-------|------------|
| 前端 | Next.js 14, React, TypeScript, MUI |
| 后端 | Python 3.12, FastAPI, SQLAlchemy |
| 数据库 | PostgreSQL 16 |
| 缓存 / 队列 | Redis 7, RabbitMQ 3.13 |
| 对象存储 | MinIO (兼容 S3) |
| 安全 AI | Ollama + Qwen 3.6 (仅限本地) |
| Agent | Python, PowerShell |
| CI/CD | GitHub Actions |
| 编排 | Docker Compose, Kubernetes |
## 安全亮点
- 无硬编码凭据 — 管理员通过 `INIT_ADMIN_PASSWORD` 进行引导
- 在沙盒/生产环境中进行启动密码验证
- CORS 锁定至显式指定的源
- 沙盒环境中强制要求 Redis 身份验证
- 生产环境中禁用 OpenAPI 文档
- 所有 API 路由(包括数据接入)均强制使用 JWT
- 在受保护环境中的 agent 采用 mTLS 失败即关闭模式
## 许可证
专有。保留所有权利。
标签:AI风险缓解, Docker, GPT, XXE攻击, 人工智能, 反取证, 子域名突变, 安全评估, 安全防御评估, 密码管理, 插件系统, 漏洞管理, 版权保护, 用户模式Hook绕过