fairyming/suricata_mcp

GitHub: fairyming/suricata_mcp

一个基于 MCP 协议的 Suricata 规则验证服务,让 AI 助手能够自动完成规则语法校验和 pcap 流量匹配测试,加速检测规则的开发流程。

Stars: 2 | Forks: 0

# Suricata MCP 用于针对 pcap 文件验证 Suricata 规则的 MCP 服务。 ## 安装 ``` # 安装依赖 source /path/to/venv/bin/activate pip install -e . ``` ## 使用方法 ### 运行 MCP Server ``` suricata-mcp ``` 或在 Claude Desktop 配置中添加: ``` { "mcpServers": { "suricata": { "command": "python", "args": ["-m", "suricata_mcp.server"], "env": { "SURICATA_PATH": "/usr/local/bin/suricata" } } } } ``` ## 工具 ### validate_suricata_rule 验证 Suricata 规则语法是否正确。 **参数:** - `rule_content` (string, 必需): Suricata 规则内容 ### validate_suricata_rule_file 验证 Suricata 规则文件语法是否正确。 **参数:** - `rule_path` (string, 必需): 规则文件路径 **示例:** ``` { "rule_path": "/path/to/rules.rules" } ``` ### test_suricata_rule 测试 Suricata 规则对 pcap 文件是否生效,验证规则是否能匹配到预期告警。 **参数:** - `rule_content` (string, 必需): Suricata 规则内容 - `pcap_path` (string, 必需): pcap 文件路径 - `expected_sid` (integer, 可选): 预期匹配的 signature ID,不提供则从规则中提取 ### test_suricata_rule_file 测试 Suricata 规则文件对 pcap 文件是否生效。 **参数:** - `rule_path` (string, 必需): 规则文件路径 - `pcap_path` (string, 必需): pcap 文件路径 - `expected_sids` (array of integers, 可选): 预期匹配的 signature IDs ## 工作流程 1. **规则语法验证**: 使用 `suricata -S -T` 验证规则语法 2. **pcap 测试**: 使用 `suricata -r -S -l ` 运行测试 3. **告警解析**: 解析 `eve.json` 中 `event_type` 为 `alert` 的记录 4. **sid 匹配**: 验证规则的 sid 与告警日志中的 `signature_id` 是否一致 ## 自动编写规则 配合: https://github.com/fairyming/tshark_mcp, 可以实现自动分析,编写规则并验证 ![image.png](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/e1eb3191ee105935.png) ![image.png](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/346151bf39105937.png) ![image.png](https://raw.githubusercontent.com/fairyming/suricata_mcp/main/images/ScreenShot_2026-03-19_161156_160.png)
标签:AMSI绕过, Claude Desktop, MCP, MCP Server, Metaprompt, pcap, Python, Suricata, 代理支持, 告警, 威胁检测, 安全运营, 扫描框架, 无后门, 现代安全运营, 网络协议分析, 网络安全, 网络调试, 自动化, 规则测试, 规则验证, 逆向工具, 隐私保护