Adamkadaban/crucible

GitHub: Adamkadaban/crucible

Crucible 是一个用于隔离 Windows 虚拟机的 Linux 代理,用于恶意软件分析和调试。

Stars: 0 | Forks: 0

crucible

从 Linux MCP 代理构建、快照和控制隔离的 Windows 分析 VM。

License Node Platform made with vibes

Crucible 在 QEMU/KVM 上提供 Windows 分析 VM,安装调试工具和一个小型 mTLS 客户端代理,然后通过 CLI 和 MCP 服务器暴露 VM 控制。 用于本地恶意软件分析和控制主机的 Windows 调试工作流程。不要将其视为防止 VM 逃逸或主机内核错误的硬隔离边界。 ## 快速入门 要求: - 带有 KVM 访问权限的 Linux 主机。 - QEMU、OVMF、`swtpm`、`socat` 和 `xorriso`。 - 本地 Windows 安装器 ISO、virtio-win ISO 和 virtio 客户端工具安装器。 Debian / Ubuntu 基线: ``` sudo apt install qemu-system-x86 qemu-utils ovmf swtpm socat xorriso ``` 安装 CLI: ``` npm install -g @adamkadaban/crucible crucible doctor ``` 创建配置,编辑媒体路径,并配置: ``` crucible config init crucible provision crucible guest health crucible snapshot list ``` 第一次配置通常需要 12-18 分钟,并创建一个 `clean-base` 快照。在每次新的分析会话之前恢复该快照。 ## MCP 服务器 在 stdio 上运行 MCP 服务器: ``` crucible mcp --stdio ``` 使用设置助手而不是手动编辑客户端配置: ``` crucible setup opencode crucible setup claude crucible setup codex --print crucible setup copilot --print ``` 示例 opencode 配置: ``` { "mcp": { "crucible": { "enabled": true, "type": "local", "command": ["crucible", "mcp", "--stdio"] } } } ``` ## 常用命令 ``` crucible --help crucible version crucible update --dry-run crucible vm status crucible vm credentials printf %s "$VM_PASSWORD" | crucible vm paste --stdin crucible vm view --dry-run crucible snapshot restore clean-base crucible network status ``` `crucible vm credentials` 打印从主机专用秘密文件生成的 Windows 账户凭证。 将输出视为敏感信息。使用 `crucible vm paste --stdin` 将密码粘贴到聚焦的 VM 窗口中,而无需将秘密本身放入 shell 历史。 ## 源代码检出 仅在开发 Crucible 本身时使用源代码检出: ``` git clone https://github.com/Adamkadaban/crucible.git cd crucible scripts/check-host.sh nvm install corepack enable pnpm pnpm install --frozen-lockfile pnpm build ``` 从源代码,使用 `pnpm crucible ...` 而不是全局二进制文件。 ## 安全性 - 除非有意进行客户端出口,否则请保持默认网络模式隔离。 - 永远不要将主机家目录、SSH 代理、浏览器配置文件、云凭证或存储库根目录挂载到客户端。 - 将恶意软件样本和生成的工件保存在 Git 和同步的个人文件夹之外。 - 将生成的秘密、autounattend 文件、转储、pcaps 和快照视为仅本地工件。 - 在每个样本之后停止并恢复 `clean-base`,除非你有意继续同一调查。 有关报告和隔离指南,请参阅[SECURITY.md](./SECURITY.md)。 ## 文档 - [docs/install.md](./docs/install.md) - 详细安装和第一次配置。 - [docs/provisioning.md](./docs/provisioning.md) - 配置阶段、现实模式以及端到端范围。 - [docs/qemu.md](./docs/qemu.md) - QEMU 命令形状和生命周期状态。 - [docs/network-isolation.md](./docs/network-isolation.md) - 隔离、NAT 和捕获模式。 - [docs/protocol.md](./docs/protocol.md) - 客户端代理 mTLS HTTP API。 - [docs/debugger.md](./docs/debugger.md) - CDB 支持的调试工作流程。 - [docs/malware-analysis-sop.md](./docs/malware-analysis-sop.md) - 操作程序。 - [docs/teardown.md](./docs/teardown.md) - 清理边界。 - [docs/threat-model.md](./docs/threat-model.md) - 假设和非目标。 ## 开发 ``` pnpm check pnpm e2e pnpm e2e:live # opt-in; requires local Windows media and live VM config cd guest-agent go test ./... go build ./... ``` ## 许可证 [MIT](./LICENSE)
标签:MITM代理, 日志审计, 自动化攻击, 身份验证强制