eylommaayan/THM---FlareVM-Arsenal-of-Tools

GitHub: eylommaayan/THM---FlareVM-Arsenal-of-Tools

一份记录在 TryHackMe FlareVM 环境中对恶意软件样本进行静态分析、动态分析和数字取证全流程的实战 Walkthrough 报告。

Stars: 0 | Forks: 0

# THM---FlareVM-Arsenal-of-Tools 这个脚本将一个普通的 Windows 系统转变为了世界上最先进的 Malware Analysis 和 DFIR (Digital Forensics and Incident Response) 实验室之一。 image 以下是为你的 GitHub `README.md` 准备的精炼、超级专业且组织严密的报告 (Walkthrough) 版本。我利用 Markdown 编辑工具,将所有原始信息、翻译以及实际动手实验中的发现,整合到了一个易读、便于扫视且排版精美的结构中。 # 🧰 THM: FlareVM – Arsenal of Tools 指南 **FlareVM** 环境(是 *Forensics, Logic Analysis, and Reverse Engineering* 的缩写)是由 **Mandiant (FireEye)** 公司的 **FLARE** 团队开发的一套全面且先进的工具集。它可以将标准的 Windows 系统转变为顶级的恶意软件分析、数字取证和事件响应 (DFIR) 实验室。 在本报告中,我将记录在隔离实验室中对恶意软件样本 进行研究、静态分析、动态分析以及各种工具实际使用的步骤。 ## 🗺️ 工具库及其调查价值 为了进行初步的检查和逆向工程,我根据系统核心工具的类别及其调查价值对它们进行了分类: | 工具名称 | 类别 | 调查与分析价值 | | --- | --- | --- | | **PEStudio** | 静态分析 | 在不实际执行的情况下检查可执行文件的特征(哈希值、导入函数、熵值)。 | | **CFF Explorer** | 静态分析 | 编辑和分析 PE (Portable Executable) 文件,验证来源并识别异常更改。 | | **FLOSS** | 静态分析 | 自动提取和解密源代码中隐藏和加密的字符串。 | | **HxD** | 文件分析 | 轻量级的十六进制编辑器,允许查看和编辑二进制原始数据值。 | | **Process Explorer** | 动态分析 | 实时监控活动进程,展示父子 关系树以及已加载的 DLL 文件。 | | **Procmon** | 动态分析 | 实时记录系统文件、注册表和网络活动的所有变化。 | | **Wireshark** | 网络分析 | 捕获、分析和调查网络流量,以追踪可疑请求或数据泄露。 | ## 🔬 实际分析与实验中的发现 ### 1️⃣ 第一阶段:可疑文件 (`windows.exe`) 的静态分析 **场景:** 组织中的一名用户在 2024 年 9 月 24 日凌晨 3:43 下载了一个名为 `windows.exe` 的可疑文件。该文件被标记为潜在威胁并转移到了调查文件夹:`C:\Users\Administrator\Desktop\Sample`。 #### 来自 PEStudio 的发现: * **指标与哈希值:** 提取了文件的 Hash 值,以便与威胁情报数据库(如 VirusTotal)进行比对: * **MD5:** `9FDD4767DE5AEC8E577C1916ECC3E1D6` * **SHA-1:** `A1BC55A7931BFCD24651357829C460FD3DC4828F` * **伪装:** 该文件在其元数据中声称它与 Windows Registry Editor (`REGEDIT`) 相关,但它是从下载文件夹运行的,而不是从合法路径 `C:\Windows\System32` 运行的。 * **可疑的源语言:** 元数据中的源语言是俄语 (`Редактор реестра`),这在非俄语环境中构成了一个危险信号。 * **熵值:** 熵值为 **`7.999`**(非常接近最大值 8)。这个数据在数学上证明了该文件是**加壳或经过混淆处理** 的,目的是为了逃避传统的防病毒软件。 * **权限:** 在 Manifest 部分下,`requestedExecutionLevel` 的值被设置为 `requireAdministrator`,这意味着该恶意软件在执行时会强制请求高权限的管理员权限。 * **导入地址表 (IAT) 分析:** * `set_UseShellExecute`: 允许该文件使用操作系统的 Shell 来派生新进程。 * `CryptoStream`, `RijndaelManaged`, `CreateDecryptor`: 这些函数表明使用了 AES (Rijndael) 加密——这是勒索软件活动或在第二阶段解密恶意代码的明确迹象。 #### 来自 FLOSS 的发现: 我在 PowerShell 中运行了以下命令来提取可读的文本字符串: ``` FLOSS.exe .\windows.exe > windows.txt ``` 输出确认了这是一个基于 `.NET` 环境的文件,并验证了在 PEStudio 中发现的那些可疑 API 函数的存在。 ### 2️⃣ 第二阶段:动态分析与网络行为 (`cobaltstrike.exe`) 此阶段的目的是检查 `cobaltstrike.exe`(进程标识符:`4756`)是否试图与外部的命令与控制服务器 进行通信。 #### 使用 Process Explorer 进行监控: 我手动运行了该恶意软件,并在 Process Explorer 中发现,合法进程 `explorer.exe`(Windows 用户界面)是作为父进程 生成了 `cobaltstrike.exe` 这个子进程。在该进程的 **TCP/IP** 选项卡下,我看到了对外连接的尝试。 #### 使用 Procmon 进行验证与降噪: 为了获得详细且准确的日志,我打开了 Process Monitor 并启用了专用过滤器 (`Ctrl + L`): ### 3️⃣ 第三阶段:补充文件分析 * **在 HxD 中读取原始比特 (`possible_medusa.txt` 文件):** 在十六进制编辑器中检查该文件时,我发现它以字符 `4D 5A`(字母 **MZ** 的 ASCII 表示——Windows 可执行文件的 Magic Number)开头。这意味着它是一个伪装成无害文本文件的恶意可执行文件。 * **在 CFF Explorer 中编辑结构:** 在 DOS Header Section(DOS 头部分)下分析 `possible_medusa.txt` 文件时,其 `e_magic` 值被验证为 `5A4D`。 ## 🎯 TryHackMe 房间任务解答与答案汇总 | TryHackMe 中的问题 | 准确的输入答案 | | --- | --- | | *Using PEStudio, open the file windows.exe. What is the entropy value?* | **`7.999`** | | *What is the value under requestedExecutionLevel in manifest?* | **`requireAdministrator`** | | *Which function allows the process to use the operating system's shell to execute other processes?* | **`set_UseShellExecute`** | | *Which API starts with R and indicates cryptographic functions?* | **`RijndaelManaged`** | | *What is the Imphash of cobaltstrike.exe?* | **`92EEF189FB188C541CBD83AC8BA4ACF5`** | | *What is the defanged IP address to which the process cobaltstrike.exe is connecting?* | **`47[.]120[.]46[.]210`** | | *What is the destination port number used by cobaltstrike.exe?* | **`81`** | | *During our analysis, we found cobaltstrike.exe. What is its parent process?* | **`explorer.exe`** |
标签:AD攻击面, AI合规, DAST, 云资产清单, 安全工具集, 库, 应急响应, 恶意软件分析, 数字取证, 自动化脚本, 逆向工程