TestBuddy22/VirusTotal-Hash-Enrichment-Script

GitHub: TestBuddy22/VirusTotal-Hash-Enrichment-Script

一款基于 VirusTotal v3 API 的 Python 脚本,用于对恶意软件文件哈希进行多维数据富化并导出结构化报告。

Stars: 0 | Forks: 0

# VirusTotal-Hash-Enrichment-Script 这个 Python 脚本使用 VirusTotal v3 API 对恶意软件文件哈希进行 enrichment。它检索相关 IP 地址和域名的文件元数据、检测统计信息、沙箱行为报告、联系的网络指标、社区评论以及信誉信息。 该脚本旨在与 VirusTotal Public API 配合使用,同时遵守速率限制和每日配额限制。 结果将导出为多个 CSV 文件和 JSONL 格式,以便进行进一步的恶意软件分析、威胁狩猎、IOC 提取和报告。 **功能** **文件元数据收集** 对于提供的每个哈希,脚本会收集: -MD5, SHA1, SHA256 -文件名 -文件类型 -文件大小 -编译时间戳(PE 文件) -首次提交日期 -最后提交日期 -最后分析日期 -数字签名信息 -威胁分类 -恶意软件家族 -社区信誉评分 -检测统计信息 收集 VirusTotal 检测统计信息,包括: 恶意检测 可疑检测 无害检测 未检测到的引擎 沙箱行为分析 使用: GET /files/{id}/behaviours 来检索详细的每个沙箱执行报告。 行为数据包括: -打开的文件 -写入的文件 -删除的文件 -释放的文件 -注册表活动 -进程创建 -进程终止 -服务创建 -Mutex 创建 -DNS 查询 -HTTP 会话 -IP 流量 -TLS 信息 -命令执行 -加载的模块 -MITRE ATT&CK 技术 -Sigma 检测 -IDS 告警 -签名匹配 -内存转储可用性 -网络指标 收集: -联系的 IP 地址 -联系的域名 -联系的 URL -信誉 enrichment -包括信誉评分和检测统计信息。 社区情报 - 检索 VirusTotal 社区评论 **要求** Python 3.8+ **必需的包** 安装依赖项: pip install requests **用法** 1. 创建一个名为:hashes.txt 的文件 **示例:** 44d88612fea8a8f36de82e1278abb02f 275a021bbfb648f0f8a1f5d9b7e0b4c9 每行一个哈希。 支持的哈希类型: MD5 SHA1 SHA256 运行脚本: 2. python vt_hash_enrichment.py 脚本将提示输入 VirusTotal API key:从 https://www.virustotal.com 获取。 3. 输入您的 VirusTotal API Key: **当前限制:** 每分钟 4 次请求 每天 500 次请求 此脚本将生成以下 5 个 CSV 文件以及 JSON 文件。 VirusTotal Public API 限制 - 该脚本专为 VirusTotal Public API 设计。 **1. vt_results.csv - 主要文件分析结果 包含:** -哈希 -文件元数据 -检测统计信息 -威胁分类 -行为摘要计数 -联系的 IOC 计数 -vt_results.jsonl JSON Lines 导出,包含完整结果。每行一个 JSON 对象。 **2. vt_behaviour_details.csv - 详细的沙箱行为信息。每个沙箱执行报告占一行,包含:** -沙箱名称 -判定结果 -MITRE ATT&CK 技术 -DNS 查询 -HTTP 活动 -文件活动 -注册表活动 -进程活动 -IDS 告警 -Sigma 检测 **3. vt_contacted_ips.csv - 联系的 IP 地址的信誉信息 包含:** -IP 地址 -ASN -国家/地区 -信誉评分 -检测统计信息 -vt_contacted_domains.csv **4. vt_contacted_domains.csv - 联系的域名的信誉信息 包含:** -域名 -注册商 -DNS 记录 -信誉评分 -检测统计信息 **5. vt_contacted_urls.csv - 执行期间联系的提取 URL。URL 会自动进行失活(defanged)处理。** 示例: hxxps://malicious-site[.]com **示例工作流** 1. 从 hashes.txt 读取哈希 2. 查询 VirusTotal 文件报告 3.检索沙箱行为报告 3. 提取网络指标 4. 对 IP 信誉进行 enrichment 5. 对域名信誉进行 enrichment 6. 将结果导出为 CSV 和 JSONL **性能注意事项:** 使用 VirusTotal Public API 时,每个哈希可能需要多次 API 请求。 **每个哈希的典型请求:** 文件查找 行为查找 联系的 IP 联系的域名 联系的 URL 社区评论 IP 信誉查找 域名信誉查找 因此,处理大量哈希可能需要花费大量时间。 为了加快执行速度: 禁用社区评论 禁用 IP 信誉查找 禁用域名信誉查找 最有价值的行为信息已经可以通过以下途径获取: /files/{hash} /files/{hash}/behaviours **注意事项** API key 以交互方式请求,不会被存储。 数据在检索后立即写入,以防止在执行中断时丢失数据。 **免责声明** 本项目使用 VirusTotal Public API。用户有责任确保其使用符合 VirusTotal 的配额限制和许可要求。
标签:Ask搜索, DAST, Python, VirusTotal, 威胁情报, 开发者工具, 恶意软件分析, 无后门, 逆向工具