AurelioAvila/malware-triage-hash

GitHub: AurelioAvila/malware-triage-hash

基于 Python 和 Microsoft Sentinel 的恶意软件哈希分类项目,模拟 Tier 1 SOC 分析师从哈希提取到威胁狩猎的完整事件响应工作流。

Stars: 0 | Forks: 0

# SOC 实验室 — 基于哈希的恶意软件分类 ## 场景 终端上发现一个可疑的可执行文件 (`updater.exe`)。 该文件已使用 VirusTotal 威胁情报 和自定义的 Microsoft Sentinel KQL 检测规则提交进行基于哈希的分类。 ## 目标 模拟真实的 Tier 1 SOC 分析师工作流: 1. 提取可疑文件的 SHA256 哈希值 2. 查询 VirusTotal 获取威胁情报 3. 使用 Microsoft Sentinel (KQL) 在终端中搜寻该哈希值 4. 生成包含结论和建议的事件报告 ## 使用的工具 - Python 3 — 通过 VirusTotal API 自动进行哈希查询 - Microsoft Sentinel — KQL 检测规则 - VirusTotal API — 威胁情报 - MalwareBazaar — 恶意软件样本数据库 ## 环境 - Microsoft Azure (免费层) - Log Analytics Workspace: soc-lab-workspace - Sentinel 工作区已关联到 Azure 订阅 ## 调查步骤 ### 步骤 1 — 告警 在终端上检测到可疑文件 `updater.exe`。 **SHA256:** `8bcc3b9c9bdb8b4859317026c8361fcf151963cdc2e8c09bfd5d0b9fdd6cc258` ### 步骤 2 — 哈希查询 (Python + VirusTotal) 运行 `hash_lookup.py` 以查询 VirusTotal API。 **结果:** - 检出率: 11/76 个引擎 - 威胁标签: `dropper.filerepmalware/misc` - 结论: **恶意 (MALICIOUS)** ### 步骤 3 — KQL 检测规则 (Microsoft Sentinel) 查询 SecurityEvent 日志,以查找涉及该恶意哈希的任何进程执行记录。 ``` let malicious_hash = "8bcc3b9c9bdb8b4859317026c8361fcf151963cdc2e8c09bfd5d0b9fdd6cc258"; SecurityEvent | where EventID == 4688 | where CommandLine has malicious_hash or ParentProcessName has malicious_hash | project TimeGenerated, Computer, Account, NewProcessName, CommandLine, ParentProcessName | order by TimeGenerated desc ``` ### 步骤 4 — 结论 文件被确认为 **dropper** —— 一种旨在下载并执行 额外有效载荷的恶意软件。建议立即升级处理。 ## 🎯 MITRE ATT&CK 映射 | 技术 | ID | 战术 | |-----------|-----|--------| | 混淆文件或信息 | [T1027](https://attack.mitre.org/techniques/T1027/) | 防御规避 (TA0005) | | 用户执行:恶意文件 | [T1204.002](https://attack.mitre.org/techniques/T1204/002/) | 执行 (TA0002) | | 入口工具传输 | [T1105](https://attack.mitre.org/techniques/T1105/) | 命令与控制 (TA0011) | ## 📸 证据 **Python 分类输出 — VirusTotal API 响应:** ![Python 分类输出](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/6ebde6d661212026.png) **Microsoft Sentinel — KQL 检测查询:** ![Sentinel KQL 检测](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/6ebde6d661212026.png) ## 建议 1. 立即隔离受影响的终端 2. 在 EDR 和边界网络层面封锁该哈希值 3. 搜寻来自受影响主机的横向移动痕迹 4. 检查持久化机制(计划任务、注册表键) ## 我学到了什么 - 如何使用 Python 和 VirusTotal API 自动化威胁情报查询 - 如何在 Microsoft Sentinel 中编写 KQL 检测规则 - 真实的 Tier 1 SOC 恶意软件分类工作流端到端是如何运作的 ## 免责声明 本项目仅用于教育和作品集展示目的。 未涉及任何生产系统或敏感数据。 ## 🔗 相关项目 | 项目 | 描述 | |---------|-------------| | [soc-home-lab](https://github.com/AurelioAvila/soc-home-lab) | 使用 Microsoft Sentinel 和 Wazuh 的端到端 SOC 实验室 | | [splunk-brute-force-detection](https://github.com/AurelioAvila/splunk-brute-force-detection) | 使用 Splunk SPL 进行暴力破解检测 | | [phishing-email-analysis](https://github.com/AurelioAvila/phishing-email-analysis) | 电子邮件头部解析器和 IOC 提取器 |
标签:Ask搜索, Azure安全, DAST, dropper, KQL, MalwareBazaar, Microsoft Sentinel, Python自动化, SHA256, SOC实验室, Tier 1 SOC, VirusTotal, 事件响应报告, 初级分析师模拟, 哈希分析, 威胁情报, 安全事件响应, 开发者工具, 恶意文件检测, 恶意样本分析, 恶意软件分析, 搜索语句(dork), 端点安全, 网络信息收集, 网络安全, 网络安全实验, 补丁管理, 隐私保护