X

mcp-wireshark

Information

WireMCP WireMCP 是一个模型上下文协议(MCP)服务器,旨在为大型语言模型(LLMs)提供实时网络流量分析能力。通过利用基于 Wireshark 的 tshark 构建的工具,WireMCP 捕获并处理实时网络数据,为 LLMs 提供结构化的上下文信息,以帮助完成威胁狩猎、网络诊断和异常检测等任务。 功能 WireMCP 向 MCP 客户端暴露以下工具,增强 LLM 对网络活动的理解: capture_packets: 捕获实时流量,并将原始数据包作为 JSON 返回,使 LLMs 能够分析数据包级别的细节(例如 IP 地址、端口、HTTP 方法)。 get_summary_stats: 提供协议层次统计信息,让 LLMs 了解流量组成概览(例如 TCP 与 UDP 使用情况)。 get_conversations: 提供 TCP/UDP 会话统计信息,允许 LLMs 跟踪端点之间的通信流。 check_threats: 捕获 IP 并将其与 URLhaus 黑名单进行比对,为 LLMs 提供威胁情报上下文,以识别恶意活动。 check_ip_threats: 针对特定 IP 地址执行针对多个威胁源的目标威胁情报查询,提供详细的信誉和威胁数据。 analyze_pcap: 分析 PCAP 文件,以 JSON 格式提供全面的数据包数据,支持对捕获后的网络流量进行详细分析。 extract_credentials: 扫描 PCAP 文件中来自各种协议(如 HTTP 基本认证、FTP、Telnet)的潜在凭证,辅助安全审计和取证分析。 如何帮助 LLMs WireMCP 通过以下方式填补了原始网络数据与 LLM 理解之间的鸿沟: 流量上下文化:将实时数据包捕获转换成结构化输出(JSON、统计),使得 LLMs 可以解析和推理。 威胁检测:集成 IOCs(当前使用 URLhaus)来标记可疑 IP,增强 LLM 驱动的安全分析。 诊断:提供详细的流量洞察,使 LLMs 能够协助故障排除或识别异常。 叙述生成:LLMs 可以将复杂的数据包捕获转化为连贯的故事,使非技术用户也能理解网络分析。 安装 先决条件 Mac / Windows / Linux Wireshark(安装 tshark 并确保其在 PATH 中可访问) Node.js(推荐 v16+) npm(用于依赖项安装) 设置 克隆仓库: bash git clone https://github.com/0xkoda/WireMCP.git cd WireMCP 安装依赖项: bash npm install 运行 MCP 服务器: bash node index.js 注意:确保 tshark 在你的 PATH 中。WireMCP 将自动检测它或回退到常见的安装位置(例如,在 macOS 上为 /Applications/Wireshark.app/Contents/MacOS/tshark)。 与 MCP 客户端一起使用 WireMCP 可以与任何符合 MCP 标准的客户端配合工作。以下是流行客户端的例子: 示例 1: Cursor 编辑 Cursor -> 设置 -> MCP 中的 mcp.json 文件: json \{ "mcpServers": \{ "wiremcp": \{ "command": "node", "args": [ "/ABSOLUTE_PATH_TO/WireMCP/index.js" ] \} \} \} 位置 (macOS): /Users/YOUR_USER/Library/Application Support/Claude/claude_desktop_config.json 其他客户端 此 MCP 与其他客户端也能很好地工作。在其 MCP 服务器设置中使用命令 node /path/to/WireMCP/index.js。 示例输出 运行 check_threats 可能会得到如下结果: 捕获的 IP: 174.67.0.227 52.196.136.253 与 URLhaus 黑名单对比威胁检查: URLhaus 黑名单中未检测到威胁。 对捕获文件运行 analyze_pcap: json \{ "content": [\{ "type": "text", "text": "分析的 PCAP: ./capture.pcap\n\n唯一 IP:\n192.168.0.2\n192.168.0.1\n\n协议:\neth:ethertype:ip\neth:ethertype:ip:tcp\n\n数据包数据:\n[\{"layers":\{"frame.number":["1"],"ip.src":["192.168.0.2"],"ip.dst":["192.168.0.1"],"tcp.srcport":["1550"],"tcp.dstport":["23"]\}\}]" \}] \}LLM可以使用这些输出来: 提供网络活动的自然语言解释 识别模式和潜在的安全问题 提供上下文感知的建议 生成人类可读的报告 路线图 扩展IOC提供者:当前使用URLhaus进行威胁检查。未来的更新将集成其他来源(例如,IPsum、Emerging Threats)以扩大覆盖范围。 贡献 欢迎贡献!请随时提交Pull Request。对于重大更改,请先打开一个issue讨论您想要更改的内容。 许可证 MIT 致谢 Wireshark/tshark团队提供了优秀的数据包分析工具 Model Context Protocol社区提供了框架和规范 URLhaus提供了威胁情报数据

Prompts

Reviews

Tags

Write Your Review

Detailed Ratings

ALL
Correctness
Helpfulness
Interesting
Upload Pictures and Videos

Name
Size
Type
Download
Last Modified
  • Community

Add Discussion

Upload Pictures and Videos