CyberStrikeAI 深度分析报告
·
分析日期: 2026-07-15
分析范围: GitHub 代码库、文档、社区
版本: main 分支
一、项目概览
| 项目 | 说明 |
|---|---|
| 仓库 | Ed1s0nZ/CyberStrikeAI |
| 语言 | Go (1.25+) |
| Agent 引擎 | Eino(字节跳动开源) |
| 架构 | SPA 前端 + Go 后端,单二进制部署 |
| MCP 支持 | HTTP / stdio / SSE 全协议,支持外部 MCP 联邦 |
| 社区 | 22 Issues + 7 PRs,有 Discussions |
| 同类项目 | CyberStrike(Node.js CLI/TUI 型) |
项目定位
“The system of action for AI-native cybersecurity — where intent becomes governed execution, evidence becomes operational memory, and every operation improves the next.”
CyberStrikeAI 不是简单的 LLM wrapper,而是一个 AI-native 安全测试平台,整合了 Agent 编排、工具链、C2、WebShell、知识库、工作流引擎。
二、架构分析
2.1 目录结构
CyberStrikeAI/
├── cmd/ # 入口点
│ ├── server/ # 主服务器
│ ├── mcp-stdio/ # MCP stdio 模式
│ ├── test-config/ # 配置验证
│ ├── test-external-mcp/ # 外部 MCP 连接测试
│ └── test-sse-mcp-server/ # SSE MCP 测试
├── internal/ # 核心逻辑
│ ├── agent/ # Agent 引擎核心
│ ├── agents/ # Agent 定义
│ ├── app/ # 应用上下文
│ ├── attackchain/ # 攻击链建模
│ ├── audit/ # 审计日志
│ ├── authctx/ # 认证上下文
│ ├── c2/ # C2 框架(内置)
│ ├── config/ # 配置管理
│ ├── database/ # SQLite 持久层
│ ├── einomcp/ # Eino + MCP 集成
│ ├── einoobserve/ # Eino 观测
│ ├── handler/ # HTTP handler
│ ├── hitl/ # Human-in-the-loop
│ ├── knowledge/ # 知识库(RAG)
│ ├── logger/ # 日志系统
│ ├── mcp/ # MCP 协议实现
│ ├── monitor/ # 监控
│ ├── multiagent/ # 多 Agent 编排
│ ├── openai/ # OpenAI-compatible 接口
│ ├── project/ # 项目管理
│ ├── projectprompt/ # 项目提示管理
│ ├── reasoning/ # 推理引擎
│ ├── robot/ # 聊天机器人集成
│ ├── security/ # 安全执行器
│ ├── skillpackage/ # Skill 包管理
│ ├── termout/ # 终端输出
│ ├── vision/ # 视觉分析
│ └── workflow/ # 工作流引擎
├── web/ # 前端 SPA
├── tools/ # YAML 工具配方(100+)
├── roles/ # 角色配置(12+)
├── skills/ # Skill 定义
├── agents/ # 多 Agent 定义
├── docs/ # 文档
├── plugins/ # Burp 插件 + 浏览器扩展
└── images/ # 截图
2.2 核心设计亮点
1. Agent 分层架构
User Intent → Agent Core → Eino Orchestration → Tools/Workflow → Result
↕
Human-in-the-loop
- 支持单 agent / Plan-Execute / Supervisor 三种多 agent 模式
- Graph 工作流支持条件节点、审批节点、并行执行
2. Skill + Role 体系
- Skill 按标准布局,支持渐进式按需加载
- Role 提供聚焦的 prompt + 工具策略隔离
- 12+ 预定义安全测试角色
3. 攻击链建模 (Attack Chain)
- 跨会话关联事实
- 风险评分 + Graph 视图 + 分步回放
- 漏洞全生命周期管理
4. MCP 联邦
- 支持 HTTP / stdio / SSE 三种模式
- 外部 MCP server 动态发现
- 可与 Burp Suite、浏览器扩展联动
三、优缺点分析
✅ 优点
| 类别 | 说明 |
|---|---|
| 架构设计 | 真正的平台级架构,Agent/Workflow/Skills/Roles 分离管理,远强于"调 API"的 wrapper |
| Eino 选型 | 字节跳动 Eino 框架支持 Graph workflow、多 agent 模式,适合安全自动化场景 |
| 工具集成 | 100+ YAML 工具配方,覆盖完整杀伤链,role-scoped + lazy-loading |
| 内置 C2 + WebShell | 微型 C2 框架(listener/beacon/session/event)+ WebShell(虚拟终端/文件操作/AI assistant) |
| 国产化 | 中文 README 完善,支持飞书/钉钉/企业微信/QQ/Telegram/Slack/Discord 机器人 |
| 扩展性 | MCP 联邦、Burp 插件、浏览器扩展、插件 SDK |
| 文档质量 | 双语言文档完善,含 deployment/config/security/API/mcp-federation 等专题 |
| Human-in-the-loop | 审批模式 + 工具白名单 + 审计 Agent 审查 + 可追溯决策 |
❌ 缺点
| 类别 | 说明 |
|---|---|
| 测试覆盖 | 目录结构中几乎无 _test.go,核心安全逻辑缺乏验证 |
| 代码膨胀 | handler 等模块单文件过长,维护性差 |
| 错误处理 | 大量 return err 缺乏上下文 wrap,排查困难 |
| 依赖臃肿 | 420 行 go.sum,依赖树较大 |
| Go 版本要求 | 1.25+ 企业环境可能不支持 |
| 安全性 | 内置 C2 + WebShell 是高危能力,代码 bug = RCE 风险,未看到公开安全审计 |
| CI/CD 不透明 | Actions 存在但未见公开的测试结果/覆盖率报告 |
| 功能膨胀 | 从 C2 到聊天机器人到浏览器扩展什么都做,可能分散核心品质 |
vs CyberStrike (Node.js) 横向对比
| 对比维度 | CyberStrikeAI (Go) | CyberStrike (Node.js) |
|---|---|---|
| 定位 | 重型平台,团队协作 | 轻量 CLI/TUI,个人使用 |
| 上手 | 部署 server + 配置多个依赖 | npm i -g 一条命令 |
| Agent | 依赖 Role + Skill 组合 | 13+ 预定义安全 Agent |
| 远程执行 | WebShell / C2 | Bolt (Ed25519 鉴权) |
| 适用场景 | 攻防演练平台、团队协作 | 个人渗透测试、Bug Bounty |
| LLM 支持 | OpenAI-compatible | 15+ 提供商 + 离线 Ollama |
四、代码质量评估
| 评估维度 | 评分 (1-10) | 依据 |
|---|---|---|
| 架构合理性 | 8 | 模块划分清晰,internal/ 包结构合理 |
| 代码可读性 | 5 | 缺乏注释,部分函数过长 |
| 测试覆盖 | 2 | 几乎无可用测试 |
| 错误处理 | 4 | 缺乏错误上下文和分级 |
| 安全编码 | 6 | 有安全意识但代码需审计 |
| 文档质量 | 8 | README + docs/ 覆盖全面 |
| 依赖管理 | 5 | go.sum 较大,依赖树精简不足 |
| CI/CD | 4 | Actions 存在但未见公开结果 |
| 可扩展性 | 7 | MCP + 插件 SDK 设计好 |
| 整体 | 5.5 | 架构设计 > 代码实现 |
五、增强建议
P0 - 关键(安全相关)
-
添加核心测试
internal/agent/、internal/security/、internal/handler/的核心执行链路- 安全工具执行链的 mock 测试
- C2/WebShell 模块的隔离性测试
-
重构大文件
- handler 按模块拆分(task_handler.go, vuln_handler.go, agent_handler.go)
- 单一文件不宜超过 500 行
-
统一错误处理
- 引入错误码体系或
errors.Wrap链 - 所有安全执行器 + C2 代码添加 panic recovery
- 引入错误码体系或
-
增强 MCP 安全
- MCP stdio/SSE 需要鉴权
- 外部 MCP server 白名单机制
P1 - 重要
-
CI/CD 加固
- 添加 golangci-lint(gosec, errcheck, staticcheck)
- 安全扫描:gosec + trivy
- 依赖漏洞检查(Dependabot / Renovate)
- 提交前强制
go vet
-
数据库支持扩展
- 当前仅 SQLite,团队场景需要 PostgreSQL / MySQL
- 建议使用 GORM 或 bun 统一抽象
-
攻击链可视化
- 当前 graph view 可升级为 MITRE ATT&CK 映射可视化
- 导入导出攻击链为 STIX 格式
P2 - 锦上添花
-
插件系统标准化
- 插件 SDK 文档化
- 支持 Go plugin 动态加载
-
性能优化
- 大型工具输出结果的分页 + 压缩当前已有
- 可考虑引入结果缓存层
-
快速上手增强
- 提供 Docker Compose 一键部署(当前只有 run.sh)
- 提供预配置的 Docker 镜像
六、总结
CyberStrikeAI 的架构设计和功能规划在同类型工具中属于上游水平——它是真正在构建 AI 原生的安全测试平台,不是简单的 LLM wrapper。Eino 选型、MCP 联邦、攻击链建模、Role/Skill 体系,都是正确方向。
但代码质量拖了后腿:测试覆盖不足、部分模块代码膨胀、错误处理粗糙。对于一个涉及 C2、WebShell、远程命令执行的安全工具,这些问题是不可忽视的安全风险。
使用建议
| 场景 | 建议 |
|---|---|
| POC/Demo | 可以部署体验 |
| 生产环境攻防 | ⚠️ 不推荐,需先做一轮代码审计 + 补测试 |
| 参考架构 | ✅ 架构设计值得学习 |
| Fork 二次开发 | ✅ 推荐,基础架构好,补测试和安全加固后可用 |
| 个人渗透测试 | 考虑更轻量的 CyberStrike (Node.js) |
更多推荐



所有评论(0)