JLee229/malware-static-analysis-documentation

GitHub: JLee229/malware-static-analysis-documentation

一份针对 WannaCry 勒索软件的静态分析文档,解决在隔离环境下如何系统化识别文件哈希、类型与字符串特征的问题。

Stars: 0 | Forks: 0

# malware-static-analysis-documentation ## 概述 对 WannaCry 勒索软件在隔离的 REMnux 虚拟机环境中执行的静态分析。本分析侧重于 SHA256 哈希提取、字符串分析和文件识别。 ## 实验环境 - **平台:** REMnux - **网络:** 仅主机适配器(模拟分析期间无互联网访问)— 初始阶段使用 NAT 仅为了让虚拟机接收软件包/安装。 - **分析类型:** 仅静态分析 ## 关键发现 | 分析 | 发现 | |------|------| | 文件类型 | PE32 可执行文件 (GUI) Intel 80386 | | SHA256 哈希值 | ed01ebfbc9eb5bbea545af4d01bf5f1071661840480439c6e5babe8e080e41aa | | 节区数量 | 4 | | 兼容性判定 | Windows 10、8.1、8、Vista、7 | ## 样本获取 使用的 WannaCry 勒索软件样本来自 TheZoo。TheZoo 是一个面向安全研究的受信任的公共恶意软件样本仓库。所使用的样本附带密码(密码:'infected'),并在 REMnux 环境中进行了广泛处理。随后执行了 SHA256 哈希计算以验证文件完整性,从而确保分析正确的版本。 ## 分析步骤 ### 1. 文件哈希验证 执行了 SHA256 哈希计算以验证文件完整性,并为样本建立唯一的数字指纹。 ![SHA256 Hash](https://github.com/JLee229/malware-static-analysis-documentation/blob/main/screenshots/01-sha256-hash.png) ### 2. 文件类型识别 `file` 命令将样本识别为具有 4 个节区的 32 位 Windows GUI 可执行文件。 ![File Type](https://github.com/JLee229/malware-static-analysis-documentation/blob/main/screenshots/03-file-identification.png) ### 3. 字符串分析 `strings` 命令提取了可读文本,揭示了一个 Windows 兼容性清单,表明该恶意软件的目标是 Windows 7 到 Windows 10。 ![Strings Output](https://github.com/JLee229/malware-static-analysis-documentation/blob/main/screenshots/02-strings-windows-manifest.png) ## 结果 通过彻底的静态分析,识别出文件类型、唯一的哈希指纹以及特定漏洞利用信息。这些信息描绘了恶意指标以及 WannaCry 勒索软件试图渗透的目标操作系统。 ## 后续工作 静态分析已完成。在给予额外的时间和资源的情况下,本项目计划通过以下方法进行动态分析: - 使用 Wireshark 进行 **网络流量分析**,以捕获任何 C2 通信尝试 - 使用 Volatility 进行 **内存取证**,以识别未打包的有效载荷或损坏的代码 - 进行 **MITRE Attack Mapping**,以在提供威胁可视化的同时提出缓解或应对特定问题的解决方案 ## 作者 Joshua Lee
标签:DAST, GET 请求, PE文件, REMnux, SHA256, WannaCry, 云安全监控, 云资产清单, 关键词, 勒索软件, 可执行文件, 哈希校验, 字符串提取, 恶意样本, 恶意软件分析, 数字取证, 文件完整性验证, 文件识别, 自动化脚本, 逆向工程, 静态分析, 静态反汇编