返回市场
恶意软件分析器mcp

恶意软件分析器mcp

作者:abdessamad-elamrani2 星标更新:2025-05-05

项目介绍

MalwareAnalyzerMCP

一个专为Claude Desktop设计的MCP服务器,允许执行终端命令进行恶意软件分析。

功能

  • 执行带有可配置超时时间的终端命令
  • 读取正在运行或已完成进程的输出
  • 专门用于恶意软件分析的命令(file, strings, hexdump, objdump, xxd
  • 清晰的进程管理,支持优雅关闭
  • 纯JavaScript实现 - 无需构建步骤

安装

# 安装依赖
npm install

使用

运行服务器

# 直接启动服务器
node index.js

# 或使用npm脚本
npm start

# 带调试代理(记录所有通信)
npm run debug

与Claude Desktop集成

要将此MCP服务器与Claude Desktop集成:

  1. 打开Claude Desktop设置(Claude菜单 → 设置)
  2. 点击“开发者”然后点击“编辑配置”
  3. 更新您的配置以包含以下内容:
{
  "mcpServers": {
    "MalwareAnalysisMCP": {
      "command": "node",
      "args": [
        "/path/to/MalwareAnalysisMCP/index.js"
      ]
    }
  }
}

注意:请将/path/to/MalwareAnalysisMCP替换为您项目的实际路径。

  1. 重启Claude Desktop

调试

要查看Claude Desktop与MCP服务器之间的所有通信:

  1. 更新您的Claude Desktop配置以使用调试代理:
{
  "mcpServers": {
    "MalwareAnalysisMCP": {
      "command": "node",
      "args": [
        "/path/to/MalwareAnalysisMCP/mcp-debug-proxy.js"
      ]
    }
  }
}
  1. 检查logs目录中的日志

兼容性说明

  • 需要Node.js 18或更高版本
  • 兼容使用ESM模块的Node.js v22+

API

基础工具

shell_command

执行终端命令并返回其进程ID、输出和阻塞状态。

参数:

  • command (字符串):要在终端中执行的命令
  • timeout_ms (数字,可选):超时时间(毫秒,默认值:30000)

返回:

  • pid (数字):进程ID
  • output (字符串):命令输出
  • isBlocked (布尔值):命令执行是否被阻塞/超时

read_output

从正在运行或已完成的进程中读取输出。

参数:

  • pid (数字):要读取输出的进程ID

返回:

  • output (字符串 | null):进程输出,如果未找到进程则返回null

专门的恶意软件分析工具

以下专门工具可用于恶意软件分析:

file

分析文件并确定其类型。

参数:

  • target (字符串):要分析的目标文件
  • options (字符串,可选):附加命令行选项

示例:

{
  "target": "suspicious.exe",
  "options": "-b"
}

strings

从文件中提取可打印字符串。

参数:

  • target (字符串):要分析的目标文件
  • minLength (数字,可选):显示的最小字符串长度
  • encoding (字符串,可选):字符串编码(s=7位,S=8位,b=16位大端,l=16位小端等)
  • options (字符串,可选):附加命令行选项

示例:

{
  "target": "suspicious.exe",
  "minLength": 1 0,
  "encoding": "l"
}

hexdump

以十六进制格式显示文件内容。

参数:

  • target (字符串):要分析的目标文件
  • length (数字,可选):要显示的字节数
  • offset (数字,可选):文件中的起始偏移量
  • options (字符串,可选):附加命令行选项

示例:

{
  "target": "suspicious.exe",
  "length": 256,
  "offset": 1024
}

objdump

显示对象文件中的信息。

参数:

  • target (字符串):要分析的目标文件
  • disassemble (布尔值,可选):反汇编可执行部分
  • headers (布尔值,可选):显示部分头的内容
  • options (字符串,可选):附加命令行选项

示例:

{
  "target": "suspicious.exe",
  "disassemble": true
}

xxd

创建带有ASCII表示的十六进制转储。

参数:

  • target (字符串):要分析的目标文件
  • length (数字,可选):要显示的字节数
  • offset (数字,可选):文件中的起始偏移量
  • cols (数字,可选):指定列数格式化输出
  • bits (布尔值,可选):切换到位(二进制)转储
  • options (字符串,可选):附加命令行选项

示例:

{
  "target": "suspicious.exe",
  "cols": 16,
  "bits": true
}

许可证

ISC