ejor5/malware-detector

GitHub: ejor5/malware-detector

一款教育性质的 Python 静态恶意软件分类工具,通过可解释的规则和风险评分帮助安全学习者理解样本分诊过程。

Stars: 0 | Forks: 0

# 恶意软件检测器 一款教育性质的 Python 工具,用于可解释的**静态恶意软件分类**。它在不执行文件的情况下对其进行检查,报告可疑信号,并将这些信号转化为技术人员或业务人员能够理解的风险评分。 ## 项目存在的原因 我开发这个项目是为了应用我在 TryHackMe 上学到的关于漏洞利用、操作系统、恶意软件行为和防御性安全的知识。目标是将技术分析与组织评估、沟通和应对风险的方式结合起来。 ## 当前功能 - SHA-256 指纹识别和可选的本地哈希黑名单 - 用于检测加壳或加密文件指标的 Shannon 熵测量 - 可打印 ASCII 和 UTF-16LE 字符串提取 - 用于检测可疑 PowerShell、注入、下载和持久化指标的可解释规则 - 基础的 PE(Portable Executable,`MZ`)识别 - 易读和 JSON 格式的报告 - 文件大小限制和纯静态处理——被检查的文件永远不会被执行 ## 快速开始 需要 Python 3.10 或更高版本,且没有运行时依赖。 ``` git clone https://github.com/ejor5/malware-detector.git cd malware-detector python -m malware_detector.cli path\to\file.exe ``` 实用选项: ``` # 机器可读输出 python -m malware_detector.cli path\to\file.exe --json # 与每行包含一个 SHA-256 hash 的本地文件进行对比 python -m malware_detector.cli path\to\file.exe --blocklist hashes.txt # 运行测试(所有 fixtures 均为无害的生成数据) python -m unittest discover -s tests -v ``` 输出示例: ``` Risk: MEDIUM (30/100) File: C:\samples\example.exe SHA-256: ... Entropy: 6.42/8.00 Reasons: + [30] Contains a PowerShell encoded-command pattern. This is a triage result, not a malware verdict. Correlate it with other evidence. ``` ## 学习路线图 ### 技术知识 - [x] 加密哈希和本地哈希匹配 - [x] 字符串提取和熵分析 - [x] 可解释的基于规则的检测和风险评分 - [ ] 使用 `pefile` 进行完整的 PE 头、节区和导入解析 - [ ] 对可疑 API 组合的导入分析 - [ ] YARA 规则支持和有文档记录的规则编写工作流 - [ ] 测试语料库、精确率/召回率测量和误报分析 - [ ] 丰富的 HTML/JSON 安全报告 - [ ] 数字签名检查 ### 业务和生活知识 - [x] 将技术指标与最终的恶意软件判定区分开来 - [x] 传达评分的原因及其局限性 - [ ] 将发现映射到受影响的业务资产和可能的影响 - [ ] 推荐标准的遏制、升级和证据处理步骤 - [ ] 在分析报告的同时提供执行摘要 ## 风险的传达方式 | 评分 | 标签 | 预期响应 | |---:|---|---| | 0–19 | 低 | 无匹配的指标;继续正常验证 | | 20–49 | 中 | 在放行之前审查文件及其来源 | | 50–74 | 高 | 隔离并升级以进行更深入的分析 | | 75–100 | 严重 | 在调查清楚之前,将其视为可能的安全事件 | 评分是累加的,最高限制为 100,并且报告会显示每一项的贡献。高熵值、可疑字符串或敏感的 Windows API 也可能出现在合法软件中,因此上下文和附加证据始终很重要。 ## 安全性 - 在隔离的虚拟机中分析不受信任的文件——不要在生产环境的 endpoint 上进行。 - 不要提交恶意软件样本、凭据、客户数据或专有文件。 - 本项目以字节形式读取样本,不会故意执行它们。 - 在处理真实的可疑文件之前,请参阅 [SECURITY.md](SECURITY.md)。 ## 贡献 欢迎提供简单、可解释的规则和测试。有关工作流程和期望,请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。 ## 许可证 MIT © Ethan “EJ” Jordan。请参阅 [LICENSE](LICENSE)。
标签:Homebrew安装, Python, Windows日志分析, 哈希校验, 教育项目, 文件剖析, 无后门, 逆向工具, 静态恶意软件分析