静态分析:使用PEStudio进行基础分析

admin 2026-01-28 17:42:52 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文介绍使用PEStudio进行恶意样本静态分析。作者从MalwareBazaar获取AsyncRAT样本,通过检查哈希、文件结构、导入函数及字符串,识别出样本具备隐身执行、反调试、C2通信及反沙箱等行为。文章结合MalAPI辅助理解功能,最终判定该样本为恶意软件,展示了基础分析流程。 综合评分: 78 文章分类: 恶意软件,逆向分析,安全工具


cover_image

静态分析:使用 PEStudio 进行基础分析

haidragon haidragon

安全狗的自我修养

2026年1月28日 07:50 湖南

官网:http://securitytech.cc

大家好!

今天我们将使用 PEStudio 对刚刚在 Flare-VM 上安装的环境里的恶意样本进行分析。 我们使用的技术是 静态分析(Static Analysis)。

静态分析是指在不实际执行代码的情况下,检查可疑文件或程序以识别恶意特征的过程。 相比动态分析,这种方法更安全。静态分析通常涉及分析文件属性、字符串、头部信息和代码结构,以识别攻击指标(IOC),例如恶意 IP、URL、打包文件等。

在本次实践中,我使用 PEStudio 9.61 分析样本。由于刚开始学习,我主要做基础操作,如指纹识别(Fingerprinting)、字符串提取和文件头分析。


PEStudio 是一个功能强大、免费、可移植的静态分析工具。 它可以在不运行程序的情况下检查 Windows 可执行文件(如 .exe 和 .dll)。

PEStudio 的能力包括:功能识别、字符串分析、VirusTotal 集成等。这些功能有助于快速发现恶意指示器,如可疑 API 导入、嵌入字符串或异常行为,并标记以便进一步分析。


本次实践中,我从 MalwareBazaar 获取样本。 MalwareBazaar 是由 abuse.ch 运营的免费社区驱动恶意软件库,用于收集和共享实时恶意软件样本,帮助安全研究人员、事件响应人员和杀毒厂商分析威胁。 简单来说,它就是一个免费的恶意软件数据库,你可以在网站上找到大量样本。


获取样本

确保你已经下载了自己的样本。 你可以从 MalwareBazaar 或其他恶意软件数据库获取。

为了降低风险,请在 Flare-VM 中下载样本,而不是在宿主机执行。下载完成后解压 zip 文件,密码通常是 infected,如果不对,可以查看下载页面提供的密码。


打开网站:

在 MalwareBazaar 数据库中搜索样本,我用 AsyncRAT 标签搜索:

点击蓝色 hash 文本查看详情,或直接点击下载按钮:

详情页面:

下载后,用 7-Zip 在 Flare-VM 中解压获取可执行文件:


在使用 PEStudio 分析前,先用终端 file 命令检查文件类型:

我的样本是 PE32 可执行文件,说明可以开始分析。


PEStudio 安装与运行

运行 PEStudio 前,需先安装:

  • VC_redistx64
  • VC_redistx86

安装完成后重启计算机,然后用 Windows 搜索运行 PEStudio:

接下来,把样本拖入 PEStudio:


开始分析

第一步,获取样本 哈希信息。 在 PEStudio 的 Sidebar 中选择 Footprints。 如果想获得更多哈希信息,也可以用 PowerShell:

Get-FileHash&nbsp;<sample>

哈希用于唯一标识样本,文件内容改变时哈希会随之改变,有助于追踪完整性。


接着查看样本 架构,在 Parent 选项卡中可以看到:

  • 哈希
  • 文件前 32 字节
  • 文件信息、类型、版本
  • 入口点
  • 文件签名
  • 时间戳
  • 文件名
  • 调试器名

我的样本是 32 位架构

记录原始文件名和编译时间戳,这对分析有参考价值,但攻击者可能伪造时间戳,所以不要完全信任。


分析样本能力

通过 标记的导入函数和字符串可以发现样本能力。有些未标记数据也可能隐藏危险,需要仔细分析。

我的样本有 10 个标记项,未标记数据里显示 AsyncRAT

字符串分析也能发现样本功能:


样本功能总结

  1. Set Use Shell Execute(隐身机制)
  • 控制进程启动方式,通常设为 false 以绕过 Windows Shell,实现标准输出重定向,悄悄执行系统检查而不弹出窗口。

  1. Get Foreground Windows(监视)
  • 获取当前前台窗口句柄,常用于键盘记录器和间谍软件。

  1. Get Current Process(枚举)
  • 获取当前进程句柄,可用于权限提升操作。

  1. Remote Debugger Presence Checker(反分析/反调试)
  • 检测是否有调试器存在。

  1. Send(C2 通信)
  • 发送数据到已连接的 Socket,异步 RAT 通过 mscoree.dll 导入,隐藏网络功能。

  1. Gather Computer Information(反分析/反沙箱)
  • Select * from Win32_ComputerSystem 获取系统信息,用于检测是否虚拟机。

  1. Gather Antivirus Information(侦察)
  • Select * from AntivirusProduct 获取已安装杀毒软件信息。

  1. Set Process as System Critical(保护)
  • 防止进程被终止,终止会导致系统崩溃,阻止用户或分析人员杀掉进程。


可以使用 MalAPI 查看这些 API 的作用,它会把 Windows API 映射到常见恶意技术,帮助理解恶意代码与系统交互方式:


样本字符串示例

  • RunAntiAnalysis
  • AntiAnalysis
  • Set_Credentials
  • AsyncRAT.exe
  • MySuperSecretKey2026!@#456
  • Select * from Win32_ComputerSystem
  • Select * from AntivirusProduct
  • patanlivenews.in.net

VirusTotal 扫描结果

在 PEStudio 的 VirusTotal 标签页可查看:

可见,我分析的样本确实是恶意软件。


在本次基础分析中,没有进行深度熵分析或检测打包,但字符串清晰,说明样本可能未被严重打包。


初步结论

根据收集的数据,你可以给样本做一个 初步结论(preliminary verdict): 快速判断文件是恶意、良性还是可疑,通常通过静态和动态自动化技术完成,帮助安全团队优先处理最危险的威胁。

  • 公众号:安全狗的自我修养
  • vx:2207344074
  • http://gitee.com/haidragon
  • http://github.com/haidragon
  • bilibili:haidragonx

#


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:安全狗的自我修养 haidragon haidragon《静态分析:使用 PEStudio 进行基础分析》

评论:0   参与:  0