使用说明
项目简介
Kali安全工具MCP服务器 (awsome_kali_MCPServers) 是一个基于 Model Context Protocol (MCP) 构建的应用后端,专门为Kali Linux环境下的安全工具提供统一的接口。该服务器旨在赋能AI Agent,使其能够便捷地调用Kali Linux强大的安全工具,执行如网络扫描、流量分析、二进制文件分析等任务,从而在安全分析、渗透测试等领域实现更高效的自动化流程。
主要功能点
- 网络分析能力: 集成 nmap 和 tshark 工具,支持执行基础扫描、SYN扫描、快速扫描、漏洞扫描等多种网络扫描方式,以及实时网络流量捕获、协议分析、会话统计和专家信息提取等高级网络分析功能。
- 二进制文件分析能力: 集成 objdump 和 nm 工具,支持二进制文件的反汇编、符号表查看、文件头信息提取、段头信息查看等功能,帮助AI Agent理解和分析二进制文件的结构和内容。
- 字符串分析能力: 集成 strings 工具,支持从文件中提取可打印字符串,并可根据最小长度、偏移量和编码方式进行灵活配置,辅助AI Agent进行文本信息挖掘和数据提取。
- 路由追踪能力: 集成 traceroute 工具,支持执行路由追踪,帮助AI Agent了解网络拓扑结构和路径信息。
- 安全沙箱执行: 所有Kali Linux命令都在Docker容器沙箱中执行,保证宿主系统的安全性和隔离性。
安装步骤
- 下载服务器文件: 访问 Releases page 下载最新版本的服务器文件压缩包。
- 解压文件: 将下载的压缩包解压到您的Kali Linux系统中的任意目录。
- 安装依赖: 确保您的Kali Linux系统中已安装 Docker 和 Python 的 docker 库 ('pip install docker')。
- 构建或拉取Kali镜像: 确保Docker中存在 'kalilinux/kali-rolling' 镜像。您可以手动拉取该镜像 'docker pull kalilinux/kali-rolling',或者首次运行服务器时,如果本地没有该镜像,会自动尝试拉取。
- 运行服务器: 在解压后的目录中,打开终端,执行以下命令启动服务器:
您也可以指定要使用的Kali Linux镜像,例如:python app.py
如果一切正常,终端会显示 "Starting server is running" 的信息,表明服务器已成功启动。python app.py --kali-image your_kali_image_name
服务器配置
MCP客户端需要配置以下JSON格式信息以连接到 Kali安全工具MCP服务器:
{ "serverName": "kali-tools", "command": "python", "args": ["app.py"], "transport": "stdio" }
参数注释:
- 'serverName': 服务器名称,这里设置为 "kali-tools" (仓库代码中定义)。
- 'command': 启动服务器的命令,这里使用 'python' 解释器。
- 'args': 启动命令的参数列表,这里使用 'app.py' 作为主程序入口。如果您需要指定Kali镜像,可以添加 '--kali-image your_kali_image_name' 参数。
- 'transport': MCP客户端与服务器通信的传输协议,这里使用 'stdio' (标准输入输出)。
基本使用方法
- 启动MCP客户端: 配置并启动您的MCP客户端应用程序,确保客户端能够通过 'stdio' 协议与Kali安全工具MCP服务器建立连接。
- 发现工具: MCP客户端连接成功后,可以向服务器发送 MCP 'server.discoverTools' 请求,获取服务器提供的工具列表和工具描述信息。
- 调用工具: 根据工具列表和描述信息,MCP客户端可以向服务器发送 MCP 'tool.execute' 请求,调用特定的Kali安全工具并传递相应的参数。例如,调用 'basic_scan' 工具进行网络扫描,需要提供 'target' 参数 (目标IP地址或域名)。
- 获取结果: 服务器执行工具后,会将工具的输出结果通过 JSON-RPC 响应返回给MCP客户端。客户端解析响应即可获取工具的执行结果。
注意:
- 该服务器默认使用 'stdio' 传输协议,适用于本地或容器环境的AI Agent。
- 服务器所有工具均在Docker沙箱中运行,确保安全性,但初次运行或更换Kali镜像时可能需要等待Docker镜像下载。
- 部分网络扫描工具 (如 'stealth_scan') 可能需要 root 权限,请根据实际情况配置Kali Linux环境和Docker容器权限。
信息
分类
开发者工具