ir-mcp
IR-MCP: AI 应急响应 MCP Server
AI 驱动的远程应急响应排查工具,通过 MCP 协议为 AI 客户端(Claude Code、Cherry Studio 等)提供系统取证能力。
功能
- 进程排查: 进程列表、进程树、可疑进程检测、已删除二进制检测
- 网络排查: 全部连接、外连分析、监听端口、DNS缓存
- 用户排查: 账户列表、管理员、登录记录、暴力破解检测、SSH密钥
- 持久化检测: Registry Run、WMI订阅、systemd服务、cron、启动项
- 计划任务: crontab、systemd timers、Windows计划任务
- 文件排查: 最近修改文件、临时目录、Prefetch、SUID文件
- 日志分析: 认证日志、系统日志、PowerShell日志、服务安装、日志清除检测
- 文件完整性: hash校验、系统二进制验证、数字签名检查
- 恶意软件检测: 未签名进程、进程伪装、可疑命令行、异常父子关系
- AI分析: 自动标记可疑项,风险评分
支持 Linux 和 Windows 双平台。
安装
cd ir-mcp
pip install -e .
使用方式
方式一:本地模式(部署到客户机器)
# stdio 模式 - 配合 Claude Code 使用
python -m ir_mcp --mode local
# HTTP 模式 - 远程 AI 客户端连接
python -m ir_mcp --mode local --transport http --port 9800
方式二:远程模式(从你的电脑连接目标)
# SSH 连接 Linux
python -m ir_mcp --mode remote --target 192.168.1.100 --user root --key-file ~/.ssh/id_rsa
# SSH 连接 Windows (OpenSSH)
python -m ir_mcp --mode remote --target 192.168.1.200 --user Administrator --password "pass"
# WinRM 连接 Windows
python -m ir_mcp --mode remote --target 192.168.1.200 --protocol winrm --user Administrator --password "pass" --target-port 5985
方式三:交互式连接
启动后通过 ir_connect 工具动态连接目标:
ir_connect(host="192.168.1.100", username="root", key_file="/path/to/key")
Claude Code / Cherry Studio 配置
在 MCP 配置文件中添加:
{
"mcpServers": {
"ir-mcp": {
"command": "python3",
"args": ["-m", "ir_mcp", "--mode", "local"]
}
}
}
远程模式预连接:
{
"mcpServers": {
"ir-mcp": {
"command": "python3",
"args": [
"-m", "ir_mcp",
"--mode", "remote",
"--target", "192.168.1.100",
"--user", "root",
"--key-file", "/path/to/key"
]
}
}
}
工具列表
| 工具 | 说明 |
|------|------|
| ir_connect | 连接目标主机 |
| ir_disconnect | 断开连接 |
| ir_status | 查看连接状态 |
| ir_execute | 执行自定义命令 |
| ir_quick_triage | 一键全面排查 |
| ir_list_processes | 进程列表 |
| ir_process_tree | 进程树 |
| ir_process_details | 进程详情 |
| ir_suspicious_processes | 可疑进程 |
| ir_network_connections | 网络连接 |
| ir_established_connections | 已建立连接 |
| ir_listening_ports | 监听端口 |
| ir_external_connections | 外连分析 |
| ir_list_users | 用户列表 |
| ir_admin_users | 管理员用户 |
| ir_recent_logins | 最近登录 |
| ir_failed_logins | 失败登录 |
| ir_ssh_keys | SSH密钥检查 |
| ir_persistence_check | 持久化全面检查 |
| ir_registry_run_keys | 注册表启动项 |
| ir_wmi_persistence | WMI持久化 |
| ir_scheduled_tasks | 计划任务 |
| ir_recent_tasks | 最近创建的任务 |
| ir_recent_files | 最近修改文件 |
| ir_temp_files | 临时文件 |
| ir_prefetch_or_suid | Prefetch/SUID |
| ir_suspicious_files | 可疑文件位置 |
| ir_auth_logs | 认证日志 |
| ir_system_logs | 系统日志 |
| ir_powershell_logs | PowerShell日志 |
| ir_service_install_logs | 服务安装日志 |
| ir_log_cleared | 日志清除检测 |
| ir_hash_file | 文件hash |
| ir_verify_binaries | 系统二进制验证 |
| ir_check_signature | 数字签名检查 |
| ir_malware_scan | 恶意软件扫描 |
| ir_unsigned_processes | 未签名进程 |
| ir_process_masquerade | 进程伪装检测 |
| ir_suspicious_cmdlines | 可疑命令行 |
| ir_analyze | AI分析数据 |
典型使用流程
- 连接目标:
ir_connect(host="x.x.x.x", username="root") - 快速排查:
ir_quick_triage()— 一键获取全面报告 - 深入调查: 根据报告中的可疑项,使用具体工具深入排查
- 取证:
ir_hash_file()保存证据hash,ir_execute()执行自定义取证命令