Token导航 LogoToken导航TokenDH.com
Wintools MCP logo
安全风控未说明官方级别未说明来源级核验

Wintools MCP

MCP Server

一个用于Windows取证的目录控制工具执行平台,提供安全执行管道和知识增强的响应信封。

工具数

10

提示词数

0

GitHub Stars

0

资源数

0
PythonClaude安全Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

AppliedIR

提供方

AppliedIR

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Valhuntir

Windows工具MCP

![CI](https://github.com/AppliedIR/wintools-mcp/actions/workflows/ci.yml) ![License: MIT](https://github.com/AppliedIR/wintools-mcp/blob/main/LICENSE)

使用知识丰富的响应信封执行目录门控的Windows取证工具。

平台文档 · 部署指导

重要提示 --经过广泛测试,这是一个新平台。 始终核实结果并指导调查过程。如果你只是 告诉瓦尔亨蒂尔“寻找邪恶”,它很可能会产生幻觉 而不是提供有意义的结果。人工智能可以加速,但 人类必须引导它并审查所有决定。

建筑

wintools mcp在Windows取证工作站上独立运行,在端口4624上公开一个可流式传输的HTTP端点。LLM客户端和vhir CLI是两个面向人类的工具。vhir CLI始终在SIFT工作站上运行——它需要直接访问case目录的文件系统。当LLM客户端在单独的机器上运行时,检查者必须对SIFT具有SSH访问权限,才能进行所有CLI操作。LLM客户端通过网络连接到wintools mcp。

graph LR
    subgraph sift ["SIFT Workstation"]
        CC["LLM Client
(human interface)"]
        CLI["vhir CLI
(human interface)"]
        CASE["Case Directory"]

        CLI --> CASE
    end

    subgraph winbox ["Windows Forensic Workstation"]
        WAPI["wintools-mcp API
:4624"]
        WM["wintools-mcp
Windows tool execution"]
        FK["forensic-knowledge"]

        WAPI --> WM
        WM --> FK
    end

    CC -->|"streamable-http"| WAPI
    WM -->|"SMB"| CASE

执行流水线

每个工具执行都通过相同的安全和丰富管道。

graph LR
    REQ["MCP tool call"] --> DENY{"Hardcoded
Denylist"}
    DENY -->|"blocked binary"| BLOCK["BLOCKED"]
    DENY -->|"pass"| CAT{"YAML Catalog
Allowlist"}
    CAT -->|"not cataloged"| REJECT["REJECTED"]
    CAT -->|"cataloged"| SANITIZE{"Argument
Sanitization"}
    SANITIZE -->|"dangerous flag
or metachar"| REJECT
    SANITIZE -->|"clean"| RESOLVE["Resolve
Binary Path"]
    RESOLVE --> EXEC["subprocess.run
shell=False"]
    EXEC --> PARSE["Parse Output
CSV / JSON / text"]
    PARSE --> ENRICH["FK Enrichment
caveats, corroboration,
field notes, discipline"]
    ENRICH --> RESP["Response Envelope"]

安全模型

此MCP打开攻击向量,连接的LLM客户端可以在该系统上执行工具。 它只能安装在受信任网段防火墙后隔离的专用取证工作站上。切勿在个人笔记本电脑、生产系统或包含调查范围外数据的机器上安装。

安装程序需要键入 security_hole 或通过 -AcknowledgeSecurityHole 在继续之前。这是一个有意的摩擦点。

额外的控制措施到位(目录分配列表、危险二进制文件的denylist、参数净化、, shell=False 执行)是纵深防御措施,而不是预防性控制。MCP没有加固,永远不应该面向互联网或其他不受信任的系统部署。

graph TB
    INPUT["Tool Execution Request"] --> D{"Hardcoded Denylist
20 binaries + .exe variants"}
    D -->|"cmd, powershell, pwsh,
wscript, cscript, mshta,
rundll32, regsvr32, certutil,
bitsadmin, msiexec, bash,
wsl, sh, msbuild, installutil,
regasm, regsvcs, cmstp, control"| BLOCKED["BLOCKED"]
    D -->|"pass"| A{"YAML Catalog
Allowlist"}
    A -->|"unknown binary"| REJECTED["REJECTED"]
    A -->|"cataloged"| S{"Argument
Sanitization"}
    S -->|"shell metacharacters,
execution flags, or
@file response-file"| REJECTED
    S -->|"clean"| E["EXECUTE
subprocess.run(shell=False)"]

所有执行用途 subprocess.run(shell=False)。只有YAML目录文件中定义的工具才能运行。危险的二进制文件(cmd、powershell、wscript等)被硬编码的denylist无条件阻止。检查参数中的shell元字符、危险标志(与执行相关: -e, --exec, --command, -enc),以及响应文件语法(@filename).

快速开始

在Windows取证工作站上,克隆仓库:

git clone https://github.com/AppliedIR/wintools-mcp.git; cd wintools-mcp

或者,如果未安装git,请下载并解压缩ZIP:

Invoke-WebRequest https://github.com/AppliedIR/wintools-mcp/archive/refs/heads/main.zip -OutFile wintools.zip
Expand-Archive wintools.zip -DestinationPath . -Force; cd wintools-mcp-main

然后运行安装程序:

.\scripts\setup-windows.ps1

设置.md 有关详细的部署选项和SMB配置。

MCP工具(共10个)

发现(6个工具)

工具说明
scan_tools扫描所有编目的取证工具,报告可用性和安装指南
list_windows_tools列出所有已编目的工具及其安装状态,可按类别进行筛选
list_missing_windows_tools列出未安装的工具,并附上安装指南和替代方案
check_windows_tools按名称检查特定工具的可用性
get_windows_tool_help获取特定于工具的帮助、标志、警告和解释指南
suggest_windows_tools给定工件类型,建议相关工具并检查可用性

证据访问(1个工具)

工具说明
get_share_info获取SMB共享路径以进行证据访问(share_root、case_dir、evidence_dir、extractions_dir)

KAPE发现(1个工具)

工具说明
list_kape_targets按结构化类别列出可用的KAPE目标或模块。KAPE用于解析已收集的证据,而不是实时收集。

批量执行(1个工具)

工具说明
batch_scan对目录中具有安全界限的所有文件运行工具(max_files上限、超时、每个工具的限制,如capa的100)

通用执行(1个工具)

工具说明
run_windows_command执行任何带有参数的编目工具(编目门控)

所有工具包装器(Zimmerman套件、Hayabusa、mactime)都合并到 run_windows_command工具目录定义了每个二进制的输入标志、输出格式和FK知识映射。 batch_scan 将其扩展到具有安全帽的目录级操作。

工具目录

工具在YAML目录文件中定义 data/catalog/。目录当前包含 31个工具条目 跨越7个文件:

文件计数工具
zimmerman.yaml14AmcacheParser、AppCompatCacheParser、SetPxECmd、JLECmd、LECmd、MFTECmd、PECmd、RBCmd、RECmd、SBECmd、SQLECmd、SrumECmd、WxTCmd、bstring
sysinternals.yaml5autorunsc、sigcheck、字符串、句柄、procdump
memory.yaml4winpmem、dumpit、moneta、hollows_hunter
timeline.yaml3隼鸟、链锯、mactime
analysis.yaml3capa,yara,密度cout
collection.yaml1咖啡
scripts.yaml1获取InjectedThreadEx

每个条目都定义了二进制名称、输入样式、输出格式、超时、FK知识名称、安装方法和搜索路径:

# data/catalog/zimmerman.yaml (excerpt)
category: zimmerman
tools:
  - name: AmcacheParser
    binary: AmcacheParser.exe
    description: "Parse Amcache.hve for program execution evidence"
    input_flag: "-f"
    output_format: csv
    timeout_seconds: 300
    fk_tool_name: AmcacheParser
    install_methods:
      - method: direct
        url: "https://ericzimmerman.github.io/#!index.md"
      - method: dotnet
        command: "dotnet tool install --global AmcacheParser"
    install_paths:
      - "C:\\Tools\\ZimmermanTools"

响应信封

每个工具响应都被包裹在一个结构化的信封中,其中包含丰富的取证知识:

{
  "success": true,
  "tool": "run_windows_command",
  "data": {"output": {"rows": ["..."], "total_rows": 42}},
  "data_provenance": "tool_output_may_contain_untrusted_evidence",
  "output_format": "parsed_csv",
  "audit_id": "wintools-steve-20260220-001",
  "examiner": "steve",
  "caveats": [
    "Amcache entries indicate installation, not necessarily execution",
    "Timestamps reflect installation time, not last run"
  ],
  "advisories": ["Cross-reference with Prefetch for execution confirmation"],
  "corroboration": {
    "artifacts": ["prefetch", "shimcache"],
    "tools": ["PECmd", "AppCompatCacheParser"]
  },
  "field_notes": {"KeyLastWriteTimestamp": "Last time the registry key was modified"},
  "discipline_reminder": "Evidence is sovereign -- if results conflict with your hypothesis, revise the hypothesis, never reinterpret evidence to fit"
}
字段来源描述
audit_id审核唯一标识符(wintools-{examiner}-{YYYYMMDD}-{NNN})
caveats法医知识文物特定限制和解释警告
advisories法医知识使用指南和常见误解纠正
corroboration法医知识建议的交叉参考工件和工具
field_notes取证知识来自工件定义的时间戳字段含义
discipline_reminder内置旋转取证方法提醒(共14个,每次调用循环)

配置

环境变量

变量默认值描述
WINTOOLS_TIMEOUT600默认命令超时时间(秒)
WINTOOLS_HOST127.0.0.1HTTP服务器绑定地址
WINTOOLS_PORT4624HTTP服务器端口
WINTOOLS_TOOL_PATHS(无)其他二分查找目录(路径分隔)
WINTOOLS_CATALOG_DIR(自动)覆盖目录YAML目录的路径
VHIR_CASE_DIR(无)活动案例目录;启用每个案例的审计跟踪
VHIR_AUDIT_DIR(无)本地审核目录(覆盖VHIR_CASE_DIR/audit/)
VHIR_SHARE_ROOT(无)SMB挂载根用于证据读取和提取写入(例如。, E:\cases\SRL2\)
VHIR_ACTIVE_CASE(无)审计条目中记录的案例标识符
VHIR_EXAMINER操作系统用户审查员身份(小写slug)

YAML配置文件

通过 --config path/to/config.yaml。环境变量覆盖YAML值。

密钥默认值描述
default_timeout600子进程超时(秒)
max_output_bytes52428800子进程捕获限制(50MB)
response_byte_budget10240MCP响应包络中的最大字节数(10KB)
http_host127.0.0.1HTTP绑定地址
http_port4624HTTP端口
hayabusa_dirC:\Tools\Hayabusa隼鸟安装目录
tool_paths[]其他二分查找目录
api_keys{}用于承载令牌身份验证的API密钥

承载令牌身份验证

所有API请求都需要一个有效的承载令牌。令牌是在安装过程中生成的 vhir_wt_ 前缀(24个十六进制字符,96位熵)。令牌存储在 config.yaml 在...之下 api_keys 并显示安装后,供检查者复制到他们的SIFT网关配置。

# config.yaml (on Windows)
api_keys:
  vhir_wt_a1b2c3d4e5f6a1b2c3d4e5f6:
    examiner: "default"
    role: "examiner"

每个请求都必须包括 Authorization: Bearer 头球没有有效令牌的请求将收到401响应。使用 --no-auth 仅在开发过程中。

从SIFT网关连接

要通过SIFT网关路由工具调用,请将wintools后端条目添加到 gateway.yaml 在SIFT工作站上:

backends:
  wintools-mcp:
    type: http
    url: "http://WIN_IP:4624/mcp"
    bearer_token: "vhir_wt_..."

或者, vhir setup 在交互式配置期间提示输入Windows VM地址和令牌。

LLM客户端还可以直接连接到wintools mcp,而无需通过网关,在其mcp客户端配置中使用相同的承载令牌。

通过SMB访问证据

wintools mcp通过经过身份验证的SMB共享访问SIFT工作站上的案例目录。Valhuntir安装工(vhir join --wintools)自动配置。SMB共享为wintools提供了mcp:

  • 读取权限 到证据文件(磁盘映像、注册表配置单元、事件日志、预回迁等)
  • 写入权限 到提取目录(解析输出:CSV、时间线、JSON)
  • 写入权限 到审核目录(每个工具执行日志)

VHIR_SHARE_ROOT 到Windows上的SMB装载点:

$env:VHIR_SHARE_ROOT = "E:\cases\SRL2\"

共享必须使用经过身份验证的连接。限制对需要它的Valhuntir组件的访问。请参阅 设置.md 详细的SMB配置,包括共享创建、用户凭据和防火墙规则。

网络要求: SIFT网关通过HTTPS连接到wintools mcp,并使用承载令牌身份验证(端口4624)。Windows工作站通过SMB(端口445)连接到SIFT。隔离取证网络上的防火墙必须允许这两个连接。不应允许来自取证环境外部的连接。

审计跟踪

每次工具执行都会记录到审核目录中。解析顺序:明确 audit_dir 构造函数参数> VHIR_AUDIT_DIR 谁是 > VHIR_CASE_DIR/audit/.证据ID遵循以下格式 wintools-{examiner}-{YYYYMMDD}-{NNN} 并在进程重新启动时恢复序列编号。

安全考虑

假设所有Valhuntir组件都在隔离的取证网络上运行,受防火墙保护,不暴露于互联网或不受信任的系统。wintools mcp接受来自此网络中SIFT网关和LLM客户端的传入连接。这些组件间连接是预期的和有意的。该系统绝不能暴露在取证环境之外的网络中。

所有API请求都需要有效的承载令牌(vhir_wt_ 前缀)。令牌在安装过程中生成,必须安全地传输到SIFT网关配置或LLM客户端设置。这 --no-auth 该标志仅用于开发,不得在任何有真实证据的环境中使用。

加载到系统中的任何数据都有暴露于底层人工智能的风险。只将您愿意发送给人工智能提供商的数据放在这些系统上。

wintools mcp解析可能包含攻击者精心制作的恶意内容的取证工件(注册表配置单元、事件日志、预取文件、内存转储)。工具作为子流程运行 shell=False 以及目录门控执行以限制攻击面。硬编码的denylist、编目allowlist和参数净化是深度防御措施,而不是预防性控制。

通过SMB共享访问案例目录应使用经过身份验证的连接。份额应仅限于需要访问的Valhuntir组件。只读权限足以访问证据文件;提取和审核条目需要写访问权限。

证据处理

切勿将原始证据放在任何Valhuntir系统上。仅使用存在经过验证的原件或备份的工作副本。Valhuntir工作站通过人工智能连接的工具处理证据,加载到这些系统中的任何数据都可以传输到配置的人工智能提供商。将所有Valhuntir系统视为分析环境,而不是证据存储。

证据完整性由注册时记录的SHA-256哈希值验证。审查员可以选择通过以下方式将证据锁定为只读 vhir evidence lock。适当的证据完整性取决于此平台之外存在的经过验证的哈希、写阻断器和监管链程序。

案例目录可以位于外部或可移动介质上。ext4是完全权限支持的首选。NTFS和exFAT是可以接受的,但文件权限控制(只读保护)将无效。由于文件大小限制为4 GB,不建议使用FAT32。

负责任的使用和法律

虽然已经采取措施加强人在环控制,但最终每个审查员都有责任确保他们的调查结果准确完整。AI就像一个十六进制编辑器,是一个经过适当培训的事件响应专业人员使用的工具。用户有责任确保其使用符合适用的法律、法规和组织政策。仅在您有权分析的系统和数据上使用。

本软件按“原样”提供,不提供任何形式的保修。看 许可证 完整条款。

MITRE ATT&CK是MITRE公司的注册商标。SIFT工作站是SANS研究所的产品。

致谢

史蒂夫·安森的建筑和指导。克劳德代码(Anthropic)的实施。设计灵感来自Lenny Zeltser REMnux MCP.

明确披露

我做DFIR。我不是开发者。如果没有Claude Code处理实现,这个项目就不会存在。虽然在设计、测试和审查方面付出了巨大的努力,但我完全承认,我可能一直在努力工作,在某些方面并不聪明。我的目的是围绕如何利用这项技术提高事件响应的效率展开讨论,同时确保准确性的最终责任仍由人类检查员承担。

许可证

MIT许可证-请参阅 许可证

目录标签

目录标签

PythonClaude安全数字取证本地部署工具执行控制安全管道响应增强法医分析

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

10

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP