windows样本分析之基础动态分析
字数 1996 2025-08-25 22:59:09

Windows样本分析之基础动态分析教学文档

一、动态分析概述

1.1 动态分析的定义与目的

  • 定义:通过实际运行样本程序来监控其行为
  • 主要目的
    • 鉴定样本黑白(当静态分析失败或不准确时的第二步)
    • 获取样本的简单行为特征
    • 分析样本的运行原理

1.2 动态分析的基本原理

  • 监控样本在运行时的各种行为
  • 实现方式:
    • 手动双击执行或带参数运行样本
    • 使用监控工具抓取样本行为
    • 通过沙箱环境监控样本运行

二、动态分析流程

2.1 基本分析流程

  1. 先进行简单静态分析
  2. 沙箱分析:
    • 使用开源在线沙箱
    • 或使用本地沙箱进行初步行为获取
  3. 手动分析:
    • 在受控环境中运行样本
    • 使用专业工具监控行为

2.2 判定标准

  • 根据样本行为和衍生物判断样本性质
  • 重点关注:
    • 文件系统操作
    • 注册表修改
    • 网络通信
    • 进程操作
    • 自启动机制

三、实践案例1:Lab03-01.exe分析

3.1 静态分析发现

  1. 字符串特征

    • HTTP请求特征:CONNECT %s:%i HTTP/1.0\r\n\r\n
    • 访问特定域名:www.practicalmalwareanalysis.com
  2. 自启动机制

    • SOFTWARE\Classes\http\shell\open\command - HTTP协议默认处理程序
    • Software\Microsoft\Active Setup\Installed Components\ - 检测是否为安装组件
    • SOFTWARE\Microsoft\Windows\CurrentVersion\Run - 开机自启动项
  3. 隐藏行为

    • 伪装成正常程序:vmx32to64.exe
    • 可能位置:C:\Users\Olivia\AppData\Local\Temp\KeJsFBhoviIbosu8hR1K.exe
  4. 加壳/混淆

    • 导入函数少但字符串表内容丰富
    • PEiD检测结果:PEncrypt 3.1 Final -> junkcode

3.2 沙箱分析结果

  1. 主机感染行为

    • 设置开机自启动注册表键值
    • 创建互斥量WinVMX32防止多开
    • 可能隐藏自身到临时目录
  2. 网络行为

    • HTTP请求访问www.practicalmalwareanalysis.com(网站已失效)

3.3 分析结论

  • 判定为恶意样本的依据:
    1. 使用了加壳技术(常见于恶意软件)
    2. 存在敏感行为:
      • 访问特定网站
      • 多种自启动机制
      • 隐藏自身行为

四、实践案例2:Lab03-04.exe分析

4.1 沙箱分析结果

  1. 主机感染行为

    • 删除文件操作
    • 修改Internet选项,添加信任站点
  2. 网络感染行为

    • C2通信:88.221.52.75
    • 网页访问:216.58.205.238

4.2 手动分析发现

  1. 样本自删除

    • 执行后样本消失
    • 通过Process Monitor可观察到:
      • cmd进程创建
      • 执行自删除指令
  2. 添加信任站点

    • 修改注册表键值实现
    • 可通过过滤条件捕获相关注册表修改

4.3 分析结论

  • 捕获的主要行为:
    1. 通过注册表修改实现Internet可信任站点设置
    2. 创建cmd进程实现自删除
    3. 部分网络行为未触发

五、关键监控点与工具

5.1 关键监控点

  1. 注册表操作

    • 自启动相关键值
    • Internet设置相关键值
    • 文件关联相关键值
  2. 文件系统操作

    • 文件创建/修改/删除
    • 自身复制/移动
    • 临时文件创建
  3. 进程操作

    • 子进程创建
    • 进程注入
    • 进程终止
  4. 网络通信

    • HTTP请求
    • C2服务器通信
    • DNS查询

5.2 推荐工具

  1. 沙箱工具

    • VirusTotal(在线)
    • Hybrid Analysis(混合)
    • Cuckoo Sandbox(本地)
  2. 监控工具

    • Process Monitor(进程监控)
    • Process Explorer(进程查看)
    • Wireshark(网络流量)
    • API Monitor(API调用)

六、行为分析技巧

6.1 高效分析方法

  1. 过滤技巧

    • 按进程名过滤
    • 按操作类型过滤
    • 按路径/注册表键过滤
  2. 时间线分析

    • 按时间顺序查看行为
    • 识别行为模式
  3. 关联分析

    • 将文件、注册表、网络行为关联
    • 识别恶意逻辑链条

6.2 常见恶意行为模式

  1. 持久化机制

    • 注册表自启动
    • 计划任务
    • 服务安装
  2. 隐藏技术

    • 文件属性修改
    • 进程隐藏
    • 代码注入
  3. 网络行为

    • 心跳包
    • 数据外传
    • 命令接收

七、总结与建议

7.1 动态分析要点总结

  1. 必须结合静态分析结果
  2. 重点关注持久化、隐藏、通信等关键行为
  3. 使用多种工具交叉验证
  4. 注意环境隔离与安全防护

7.2 分析建议

  1. 环境准备

    • 使用虚拟机或专用分析机
    • 做好系统快照
  2. 工具配置

    • 提前配置好监控工具
    • 设置合理的过滤条件
  3. 分析流程

    • 先沙箱后手动
    • 从宏观到微观
    • 记录完整行为链
  4. 报告撰写

    • 记录所有观察到的行为
    • 标注关键恶意指标
    • 提供判定依据和置信度
Windows样本分析之基础动态分析教学文档 一、动态分析概述 1.1 动态分析的定义与目的 定义 :通过实际运行样本程序来监控其行为 主要目的 : 鉴定样本黑白(当静态分析失败或不准确时的第二步) 获取样本的简单行为特征 分析样本的运行原理 1.2 动态分析的基本原理 监控样本在运行时的各种行为 实现方式: 手动双击执行或带参数运行样本 使用监控工具抓取样本行为 通过沙箱环境监控样本运行 二、动态分析流程 2.1 基本分析流程 先进行简单静态分析 沙箱分析: 使用开源在线沙箱 或使用本地沙箱进行初步行为获取 手动分析: 在受控环境中运行样本 使用专业工具监控行为 2.2 判定标准 根据样本行为和衍生物判断样本性质 重点关注: 文件系统操作 注册表修改 网络通信 进程操作 自启动机制 三、实践案例1:Lab03-01.exe分析 3.1 静态分析发现 字符串特征 : HTTP请求特征: CONNECT %s:%i HTTP/1.0\r\n\r\n 访问特定域名: www.practicalmalwareanalysis.com 自启动机制 : SOFTWARE\Classes\http\shell\open\command - HTTP协议默认处理程序 Software\Microsoft\Active Setup\Installed Components\ - 检测是否为安装组件 SOFTWARE\Microsoft\Windows\CurrentVersion\Run - 开机自启动项 隐藏行为 : 伪装成正常程序: vmx32to64.exe 可能位置: C:\Users\Olivia\AppData\Local\Temp\KeJsFBhoviIbosu8hR1K.exe 加壳/混淆 : 导入函数少但字符串表内容丰富 PEiD检测结果: PEncrypt 3.1 Final -> junkcode 3.2 沙箱分析结果 主机感染行为 : 设置开机自启动注册表键值 创建互斥量 WinVMX32 防止多开 可能隐藏自身到临时目录 网络行为 : HTTP请求访问 www.practicalmalwareanalysis.com (网站已失效) 3.3 分析结论 判定为恶意样本 的依据: 使用了加壳技术(常见于恶意软件) 存在敏感行为: 访问特定网站 多种自启动机制 隐藏自身行为 四、实践案例2:Lab03-04.exe分析 4.1 沙箱分析结果 主机感染行为 : 删除文件操作 修改Internet选项,添加信任站点 网络感染行为 : C2通信: 88.221.52.75 网页访问: 216.58.205.238 4.2 手动分析发现 样本自删除 : 执行后样本消失 通过Process Monitor可观察到: cmd进程创建 执行自删除指令 添加信任站点 : 修改注册表键值实现 可通过过滤条件捕获相关注册表修改 4.3 分析结论 捕获的主要行为: 通过注册表修改实现Internet可信任站点设置 创建cmd进程实现自删除 部分网络行为未触发 五、关键监控点与工具 5.1 关键监控点 注册表操作 : 自启动相关键值 Internet设置相关键值 文件关联相关键值 文件系统操作 : 文件创建/修改/删除 自身复制/移动 临时文件创建 进程操作 : 子进程创建 进程注入 进程终止 网络通信 : HTTP请求 C2服务器通信 DNS查询 5.2 推荐工具 沙箱工具 : VirusTotal(在线) Hybrid Analysis(混合) Cuckoo Sandbox(本地) 监控工具 : Process Monitor(进程监控) Process Explorer(进程查看) Wireshark(网络流量) API Monitor(API调用) 六、行为分析技巧 6.1 高效分析方法 过滤技巧 : 按进程名过滤 按操作类型过滤 按路径/注册表键过滤 时间线分析 : 按时间顺序查看行为 识别行为模式 关联分析 : 将文件、注册表、网络行为关联 识别恶意逻辑链条 6.2 常见恶意行为模式 持久化机制 : 注册表自启动 计划任务 服务安装 隐藏技术 : 文件属性修改 进程隐藏 代码注入 网络行为 : 心跳包 数据外传 命令接收 七、总结与建议 7.1 动态分析要点总结 必须结合静态分析结果 重点关注持久化、隐藏、通信等关键行为 使用多种工具交叉验证 注意环境隔离与安全防护 7.2 分析建议 环境准备 : 使用虚拟机或专用分析机 做好系统快照 工具配置 : 提前配置好监控工具 设置合理的过滤条件 分析流程 : 先沙箱后手动 从宏观到微观 记录完整行为链 报告撰写 : 记录所有观察到的行为 标注关键恶意指标 提供判定依据和置信度