0x0allenace/static-malware-analysis-report

GitHub: 0x0allenace/static-malware-analysis-report

一份完整的恶意软件静态分析报告,演示如何利用业界标准工具链对可疑 Windows PE 样本进行不执行前提下的深度分析与威胁评估。

Stars: 0 | Forks: 0

# 🧪 恶意软件静态分析报告 — 可疑 PE 样本 ![Platform](https://img.shields.io/badge/Platform-Windows%20PE-blue) ![Environment](https://img.shields.io/badge/Lab-REMnux%20%7C%20FLARE--VM-success) ![Analysis](https://img.shields.io/badge/Analysis-Static-orange) ![MITRE](https://img.shields.io/badge/MITRE-ATT%26CK-red) ![Status](https://img.shields.io/badge/Status-Completed-brightgreen) ## 截图 本报告中引用的所有截图均位于 `/screenshots` 目录中。 ## 📑 目录 - [🧪 恶意软件静态分析报告 — 可疑 PE 样本](#-static-malware-analysis-report--suspicious-pe-samples) - [截图](#screenshots) - [📑 目录](#-table-of-contents) - [📌 执行摘要](#-executive-summary) - [🔍 核心分析](#-key-analysis) - [🎯 分析目标](#-objective) - [🧪 分析环境](#-analysis-environment) - [REMnux](#remnux) - [FLARE-VM](#flare-vm) - [🔍 样本识别](#-sample-identification) - [malz1.exe.mal](#malz1exemal) - [命令](#command) - [🧠 分析发现](#-finding) - [🔐 Hash 分析与威胁情报](#-hash-analysis--threat-intelligence) - [命令](#command-1) - [分析](#analysis) - [📊 元数据分析](#-metadata-analysis) - [命令](#command-2) - [分析](#analysis-1) - [🧵 字符串分析](#-string-analysis) - [命令](#command-3) - [分析](#analysis-2) - [🌐 网络指标发现](#-network-indicator-discovery) - [命令](#command-4) - [分析](#analysis-3) - [🔁 持久化分析](#-persistence-analysis) - [命令](#command-5) - [分析](#analysis-4) - [🌍 IP 地址发现](#-ip-address-discovery) - [命令](#command-6) - [分析](#analysis-5) - [🧠 可疑 Windows API 发现](#-suspicious-windows-api-discovery) - [命令](#command-7) - [分析](#analysis-6) - [📁 文件系统分析](#-file-system-analysis) - [命令](#command-8) - [分析](#analysis-7) - [🗂️ 注册表分析](#️-registry-analysis) - [命令](#command-9) - [分析](#analysis-8) - [💻 命令执行分析](#-command-execution-analysis) - [命令](#command-10) - [分析](#analysis-9) - [📧 电子邮件地址发现](#-email-address-discovery) - [命令](#command-11) - [分析](#analysis-10) - [🔐 加密指标分析](#-encryption-indicator-analysis) - [命令](#command-12) - [分析](#analysis-11) - [🔎 Base64 检测](#-base64-detection) - [命令](#command-13) - [分析](#analysis-12) - [🔓 FLOSS 分析](#-floss-analysis) - [命令](#command-14) - [分析](#analysis-13) - [仅显示解码字符串](#decoded-strings-only) - [命令](#command-15) - [导出 FLOSS 输出](#exporting-floss-output) - [命令](#command-16) - [FLOSS 辅助的 IOC 寻找](#floss-assisted-ioc-hunting) - [命令](#command-17) - [分析](#analysis-14) - [🧱 PE 结构分析](#-pe-structure-analysis) - [DOS Header 分析](#dos-header-analysis) - [分析](#analysis-15) - [🕒 编译时间戳分析](#-compilation-timestamp-analysis) - [分析](#analysis-16) - [📦 节区头分析](#-section-header-analysis) - [分析](#analysis-17) - [📊 熵分析](#-entropy-analysis) - [分析](#analysis-18) - [📥 Import Address Table (IAT) 分析](#-import-address-table-iat-analysis) - [分析](#analysis-19) - [🔍 使用 MalAPI 验证 API](#-api-verification-using-malapi) - [分析](#analysis-20) - [🧪 PEStudio 分析](#-pestudio-analysis) - [可疑指标](#suspicious-indicators) - [分析](#analysis-21) - [VirusTotal 集成](#virustotal-integration) - [分析](#analysis-22) - [导入函数](#imported-functions) - [分析](#analysis-23) - [嵌入字符串](#embedded-strings) - [分析](#analysis-24) - [节区分析](#section-analysis) - [分析](#analysis-25) - [清单和数字签名](#manifest-and-digital-signature) - [分析](#analysis-26) - [# 恶意软件能力分析](#-malware-capability-analysis) - [使用 CAPA 进行能力分析](#capability-analysis-with-capa) - [命令](#command-18) - [样本元数据](#sample-metadata) - [分析](#analysis-27) - [MITRE ATT\&CK 映射](#mitre-attck-mapping) - [观察到的技术](#observed-techniques) - [MAEC 分类](#maec-classification) - [分析](#analysis-28) - [恶意软件行为目录 (MBC)](#malware-behavior-catalog-mbc) - [分析](#analysis-29) - [能力总结](#capability-summary) - [检测到的能力](#detected-capabilities) - [详细分析](#verbose-analysis) - [命令](#command-19) - [分析](#analysis-30) - [深度分析](#detailed-analysis) - [命令](#command-20) - [分析](#analysis-31) - [总体评估](#overall-assessment) - [入侵指标 (IOC)](#indicators-of-compromise-iocs) - [MITRE ATT\&CK 映射](#mitre-attck-mapping-1) - [分析总结](#summary-of-analysis) - [观察到的行为](#observed-behaviors) - [仓库结构](#repository-structure) - [结论](#conclusion) - [免责声明](#disclaimer) ## 📌 执行摘要 本报告使用业界标准的逆向工程和恶意软件初筛工具,对多个可疑的 Windows Portable Executable (PE) 样本进行了全面的静态恶意软件分析。在不执行二进制文件的情况下,调查重点在于识别恶意功能、提取入侵指标 (IOC)、检查可执行文件结构,并将观察到的行为映射到 MITRE ATT&CK 框架。分析揭示了持久化机制、进程注入、命令与控制功能以及防御规避技术的证据,这些与远程访问木马 (RAT) 一致,特别是类似于 AsyncRAT 的样本。 ### 🔍 核心分析 - 存在 **远程访问木马 (RAT) 特征** 的证据,可能与 AsyncRAT 有关 - 存在通过注册表 autorun 键实现的 **持久化机制** - 存在 **命令与控制 (C2) 通信** 的指标 - 检测到 **进程注入和内存操作功能** ## 🎯 分析目标 对 **可疑可执行样本执行静态分析**,旨在: - 识别 **入侵指标 (IOC)** - 分析 **文件结构和元数据** - 检测 **恶意功能和行为** - 为潜在的 **动态分析** 准备上下文 ## 🧪 分析环境 分析是在隔离的恶意软件分析虚拟机中进行的,以确保样本永远不会在生产系统上执行。 ### REMnux 使用了以下基于 Linux 的取证工具: | 工具 | 用途 | |-------|---------| | `file` | 识别文件类型 | | `sha256sum` | 生成 SHA-256 哈希值 | | `strings` | 提取可打印字符串 | | `grep` | 过滤提取出的指标 | | `exiftool` | 提取可执行文件的元数据 | | `FLOSS` | 解码混淆字符串 | ### FLARE-VM 使用了以下 Windows 恶意软件分析工具: | 工具 | 用途 | |-------|---------| | PEStudio | PE 初筛和静态分析 | | Detect It Easy (DIE) | 加壳和熵分析 | | PEview | PE 头和结构分析 | | CAPA | 恶意软件能力检测 | | VirusTotal | 威胁情报查询 | ## 🔍 样本识别 对样本进行了初步分析: ### malz1.exe.mal 使用 `file` 工具: ### 命令 ``` file malz1.exe.mal ``` ![file-output](https://static.pigsec.cn/wp-content/uploads/repos/cas/7e/7eb4df5ebd47b4d91b2587709e283c21652ffb8cdac9f3553904cf83bf072320.png) ### 🧠 分析发现 尽管该文件的扩展名被修改过,但它被识别为 Windows Portable Executable (PE) 文件,证实了其试图伪装真实性质的企图。 # 🔐 Hash 分析与威胁情报 生成了 SHA-256 哈希值: ### 命令 ``` sha256sum malz1.exe.mal ``` ![file-hash](https://static.pigsec.cn/wp-content/uploads/repos/cas/ae/aeea15fb8c108b4d4bfbdc8d1a5aa57ece3de68a4edb98d78092d3fd4c5066f7.png) 在 VirusTotal 上查询了该哈希值。 ![virustotal-output](https://raw.githubusercontent.com/0x0allenace/static-malware-analysis-report/main/screenshots/virustotal-output.png) ![virustotal-community](https://static.pigsec.cn/wp-content/uploads/repos/cas/2b/2b8fb291fc4a3e78e37728abe47a8d690928150e2b78729b69c77d75646a6712.png) ### 分析 * 多个 AV 引擎检测到该文件 * 社区报告将该样本与 AsyncRAT 联系起来 * 这种信誉显著增强了我们的信心,确认分析的样本是恶意的,值得进一步调查。 # 📊 元数据分析 使用 **ExifTool** 检查了可执行文件的元数据,以识别可能提供有关样本来源、编译细节或潜在执行行为见解的嵌入信息。 ### 命令 ``` exiftool malz1.exe.mal ``` ![Metadata Analysis](https://static.pigsec.cn/wp-content/uploads/repos/cas/01/01514e17d128abed3948afa2276a36b8f11844a8a52a12ed43745fdcf5108ab5.png) ### 分析 元数据分析揭示了对 **RuntimeBroker.exe** 的引用,这是一个合法的 Windows 进程,负责管理通用 Windows 平台 (UWP) 应用程序的权限。 尽管 RuntimeBroker.exe 是一个受信任的 Microsoft 二进制文件,但它经常被恶意软件作者滥用,因为它可以混入正常的系统活动中。 它在该样本中的出现表明,恶意软件可能会利用此进程执行恶意操作,例如: - 进程注入 - 防御规避 - 持久化 - 命令与控制 (C2) 通信 这些分析结果与远程访问木马 (RAT)(包括 AsyncRAT)中通常观察到的行为一致。 # 🧵 字符串分析 下一阶段包括从恶意软件样本中提取可打印的 ASCII 和 Unicode 字符串,以识别可能揭示其功能的嵌入工件。 对 **malz20.exe.mal** 执行了以下命令。 ### 命令 ``` strings -n 6 malz20.exe.mal | less ``` ![Strings Output](https://static.pigsec.cn/wp-content/uploads/repos/cas/b1/b1c68e05ab6dac4dc6a503d6c740673e561e9ade8bc8bdb71dbd0f149b57c18d.png) ### 分析 对提取字符串的初步检查揭示了几个值得注意的工件。 标准的 Portable Executable 字符串: ``` This program cannot be run in DOS mode ``` 确认该样本是有效的 Windows PE 可执行文件。 更重要的是,还识别出了与 Windows autorun 机制相关的注册表路径。 示例: ``` CurrentVersion\Run ``` 恶意软件经常滥用此注册表位置来建立持久化,并在用户登录后自动执行。 # 🌐 网络指标发现 为了识别嵌入的与网络相关的工件,对提取的字符串过滤了常见的网络关键字。 ### 命令 ``` strings malz20.exe.mal | grep -Ei 'http|https|ftp|tcp|udp|dns|socket|connect|bind|listen|port|proxy|api' ``` ![Network Indicators](https://static.pigsec.cn/wp-content/uploads/repos/cas/57/579018fb7ccf47eda6d30374fa580bba81a56d672d8ab2944aa070bbef8a7a58.png) 使用 VirusTotal 对发现的域名进行了进一步调查。 ![VirusTotal Domain Analysis](https://static.pigsec.cn/wp-content/uploads/repos/cas/d7/d7ac4c3b1892f3749dcecee79db5505d50e44c65f71e16ab6e451bb7e8cbe2da.png) ### 分析 分析识别出了一个可疑的嵌入域名,认为该域名与恶意软件的网络通信有关。 尽管静态分析无法确认是否存在主动通信,但该域名的出现强烈暗示了潜在的命令与控制 (C2) 基础设施或恶意软件下载端点。 应考虑将此指标用于: - 威胁情报关联 - DNS 监控 - 防火墙黑名单 - SIEM 检测规则 # 🔁 持久化分析 对可执行文件进一步分析了通常与持久化机制相关的指标。 ### 命令 ``` strings malz22.exe.mal | grep -Ei 'run|registry|startup|CurrentVersion|Windows\\CurrentVersion\\Run|HKCU|HKLM|schtasks|task scheduler|service|auto|dllhost|svchost|wscript|powershell|cmd' ``` ![persistence-mechanism](https://static.pigsec.cn/wp-content/uploads/repos/cas/92/92ade93a8d1218d9ed993d3a3eeb65b82e7a7aec5426305c0774ac7742a508ca.png) ### 分析 分析识别出了对 Windows **CurrentVersion\Run** 注册表键的引用。 这个注册表位置是 Windows 恶意软件最常用的持久化机制之一,它使恶意可执行文件能够在用户登录系统时自动启动。 在分析的这一阶段,没有观察到计划任务或 Windows 服务的证据。 # 🌍 IP 地址发现 检查了恶意软件样本中是否存在硬编码的 IPv4 地址指标。 ### 命令 ![IP Address Extraction](https://static.pigsec.cn/wp-content/uploads/repos/cas/f5/f588c4fe0bcb336ab184e302d9163adcdf8ea98b92ca921c7d1ef7444120f61e.png) ### 分析 在提取的字符串中未发现重要的硬编码 IP 地址。 这表明恶意软件可能依赖于: - 域名 - 动态生成的基础设施 - 运行时配置 - 加密的网络配置 需要进一步的动态分析来确定执行期间联系的实际网络端点。 # 🧠 可疑 Windows API 发现 提取了潜在的恶意 Windows API 引用,以识别通常与恶意软件相关的能力。 ### 命令 ``` strings malz22.exe.mal | grep -E "CreateRemoteThread|VirtualAlloc|LoadLibrary|WriteProcessMemory" ``` ![API Indicators](https://static.pigsec.cn/wp-content/uploads/repos/cas/5e/5eda648d6fb677f2c2923bb5659f888f1f80bbaddd74655cdfcb0a4887cbef17.png) ### 分析 识别出几个通常与进程注入和代码执行相关的 Windows API。 值得注意的示例包括: | API | 潜在能力 | |------|----------------------| | `VirtualAlloc` | 在进程内分配内存 | | `WriteProcessMemory` | 将恶意代码写入另一个进程 | | `CreateRemoteThread` | 在远程进程中执行注入的代码 | | `LoadLibrary` | 将恶意 DLL 加载到内存中 | 这些 API 的组合强烈表明对 **进程注入** 的支持,这是一种远程访问木马常用的技术,用于逃避检测并在受信任的 Windows 进程中执行恶意 payload。 这些分析结果与之前与 AsyncRAT 相关的行为一致。 # 📁 文件系统分析 为了识别潜在的文件系统交互,在恶意软件样本中搜索了与文件创建、修改和删除相关的 Windows API 函数。 ### 命令 ``` strings malz2.exe.mal | grep -E "CreateFile|DeleteFile|MoveFile|WriteFile" ``` ![File System APIs](https://static.pigsec.cn/wp-content/uploads/repos/cas/03/030f9369e6185ef786334c5ac38eeb0004c57cf27548061adfd2de0886adfe81.png) ### 分析 在可执行文件中识别出了多个文件操作 API。 这些函数表明恶意软件具有与 Windows 文件系统交互的能力,包括在执行期间创建、修改、移动或删除文件。 此类行为通常与以下内容相关: - Payload 部署 - 释放额外的恶意软件组件 - 日志篡改 - 数据外传前的暂存 尽管静态分析无法确认这些操作会在运行时发生,但这些 API 的存在表明恶意软件具备在主机系统上操作文件的能力。 # 🗂️ 注册表分析 对样本进行了注册表相关字符串分析,以寻找除先前观察到的持久化机制之外的注册表修改证据。 ### 命令 ``` strings malz22.exe.mal | grep -i "registry\|RegOpenKey\|RegSetValue\|RegDeleteKey" ``` ![Registry Analysis](https://static.pigsec.cn/wp-content/uploads/repos/cas/a3/a365471be074f421d8185fe68c8c7e059f7f40563d8d3227c67b58e130487f0f.png) ### 分析 在可执行文件中识别出了与注册表相关的 API 引用。 这些 API 表明恶意软件可以与 Windows 注册表交互,从而允许其: - 创建或修改注册表键 - 存储配置数据 - 建立持久化 - 修改安全设置 - 删除现有的注册表项 结合早先发现的 **CurrentVersion\Run** 注册表键,这些分析结果进一步强化了基于注册表的持久化证据。 # 💻 命令执行分析 在样本中搜索了恶意软件通常滥用的命令解释器和脚本引擎的证据。 ### 命令 ``` strings malz22.exe.mal | grep -i "powershell\|cmd\|wscript\|cscript\|Invoke-" ``` ![PowerShell Analysis](https://static.pigsec.cn/wp-content/uploads/repos/cas/9c/9c04102b3b2aa673ff80dd6d73628542885bdb21c22a6cf2e5c56b729e6974a5.png) ### 分析 识别出了多个对 Windows 脚本实用程序的引用。 这些字符串的存在表明恶意软件可能会利用原生的 Windows 组件来执行命令或脚本。 潜在的功能包括: - PowerShell 执行 - 命令行外壳调用 - Windows Script Host (WSH) 执行 - Living-off-the-Land (LotL) 技术 使用合法的 Windows 实用程序是一种常见的防御规避技术,它允许恶意软件将恶意活动与正常的操作系统进程混合在一起。 # 📧 电子邮件地址发现 为了识别可能表明钓鱼基础设施或攻击者控制的通信渠道的嵌入电子邮件地址,执行了以下搜索。 ### 命令 ``` strings malz22.exe.mal | grep -E "[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}" ``` ![Email Extraction](https://static.pigsec.cn/wp-content/uploads/repos/cas/1b/1bd2741b1e86be53f7b34a4fdcec4566fc23eb7fd1a5db45ccfd7feb5a62bd05.png) ### 分析 在分析的样本中未识别出重要的电子邮件地址。 这表明恶意软件不依赖于硬编码的电子邮件通信,而是可能利用基于网络的命令与控制基础设施。 # 🔐 加密指标分析 检查了可执行文件中是否存在对常见加密算法和编码方法的引用。 ### 命令 ``` strings malz22.exe.mal | grep -E "AES|RC4|Base64|XOR" ``` ![Encryption Indicators](https://static.pigsec.cn/wp-content/uploads/repos/cas/0e/0ef3b9e785b67000f8dc56b3b677c37ef0bbefe9c0559ef788b5377e84471544.png) ### 分析 识别出了多个对加密和编码机制的引用。 检测到的指标包括: - AES - Base64 - XOR 这些分析结果表明恶意软件可能会加密或编码: - 配置数据 - 网络通信 - Payload - 命令与控制流量 在现代恶意软件家族中,加密的使用非常普遍,目的是逃避检测并阻碍取证分析。 # 🔎 Base64 检测 为了识别可能被编码的 payload 或嵌入的配置数据,在样本中搜索了 Base64 编码的字符串。 ### 命令 ``` strings malz21.exe.mal | grep -E "[A-Za-z0-9+/=]{20,}" ``` ![Base64 Detection](https://static.pigsec.cn/wp-content/uploads/repos/cas/92/92fa167c37d0b071f4782eaf2d07e887d1278f2721d7608dd868599db25ec0ae.png) ### 分析 在可执行文件中识别出了几个类似于 Base64 的字符串。 恶意软件作者经常使用编码内容来隐藏: - PowerShell 命令 - URL - 注册表路径 - Shellcode - 配置文件 虽然仅靠静态分析无法确定解码内容,但这些分析结果表明恶意软件采用了额外的混淆层。 # 🔓 FLOSS 分析 为了恢复使用标准 `strings` 实用程序无法看见的混淆字符串,使用 **FLOSS (FireEye Labs Obfuscated String Solver)** 对样本进行了分析。 ### 命令 ``` floss malz32.exe.mal ``` ![FLOSS Output](https://static.pigsec.cn/wp-content/uploads/repos/cas/9b/9b48358f3e063362fd57f8af1fe86e5b88c6d85493d4b20a24d04ef53a70aa47.png) ![FLOSS Output](https://static.pigsec.cn/wp-content/uploads/repos/cas/92/92e14efb11e4e4fa1f15be0a3bdbe65e5ab678cbca0eb7cebcfe1c6f821ec62c.png) ### 分析 FLOSS 成功恢复了在初始字符串提取期间无法看见的额外解码字符串。 恢复的字符串暴露了在可执行文件中被故意混淆的额外功能和配置数据。 这证明了恶意软件采用了旨在阻碍传统静态分析的字符串混淆技术。 ## 仅显示解码字符串 为了减少输出噪音并仅专注于恢复的字符串,FLOSS 在 decoded-only(仅解码)模式下执行。 ### 命令 ``` floss --only decoded -- malz32.exe.mal ``` ![Decoded Strings](https://static.pigsec.cn/wp-content/uploads/repos/cas/44/443c01da918f5d237d9556430a82284a4d7ae83d559390d9bc4d7eb01a33aa74.png) 解码后的输出提供了嵌入在恶意软件样本中的隐藏工件的更清晰视图。 ## 导出 FLOSS 输出 为了进行文档记录和进一步分析,解码的字符串被导出到了一个文本文件中。 ### 命令 ``` floss --only decoded -- malz32.exe.mal > flossmalz32.txt ``` ![Decoded Strings output](https://static.pigsec.cn/wp-content/uploads/repos/cas/fe/fe2288943c1230bc07bdcfa3268034f7d7cf0f3bdf3d8ab557c98af400aa764f.png) 导出的输出可用于: - IOC 提取 - 威胁狩猎 - 恶意软件文档记录 - SIEM 规则开发 ## FLOSS 辅助的 IOC 寻找 由于 FLOSS 以纯文本形式输出解码字符串,因此也可以应用与 `strings` 实用程序相同的过滤技术。 示例: ### 命令 ``` floss malz2.exe.mal | grep -E "CreateFile|DeleteFile|MoveFile|WriteFile" ``` ![floss assisted IOC](https://static.pigsec.cn/wp-content/uploads/repos/cas/e1/e1f917176c30822bf8470dfc7eff9dd2938c82a24dec0cd1fbf7c45dc3511919.png) ### 分析 对 FLOSS 输出应用过滤器产生了类似的结果,同时还暴露了通过混淆隐藏的字符串。 与标准的 `strings` 实用程序相比,FLOSS 对恶意软件嵌入的工件提供了更深入的可见性,使其成为在静态恶意软件分析期间恢复隐藏指标的宝贵工具。 # 🧱 PE 结构分析 使用 **PEview** 对恶意软件样本进行了进一步检查,以分析 Portable Executable (PE) 文件的内部结构。 PEview 提供了 PE 格式的底层视图,允许检查 DOS Header、NT Headers、Section Headers、Import Address Table (IAT)、编译时间戳以及其他结构组件。 在此阶段分析的样本是: ``` malz22.exe.mal ``` ![PEview Overview](https://static.pigsec.cn/wp-content/uploads/repos/cas/a5/a5c55a1fe321620858bd98c66bb02caf0db70a09463cadb351438eebc1b87be1.png) ## DOS Header 分析 检查的第一个组件是 **DOS Header**,通过 **MZ** 签名进行识别。 ![DOS Header](https://static.pigsec.cn/wp-content/uploads/repos/cas/59/596d17b80973ee34f1be817789558bc04fe0ac88cee5d7ee5d251bbe996cadcd.png) ### 分析 恶意软件样本包含有效的 **MZ** 签名,确认它是一个合法的 Windows Portable Executable (PE) 文件。 熟悉的 DOS 存根消息也存在: ``` This program cannot be run in DOS mode. ``` 这是嵌入在 Windows 可执行文件中的标准消息,确认该文件遵循预期的 PE 格式。 # 🕒 编译时间戳分析 检查了 **Image File Header**,以审查可执行文件的编译时间戳。 ![Compilation Timestamp](https://static.pigsec.cn/wp-content/uploads/repos/cas/8f/8f7b501520db49fe3d6b8d6424a7b693cd916f35856bc819f9463a1fb1ef06fc.png) ### 分析 编译时间戳与最近编译的可执行文件一致。 在分析过程中未观察到明显的时间戳篡改证据。 尽管时间戳可能会被恶意软件作者篡改,但在该样本中没有出现表明被故意伪造的异常。 # 📦 节区头分析 检查了 PE **Section Headers**,以确定可执行文件是否已加壳或压缩。 通过比较以下值,特别关注了 **.text** 节区: - Virtual Size - Size of Raw Data ![Section Headers](https://static.pigsec.cn/wp-content/uploads/repos/cas/7d/7d0d88097fa728802dc3c79786dbe5867dba488fab0f28cb861a0222030265eb.png) ### 分析 **Virtual Size** 和 **Raw Data Size** 的值几乎相同。 这表明该可执行文件 **不太可能被加壳**,因为加壳的可执行文件由于运行时解压,其虚拟大小通常比原始大小大得多。 在此阶段未识别出异常的节区大小或可疑的节区名。 # 📊 熵分析 使用 **Detect It Easy (DIE)** 进一步验证了加壳检测。 将恶意软件样本加载到 DIE 中,并执行了 **Entropy** 分析模块。 ![Detect It Easy](https://static.pigsec.cn/wp-content/uploads/repos/cas/2f/2f342af2115fca70976d73607dc0d885440a02c04d38ffb430b59da8bd51b44f.png) ![Entropy Analysis](https://static.pigsec.cn/wp-content/uploads/repos/cas/76/7629ee6ad6840889db8c6cefd85d3fb124f9e2c1fa0d2db56eba004a6ac2b340.png) ### 分析 分析的样本产生的熵值大约为: ``` 5.76872 ``` 这代表 **中等熵**,与标准的可执行文件一致。 没有证据表明该二进制文件被严重加壳或加密。 # 📥 Import Address Table (IAT) 分析 使用 **PEview** 检查了 Import Address Table (IAT),以识别可执行文件导入的外部 Windows API 函数。 ![Import Address Table](https://static.pigsec.cn/wp-content/uploads/repos/cas/d2/d24f77a97bb67903811e4428a843293bdb2d6893c1e7e8c8a37d2d4531111e87.png) ### 分析 识别出了几个通常与恶意行为相关的导入 API。 值得注意的导入包括: | API 函数 | 观察到的能力 | |--------------|---------------------| | `VirtualAllocEx` | 远程内存分配 | | `WriteProcessMemory` | 进程注入 | | `CreateRemoteThread` | 远程代码执行 | | `LoadLibraryA` | 动态 DLL 加载 | 这些 API 的存在表明,恶意软件能够在另一个进程内分配内存、将恶意代码写入该进程并执行注入的 payload。 这些函数被广泛认为是 **进程注入** 的指标,这是一种远程访问木马 (RAT) 经常使用的技术,旨在通过在合法的 Windows 进程内运行恶意代码来逃避检测。 # 🔍 使用 MalAPI 验证 API 为了更好地理解导入的 Windows API,使用 **MalAPI** 研究了选定的函数。 ![MalAPI Search](https://static.pigsec.cn/wp-content/uploads/repos/cas/0a/0a04dabb22e945267e489ec8f1c181c4b4aef7e29f7d812302455632a51b5d33.png) ![MalAPI Results](https://static.pigsec.cn/wp-content/uploads/repos/cas/9a/9a333a9d3e5c1fd49b71ec956e80e08315d7fe37a42efa305a54e6e98cdd0b4c.png) ### 分析 MalAPI 将几个导入的 API 分类为高风险,因为它们经常被恶意软件滥用。 示例包括: | API | 常见的恶意软件用途 | |------|----------------------| | `VirtualAllocEx` | 分配可执行内存 | | `WriteProcessMemory` | 注入恶意 payload | | `CreateRemoteThread` | 执行注入的代码 | | `LoadLibraryA` | 动态加载恶意 DLL | 在本次调查中识别出的导入 API 与执行进程注入和防御规避的恶意软件家族中观察到的行为高度一致。 # 🧪 PEStudio 分析 使用 **PEStudio** 对恶意软件样本进行了分析,以验证之前的分析结果并识别额外的可疑指标。 ![PEStudio Overview](https://static.pigsec.cn/wp-content/uploads/repos/cas/0f/0f77c37f26e664c4af95d39ed05f3b5f753bdfd77fe2f07f14674c1d35854986.png) ## 可疑指标 PEStudio 突出显示了几个通常与恶意可执行文件相关的指标。 ![PEStudio Indicators](https://static.pigsec.cn/wp-content/uploads/repos/cas/92/9206cc30c66d8be323d1a3d98bbcf5deb6a0f0f938ef6b137bc0fe86af0f6fdb.png) ### 分析 该工具标记了多个可疑特征,包括: - 可疑的导入 API - 注册表持久化指标 - 嵌入字符串 - 与网络相关的工件 这些分析结果证实了在调查早期阶段所做的观察。 ## VirusTotal 集成 PEStudio 使用样本的 SHA-256 哈希自动查询了 VirusTotal。 ![PEStudio VirusTotal](https://static.pigsec.cn/wp-content/uploads/repos/cas/4c/4ca641872ad8904079c3c1f6c84595066d15c01aac58b4926549673ed1fd654a.png) ### 分析 VirusTotal 报告了来自众多防病毒供应商的检测情况。 这些结果与早先的手动 VirusTotal 查询一致,并进一步确认了分析样本的恶意性质。 ## 导入函数 PEStudio 内部的导入函数分析识别出了几个通常与恶意软件相关的 Windows API。 ![PEStudio Imports](https://static.pigsec.cn/wp-content/uploads/repos/cas/0b/0b01b74e54d6cdcf397e65b44e6d651abe537f2be6dce9a68e1d95f1211ac313.png) ### 分析 PEStudio 突出显示了与以下内容相关的 API: - 进程注入 - 内存分配 - 注册表修改 - 网络通信 这些导入函数强化了这样一种评估,即可执行文件具备通常与远程访问木马相关的能力。 ## 嵌入字符串 PEStudio 识别出了几个嵌入的字符串,可能有助于威胁狩猎和恶意软件归因。 ![PEStudio Strings](https://static.pigsec.cn/wp-content/uploads/repos/cas/8d/8d8c3f56295e2b3bd673520651b8ec9d88775c3210dae2e642cd23299e8dd8ac.png) ### 分析 提取的字符串包括: - 注册表路径 - 可疑域名 - Windows API 引用 - 可执行文件名 这些工件提供了有价值的入侵指标 (IOC),可以整合到检测规则和威胁情报平台中。 ## 节区分析 审查了 PEStudio 的节区分析,以识别 PE 结构内的异常。 ![PEStudio Sections](https://static.pigsec.cn/wp-content/uploads/repos/cas/02/0207de398d4e254087aadd73d822c49439b1c3707d9c5153d698987a66b6a697.png) ### 分析 未观察到重叠节区或异常高熵值的证据。 尽管表现出了许多恶意特征,但该可执行文件仍保持了有效的 PE 结构。 ## 清单和数字签名还检查了可执行文件的清单和数字签名信息。 ![PEStudio Manifest](https://static.pigsec.cn/wp-content/uploads/repos/cas/e6/e6c54f5e9f831e3e2bbb8584aed97b251a990b2b73722097b5be18e981f240aa.png) ### 分析 不存在受信任的数字签名。 缺少有效的代码签名证书进一步降低了对该可执行文件合法性的信任度,并支持了样本是恶意的总体评估。 # # 恶意软件能力分析 ## 使用 CAPA 进行能力分析 使用 **CAPA** 对样本进行分析,以识别嵌入的恶意软件能力,CAPA 是由 Mandiant 开发的一款静态恶意软件能力检测工具。CAPA 通过将代码模式与综合规则集进行匹配来识别恶意软件行为,而无需执行二进制文件。 ### 命令 ``` capa malz31.exe.mal ``` ![CAPA Overview](https://static.pigsec.cn/wp-content/uploads/repos/cas/c6/c62fa1b861a9a9972565f64a4d99b409c5d891077a46d1ea64a43f4a9097e7c6.png) ## 样本元数据 CAPA 输出的第一部分提供了有关分析文件的元数据。 ### 分析 - SHA-256 哈希 - 文件格式 - 目标架构 - 操作系统 - 分析时间戳 此信息确认了样本的身份,并为后续分析提供了上下文。 ![CAPA Metadata](https://static.pigsec.cn/wp-content/uploads/repos/cas/c0/c0d1bc3b23959e5e37e6d3927a8b8f5c19a4104a5730503c2b76cb8c46337061.png) ## MITRE ATT&CK 映射 CAPA 将检测到的行为映射到 **MITRE ATT&CK** 框架,从而提供了对恶意软件中实现的攻击者技术的深入了解。 ![MITRE ATT&CK Mapping](https://static.pigsec.cn/wp-content/uploads/repos/cas/19/195c83af26ef3de1012e49cbdfc8248fe7bfa6f2c8905301486922a25c2d6ee3.png) ### 观察到的技术 | ATT&CK 技术 | 描述 | |------------------|-------------| | Process Injection | 将恶意代码注入合法进程 | | Command and Control | 与外部基础设施通信 | | Defense Evasion | 用于减少检测的技术 | | Persistence | 用于维持访问权限的机制 | ATT&CK 映射有助于将恶意软件的行为与已知的攻击者战术和技术相关联。 ## MAEC 分类 CAPA 还将分析结果映射到 **Malware Attribute Enumeration and Characterization (MAEC)** 框架。 ![MAEC Mapping](https://static.pigsec.cn/wp-content/uploads/repos/cas/02/028cd0517db3fa6a9f7119c5b03c3611790e02328fdbf0b9bf1fe02f147eae4e.png) ### 分析 样本表现出的行为通常与以下内容相关: - 恶意软件执行 - 进程注入 - 持久化 - 网络通信 MAEC 提供了一种描述恶意软件特征的标准化方法,使情报更易于在安全团队之间共享。 ## 恶意软件行为目录 (MBC) CAPA 进一步使用 **恶意软件行为目录 (MBC)** 对行为进行分类。 ![MBC Mapping](https://static.pigsec.cn/wp-content/uploads/repos/cas/9a/9a3e00e0b9f3ac6837a73ed4ca8a3995ef6dbd6f248cd4340453c74d7539191a.png) ### 分析 恶意软件表现出的行为与以下内容相关: - 代码注入 - 进程操纵 - 内存操作 - 网络活动 - 持久化 MBC 映射通过专门关注恶意软件能力,提供了超越 ATT&CK 的额外行为上下文。 ## 能力总结 能力部分列出了在可执行文件中检测到的恶意行为。 ![Capability Summary](https://static.pigsec.cn/wp-content/uploads/repos/cas/be/bea8f55392fbf07cc3bf2c690b4fa56caa8e832f2809e02517ebbf33625808b1.png) ### 检测到的能力 - 进程注入 - 内存分配 - 远程线程创建 - 网络通信 - 数据加密 - 注册表持久化 这些能力与远程访问木马 (RAT) 中通常观察到的行为高度一致。 ## 详细分析 为了获得支持各项能力的额外证据,CAPA 在详细 模式下执行。 ### 命令 ``` capa -v malz31.exe.mal ``` ![CAPA Verbose](https://static.pigsec.cn/wp-content/uploads/repos/cas/e0/e02b6e1d70004f87c002c6b5b26b1814bc81d2dc3b0794e84096c4a4d9db0647.png) ### 分析 详细输出揭示了: - 匹配的检测规则 - 函数偏移量 - 引用的 Windows API - 支持每个识别出的能力的证据 此附加上下文有助于验证检测结果,并识别出负责每种恶意行为的代码部分。 ## 深度分析 为了更全面地了解恶意软件的功能,CAPA 在双重详细 模式下执行。 ### 命令 ``` capa -vv malz31.exe.mal ``` ![CAPA Double Verbose](https://static.pigsec.cn/wp-content/uploads/repos/cas/b8/b8dbcf25e93b61ce07724bffc3d5360624b88888bca77dd37b353c7f20e58d37.png) ### 分析 详细输出包括: - 部分规则匹配 - 额外的行为证据 - 内部函数引用 - 扩展的能力元数据 这种级别的分析对于逆向工程非常有价值,并为识别出的行为提供了更高的可信度。 ## 总体评估 CAPA 分析识别出了多种通常与现代 Windows 恶意软件相关的能力,包括: - 进程注入 - 内存操作 - 持久化机制 - 网络通信 - 加密功能 这些分析结果强化了在静态分析早期阶段获得的结果,并且与表现出 **远程访问木马 (RAT)** 特征的恶意软件一致。 # 入侵指标 (IOC) | 类型 | 指标 | 描述 | |------|-----------|-------------| | 注册表 | `CurrentVersion\Run` | 基于注册表的持久化机制。 | | API 调用 | `CreateRemoteThread`, `VirtualAllocEx`, `WriteProcessMemory` | 用于进程注入和代码执行的常见 API。 | | 进程 | `RuntimeBroker.exe` | 经常被滥用于进程注入和防御规避的合法 Windows 进程。 | | 网络 | 识别出的可疑域名 | 在字符串分析期间发现的潜在命令与控制 (C2) 基础设施。 | # MITRE ATT&CK 映射 | 战术 | 技术 | ID | |---------|-----------|----| | Persistence | Registry Run Keys / Startup Folder | T1547.001 | | Defense Evasion | Process Injection | T1055 | | Command and Control | Application Layer Protocol | T1071 | | Discovery | File and Directory Discovery | T1083 | # 分析总结 静态分析识别出了多个通常与 Windows 恶意软件相关的特征。 ### 观察到的行为 - 基于注册表的持久化 - 进程注入能力 - 可疑的 Windows API 使用情况 - 网络通信指标 - 编码和混淆的字符串 - 内存操纵的证据 - 未检测到明显的加壳 - 在 VirusTotal 上有多个防病毒软件检测到该样本 - CAPA 识别出的能力与远程访问木马 (RAT) 行为一致 总而言之,这些分析结果表明,被分析的样本表现出了与 **远程访问木马 (RAT)** 相一致的行为,威胁情报显示其与 **AsyncRAT** 具有相似之处。 尽管静态分析提供了对恶意软件结构和潜在能力的宝贵见解,但诸如进程创建、注册表修改、网络通信和持久化机制等运行时行为,应在受控的沙箱环境中通过动态分析进行验证。 ## 仓库结构 Static-Malware-Analysis/ │ ├── README.md ├── LICENSE ├── tools-used.md ├── sample-hashes.md │ ├── docs/ │ ├── IOC.md │ ├── MITRE-Mapping.md │ └── References.md │ ├── samples/ │ ├── hashes.txt │ └── README.md │ └── screenshots/ # 结论 本次调查使用基于 Linux 和基于 Windows 的恶意软件分析工具,成功地对多个可疑的 Windows Portable Executable (PE) 样本进行了全面的静态分析。 在整个分析过程中,识别出了多个恶意行为指标,包括可疑的 API 导入、注册表持久化机制、潜在的命令与控制基础设施、进程注入能力以及编码字符串。使用 PEview、Detect It Easy (DIE)、PEStudio 和 CAPA 进行的附加分析进一步验证了这些观察结果,并将恶意软件的能力映射到了既定的威胁情报框架,例如 MITRE ATT&CK、MAEC 和 Malware Behavior Catalog (MBC)。 综合证据有力地表明,分析的样本具备通常与远程访问木马 (RAT) 相关的特征,特别是表现出与 AsyncRAT 类似行为的恶意软件。 静态分析为理解恶意软件功能提供了必要的基础,同时通过避免执行来将风险降至最低。然而,仍然需要通过动态分析来验证运行时行为,并全面了解恶意软件的执行流程、持久化机制和网络通信。 # 免责声明 此分析是在受控的实验室环境中进行的,仅出于教育、研究和防御性网络安全目的。 未在生产系统上执行任何恶意软件样本,所有观察结果均是通过静态分析技术获得的。本报告中提供的信息仅旨在支持恶意软件分析教育、事件响应和威胁研究。 **作者:** Allen Ace **分析类型:** 恶意软件静态分析 **环境:** REMnux • FLARE-VM **状态:** 已完成
标签:ATT&CK映射, DAST, Windows PE, 云安全监控, 云资产清单, 威胁情报, 安全报告, 开发者工具, 恶意软件分析, 逆向工程, 速率限制处理, 静态分析