dwmetz/MalChela
GitHub: dwmetz/MalChela
一款基于 Rust 开发的恶意软件分析与 YARA 规则工具箱,集成案例管理与 AI 辅助研判能力。
Stars: 95 | Forks: 6
MalChela v3.1.2
A YARA & Malware Analysis Toolkit written in Rust.
![]() |
![]() |
| GUI View | CLI View |
功能:
| Program | Function | |---------------------|----------| | Combine YARA | 将目录中的所有 `.yara`/`.yar` 文件合并为一个规则文件 | | Extract Samples | 使用通用密码递归提取受密码保护的恶意软件归档 (ZIP/RAR) | | File Analyzer | 分析文件的哈希、熵、PE 结构、模糊哈希、YARA 匹配、NSRL 查询和 VirusTotal 状态 | | File Miner | 扫描文件夹以查找文件类型不匹配和元数据 | | Hash It | 为单个文件生成 MD5、SHA1 和 SHA256 哈希 | | Hash Check | 检查给定的哈希是否存在于提供的哈希集文件中 | | Malware Hash Lookup | 针对 VirusTotal 和 MalwareBazaar 查询哈希以获取威胁情报 | | mStrings | 从文件中提取字符串,应用 regex 和 Sigma 规则,映射到 MITRE ATT&CK,识别 IOC,并包含内置的 MITRE 技术查找 | | mzhash | 使用 MD5 递归哈希具有 MZ 头的文件 — 非常适合用于黄金镜像或已知不良样本集的生成 | | mzcount | 使用头/YARA 检测按格式 (MZ, ZIP, PDF 等) 递归计数文件 | | nsrlquery | 针对 NSRL 数据库查询 MD5 哈希以确定其是否为已知良好文件 | | strings_to_yara | 提示输入元数据和字符串列表以生成 YARA 规则 | | xmzhash | 递归哈希 *非* MZ、ZIP 或 PDF 的文件 — 非常适合用于非 Windows 恶意软件样本集 | **Malware Hash Lookup 需要 VirusTotal 和 MalwareBazaar 的 API 密钥。如果未配置,MalChela 将在您第一次运行恶意软件查询功能时提示您创建它们。*关于:
依赖项:
Linux ``` sudo apt install openssl libssl-dev clang yara libyara-dev pkg-config build-essential libglib2.0-dev libgtk-3-dev ``` Mac ``` brew install openssl yara pkg-config gtk+3 glib ``` 注意:需要 YARA 4.2> 版本。 在构建之前,将构建指向 Homebrew 的 YARA 前缀 ``` export YARA_LIBRARY_PATH=$(brew --prefix yara)/lib export BINDGEN_EXTRA_CLANG_ARGS="-I$(brew --prefix yara)/include" ```安装与使用:
安装 Rust — https://rustup.rs/ 仅限 CLI 安装 (WSL, Raspberry Pi 等): ``` curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh ``` 克隆仓库并构建: ``` git clone https://github.com/dwmetz/MalChela.git cd MalChela chmod +x release.sh ./release.sh # Builds all programs in release mode (recommended) ```运行:
``` ./target/release/malchela ``` 或 ``` ./target/release/MalChelaGUI ``` ℹ️ 建议在 `--release` 模式下构建并运行 MalChela,以确保 GUI 和子工具功能最佳。 ### 案例管理 (v3.0) MalChela v3.0 引入了一个功能齐全的案例系统: - 在统一的 `case.yaml` 下跟踪文件、运行的工具和笔记 - 在 `saved_output/cases/🔧 添加自定义工具:
您可以通过编辑 `tools.yaml` 文件将第三方或自定义工具添加到 GUI 来扩展 MalChela。这种灵活的配置支持二进制文件、Python 脚本和基于 Rust 的程序。 每个条目定义了工具的名称、类别、执行类型、输入传递方式(文件、文件夹或哈希)以及任何可选参数。以下是一些示例条目: ``` - name: capa description: "Detects capabilities in binaries via rules" command: ["capa"] input_type: "file" category: "File Analysis" exec_type: binary file_position: "last" optional_args: [] - name: strings description: "Extracts printable strings from binaries" command: ["strings"] input_type: "file" category: "Utilities" exec_type: binary file_position: "first" optional_args: [] - name: pdf-parser description: "Parses and analyzes suspicious PDF structures" command: ["python3"] input_type: "file" category: "PDF Analysis" exec_type: script file_position: "last" optional_args: ["tools/pdf-parser/pdf-parser.py"] ```🦀 **REMnux 模式:**
当在 REMnux 系统上运行时,MalChela 可以加载特定于 REMnux 的 `tools.yaml` 文件,该文件专为该发行版中可用的内置工具量身定制。这确保了更顺畅的设置,且只需最少的配置。 📝 **注意:** - 工具必须位于您的系统 `PATH` 中,或包含完整/相对路径。 - `exec_type` 必须是以下之一:`cargo`、`binary` 或 `script`。 - `file_position` 指示输入在命令中的放置位置(`first` 或 `last`)。 - 有关详细的配置示例和工作流,请参阅 [MalChela User Guide](https://dwmetz.github.io/MalChela/)。增强的工具支持:
MalChela 包括与以下第三方工具的改进集成: - **Volatility 3**:动态插件构建器、参数模板和输出目录选择。 - **TShark**:可视化参考面板,并支持使用自定义语法捕获过滤后的流量。 - **YARA-X**:智能规则匹配,改进了参数处理和兼容 REMnux 的默认配置。 这些增强功能使处理内存镜像、PCAP 和 YARA 规则的取证工作流程更加流畅。 #### 平台支持: 已在 macOS (Apple Silicon)、Ubuntu 和 Raspberry Pi 上成功测试。 需要 YARA 4.2 或更高版本。 **Windows:** 截至 2025 年 10 月,MalChela CLI 和 GUI 均可在 WSL2 下的 Windows 上运行。v3.1.1 中包含针对 WSL 的 MalChelaGUI 改进。标签:Ask搜索, Cloudflare, DAST, DeepSeek, DNS 反向解析, DOS头擦除, GUI应用, HTTP工具, IP 地址批量处理, MalwareBazaar, MITRE ATT&CK, NSRL查询, PE结构分析, Rust, Sigma规则, VirusTotal, YARA, 云安全监控, 云资产可视化, 可视化界面, 哈希计算, 威胁情报, 字符串提取, 安全工具包, 安全测试工具, 密码破解, 开发者工具, 恶意软件分析, 数字取证, 文件分析, 模糊哈希, 熵值分析, 目标导入, 网络信息收集, 网络安全, 网络安全审计, 网络流量审计, 自动化分析, 自动化脚本, 跨站脚本, 通知系统, 隐私保护, 静态分析

