ExTR0-lab/Static-Malware-analysis

GitHub: ExTR0-lab/Static-Malware-analysis

一个展示 Windows DLL 静态恶意软件分析完整流程的实战案例项目,涵盖从文件检查到 IOC 提取的 SOC 核心技能。

Stars: 0 | Forks: 0

# 静态恶意软件分析 – 可疑 Windows DLL 在本项目中,我分析了一个可疑的 Windows DLL 文件,旨在练习现实世界中的 SOC 调查技术。目标是在不执行文件的情况下安全地分析它,揭示潜在的恶意行为,并提取有意义的威胁检测指标。 本项目展示了静态恶意软件分析的动手技能,包括文件检查、哈希校验、字符串提取和 PE 结构分析,这些都是安全运营中心 (SOC) 的常用技能。 # 使用的工具 PEStudio – 用于 PE 结构和元数据分析 FLOSS – 用于揭示隐藏或混淆的字符串 VirusTotal – 用于信誉和 IOC 检查 HashMyFiles – 用于生成 MD5 和 SHA256 哈希值 Microsoft x64 Strings – 用于可读字符串提取 Hex Editor – 用于检查原始二进制数据 # 步骤 1 – 在 Hex Editor 中检查文件 我做的第一件事是在十六进制编辑器中打开文件,以了解其基本结构。 我立刻发现了 “4D 5A” (MZ) 头,确认这是一个 Windows PE 文件。我还看到了熟悉的消息: 𝘛𝘩𝘪𝘴 𝘱𝘳𝘰𝘨𝘳𝘢𝘮 𝘤𝘢𝘯𝘯𝘰𝘵 𝘣𝘦 𝘳𝘶𝘯 𝘪𝘯 𝘋𝘖𝘚 𝘮𝘰𝘥𝘦 随着进一步滚动,我注意到: 填充了空字节或填充字节的节 高度不可读的数据块,可能被混淆或加壳 这些早期观察已经暗示该文件可能隐藏了其真实行为 —— 这是恶意软件中的常见策略。 视频演示:https://youtu.be/f_XYy6GP_-I?si=TgWaHE7zzB8VnWWS # 步骤 2 – 哈希与信誉检查 接下来,我使用 HashMyFiles 生成了文件的 MD5 和 SHA256 哈希值,并在 VirusTotal 上进行了检查。 结果很明确:72 家安全厂商中有 61 家将该文件标记为恶意 该文件被确认为可疑 DLL 熵值分析显示: 节 熵值 备注 .text 6.15 轻微随机化,可能存在轻度混淆 .rdata 4.14 正常 .pdata 3.41 正常 .text 节中较高的熵值表明该文件可能在隐藏或混淆其代码,尽管它并未完全加壳。 视频演示:https://youtu.be/CGwaYs-PNGg?si=HE3e1ZqIMz3C1XqI # 步骤 3 – 提取可读字符串 我使用 Microsoft x64 Strings 提取了所有四个或更多字符的可读字符串。 一些关键发现包括: 网络相关 API 调用,如 WinHttpOpen, WinHttpConnect, SendRequest, CloseHandle 暗示 HTTP 通信的字符串,包括 POST 和 Cookie 头 这指向潜在的网络活动,例如数据窃取或与命令控制 (C2) 服务器的通信。 视频演示:https://youtu.be/Jjl7f6AYQMw?si=ouwbQOtdDTFtz7Qt # 步骤 4 – 使用 FLOSS 揭示隐藏字符串 并非所有字符串在静态下都可见。有些是在运行时生成或解码的。 使用带有 --no-static 标志的 FLOSS,我能够揭示之前工具错过的隐藏字符串。 最值得注意的是,我发现了一个潜在的命令控制 (C2) 域名:𝐩𝐨𝐝𝐢𝐮𝐦𝐬𝐭𝐫𝐭𝐬𝐬.𝐜𝐨𝐦 该域名多次出现,表明恶意软件可能试图进行外部通信。 视频演示:https://youtu.be/c3dM7pgqmgk?si=gCtm4Oha29ym0aYw ) # 步骤 5 – 使用 PeStudio 进行 PE 结构分析 最后,我使用 PeStudio 检查了 DLL 以获取其结构的完整视图: 64 位 DLL 整体熵值:4.665(中等随机性,存在一些混淆) 可执行节:.c 和 .text PE 头显示了 Microsoft 链接器签名,与较旧的 Visual Studio 构建版本一致。 可疑导入包括: DLL 关键函数 用途 winhttp.dll WinHttpOpen, WinHttpConnect 网络通信 kernel32.dll Various 核心 Windows API 调用 advapi32.dll Registry, privileges 系统修改 shell32.dll / user32.dll Various 系统交互,潜在的持久化 PeStudio 还标记了 15 个潜在的恶意指标,进一步证实该 DLL 属于高风险文件。 视频演示:https://youtu.be/swiyfG9U-7k?si=6YRHIH1vSPpOZjWZ # 妥协指标 类型 值 域名 podiumstrtss.com 检测率 15 / 94 (VirusTotal) 和 检测率 52% (hybrid-analysis) 文件类型 Windows PE DLL 可疑 API WinHttpOpen, WinHttpConnect, SendRequest # 分析报告 – 可疑 Windows DLL 对该 DLL 的静态分析揭示了多个恶意活动指标。该文件被确认为具有中等混淆程度的 Windows PE 可执行文件,表现为 .text 节中的熵值升高以及不可读的数据块。 关键发现: 信誉:61/72 家安全厂商将该文件标记为恶意。 字符串与行为:网络相关 API(WinHttpOpen, WinHttpConnect, SendRequest)和 HTTP 指标(POST, Cookie)暗示潜在的出站通信。 隐藏数据:FLOSS 分析揭示了一个可能的命令控制域名:podiumstrtss.com。 PE 结构与导入:可执行节(.c, .text)和可疑的 DLL 导入(winhttp.dll, advapi32.dll, kernel32.dll)表明可能存在网络活动、注册表操作和持久化机制。 结论: 该 DLL 表现出强烈的恶意软件特征,可能设计用于网络通信和数据窃取。提取的 IOC 可用于检测、监控和进一步的 SOC 调查,且无需执行该文件。SS 和 x64 Strings,我能够安全地调查恶意软件并提取有意义的 IOC。
标签:Ask搜索, Cloudflare, DAST, DeepSeek, DNS 反向解析, FLOSS, Hex Editor, IOC提取, MD5, MITRE ATT&CK, PEStudio, PE文件结构, SHA256, SOC调查, VirusTotal, Windows DLL, 二进制分析, 云安全监控, 云安全运维, 云资产清单, 可移植可执行文件, 哈希校验, 威胁情报, 安全实验室, 开发者工具, 恶意软件分析, 文件签名, 混淆分析, 熵值分析, 病毒检测, 网络信息收集, 网络安全, 逆向工程, 隐私保护, 静态分析, 黑盒测试