CyberStrikeAI API接口全解析:开发自定义集成与扩展插件

CyberStrikeAI API接口全解析:开发自定义集成与扩展插件

【免费下载链接】CyberStrikeAICyberStrikeAI is an AI-native security testing platform built in Go. It integrates 100+ security tools, an intelligent orchestration engine, role-based testing with predefined security roles, a skills system with specialized testing skills, and comprehensive lifecycle management capabilities. 项目地址: https://gitcode.com/GitHub_Trending/cy/CyberStrikeAI

CyberStrikeAI是一款基于Go语言构建的AI原生安全测试平台,集成了100多种安全工具、智能编排引擎、基于角色的测试功能、专业测试技能系统以及全面的生命周期管理能力。通过其强大的API接口,开发者可以轻松实现自定义集成与扩展插件,进一步提升安全测试效率。

API接口概览:核心功能与架构

CyberStrikeAI提供了一套完整的RESTful API接口,覆盖了从认证授权到漏洞管理、从对话交互到批量任务处理等各个方面。这些接口不仅支持基本的CRUD操作,还提供了高级功能如流式响应、批量任务管理和外部MCP集成。

CyberStrikeAI API架构示意图,展示了主要API模块及其交互关系

认证与授权:安全访问的基石

所有API接口均通过JWT(JSON Web Token)进行身份验证,确保只有授权用户能够访问系统资源。认证相关的核心接口包括:

  • POST /api/auth/login:用户登录并获取认证Token
  • POST /api/auth/logout:用户登出,使当前Token失效
  • POST /api/auth/change-password:修改登录密码
  • GET /api/auth/validate:验证当前Token是否有效

登录接口的请求示例:

{ "password": "your_secure_password" } 

成功登录后,服务器将返回包含Token的响应:

{ "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", "expires_at": "2024-12-31T23:59:59Z", "session_duration_hr": 24 } 

核心API接口详解

对话管理:安全测试的核心交互

对话管理API允许创建、查询、更新和删除安全测试对话,是与AI交互的主要方式。核心接口包括:

  • POST /api/conversations:创建新对话
  • GET /api/conversations:列出所有对话
  • GET /api/conversations/{id}:获取对话详情
  • PUT /api/conversations/{id}:更新对话标题
  • DELETE /api/conversations/{id}:删除对话

创建对话的请求示例:

{ "title": "Web应用安全测试" } 

智能交互:与AI安全测试助手对话

CyberStrikeAI提供了两种与AI助手交互的方式:非流式和流式响应接口,满足不同场景的需求。

  • POST /api/agent-loop:发送消息并获取AI回复(非流式)
  • POST /api/agent-loop/stream:发送消息并获取流式AI回复

使用流式接口的请求示例:

{ "message": "扫描 http://example.com 的SQL注入漏洞", "conversationId": "550e8400-e29b-41d4-a716-446655440000", "role": "渗透测试" } 

流式响应将通过Server-Sent Events (SSE) 返回,事件类型包括:messageresponseprogressdone等,便于实时展示AI思考和测试过程。

批量任务处理:高效安全测试的关键

批量任务API允许创建和管理多个测试任务队列,大幅提升测试效率。核心接口包括:

  • POST /api/batch-tasks:创建批量任务队列
  • GET /api/batch-tasks:列出所有批量任务队列
  • GET /api/batch-tasks/{queueId}:获取队列详情
  • POST /api/batch-tasks/{queueId}/start:启动任务队列
  • POST /api/batch-tasks/{queueId}/pause:暂停任务队列

创建批量任务队列的请求示例:

{ "title": "多目标扫描任务", "tasks": [ "扫描 http://example.com 的SQL注入漏洞", "对 192.168.1.1 进行端口扫描", "检测 https://target.com 的XSS漏洞" ], "role": "渗透测试" } 

高级功能API:扩展与集成

漏洞管理:全面跟踪安全问题

漏洞管理API提供了漏洞的创建、查询、更新和删除功能,支持按严重程度、状态等多维度筛选。核心接口包括:

  • GET /api/vulnerabilities:列出漏洞
  • POST /api/vulnerabilities:创建漏洞
  • GET /api/vulnerabilities/{id}:获取漏洞详情
  • PUT /api/vulnerabilities/{id}:更新漏洞
  • DELETE /api/vulnerabilities/{id}:删除漏洞
  • GET /api/vulnerabilities/stats:获取漏洞统计

CyberStrikeAI漏洞管理界面,展示漏洞列表和详细信息

角色与技能管理:定制化安全测试能力

CyberStrikeAI支持基于角色的测试能力,通过API可以管理角色和技能,定制不同的测试策略。相关接口包括:

  • GET /api/roles:列出所有角色
  • POST /api/roles:创建新角色
  • GET /api/roles/{name}:获取角色详情
  • PUT /api/roles/{name}:更新角色
  • GET /api/skills:列出所有技能
  • POST /api/skills:创建新技能

角色配置示例:

{ "name": "Web应用扫描", "description": "专注于Web应用安全扫描的角色", "enabled": true, "systemPrompt": "你是一名专业的Web应用安全扫描专家...", "tools": ["nmap", "dirsearch", "sqlmap"], "skills": ["sql-injection-testing", "xss-testing"] } 

外部MCP集成:扩展平台能力

通过外部MCP(Model Context Protocol)集成API,可以扩展CyberStrikeAI的功能,连接外部工具和服务。核心接口包括:

  • GET /api/external-mcp:列出外部MCP配置
  • PUT /api/external-mcp/{name}:添加或更新外部MCP
  • POST /api/external-mcp/{name}/start:启动外部MCP
  • POST /api/external-mcp/{name}/stop:停止外部MCP

配置外部MCP的示例(stdio模式):

{ "config": { "enabled": true, "command": "node", "args": ["/path/to/mcp-server.js"], "timeout": 30, "description": "Node.js MCP服务器" } } 

知识库API:智能检索安全知识

CyberStrikeAI内置知识库功能,通过API可以管理知识项和执行智能检索,辅助安全测试决策。核心接口包括:

  • GET /api/knowledge/categories:获取知识分类
  • GET /api/knowledge/items:列出知识项
  • POST /api/knowledge/search:搜索知识库

搜索知识库的请求示例:

{ "query": "SQL注入漏洞的检测方法", "riskType": "SQL注入", "topK": 5, "threshold": 0.7 } 

实际应用示例:构建自定义安全测试工作流

下面是一个完整的安全测试工作流示例,展示如何使用多个API接口协同工作:

  1. 登录系统:调用POST /api/auth/login获取Token
  2. 创建对话:调用POST /api/conversations创建新对话
  3. 发送测试指令:调用POST /api/agent-loop/stream发送测试指令
  4. 获取测试结果:调用GET /api/conversations/{id}/results获取完整结果
  5. 创建漏洞记录:调用POST /api/vulnerabilities记录发现的漏洞

CyberStrikeAI安全测试工作流示意图,展示API接口在整个测试流程中的作用

插件开发指南:扩展平台功能

CyberStrikeAI的API设计为模块化和可扩展的,开发者可以通过以下方式扩展平台功能:

  1. 开发外部MCP插件:通过MCP协议开发自定义工具集成
  2. 创建自定义技能:添加新的安全测试技能
  3. 构建前端界面:利用API开发自定义用户界面
  4. 集成第三方服务:通过API将CyberStrikeAI与其他安全工具集成

插件开发的主要步骤包括:

  • 定义插件功能和接口
  • 实现MCP协议兼容的服务
  • 通过PUT /api/external-mcp/{name}注册插件
  • 测试插件功能和集成效果

总结:释放CyberStrikeAI的全部潜力

CyberStrikeAI的API接口为安全测试自动化和平台扩展提供了强大的支持。通过本文介绍的API接口,开发者可以构建自定义集成、开发扩展插件,将CyberStrikeAI无缝集成到现有安全工作流中。无论是批量测试、漏洞管理还是智能知识检索,API接口都提供了灵活而强大的工具,帮助安全团队更高效地发现和修复安全漏洞。

要开始使用CyberStrikeAI API,只需克隆仓库并按照官方文档进行配置:

git clone https://gitcode.com/GitHub_Trending/cy/CyberStrikeAI cd CyberStrikeAI # 按照文档配置和启动服务 

通过充分利用这些API接口,您可以将CyberStrikeAI的能力扩展到新的高度,构建更智能、更高效的安全测试解决方案。

【免费下载链接】CyberStrikeAICyberStrikeAI is an AI-native security testing platform built in Go. It integrates 100+ security tools, an intelligent orchestration engine, role-based testing with predefined security roles, a skills system with specialized testing skills, and comprehensive lifecycle management capabilities. 项目地址: https://gitcode.com/GitHub_Trending/cy/CyberStrikeAI

Could not load content