windows样本分析之基础静态分析-四
字数 2097 2025-08-25 22:59:09

Windows样本分析之基础静态分析(四)

目标

  1. 样本鉴定黑白(判断是否为恶意软件)
  2. 样本行为粗略判断
  3. 相关信息收集
  4. 建立自己的分析流程步骤

原理

鉴黑白方法

特征码检测

  • 检测已知病毒:杀毒软件将分析过的病毒中的特征部分提取成特征码
  • 特征类型包括:
    • 文件特征
    • 字符特征
    • 指令特征等

启发检测

  • 检测未知病毒:通过检测病毒运行过程中的API调用行为链

相关信息收集要点

  1. 编译时间:判断样本出现的时间
  2. 文件类型:命令行程序、GUI程序或其他类型
  3. 网络行为:是否有网络连接
  4. 关联文件:是否有相关文件
  5. 壳情况:是否加壳

感染行为分析(简单分析)

  • 特征API:不同种类的病毒样本根据其特性会调用特定的API函数

算法流程

鉴黑白步骤

  1. 文件特征检测

    • 使用VirusTotal检测(通过SHA-1搜索)
    • 查看是否有厂商已进行黑白判断
    • 使用文件SHA-1/MD5进行Google搜索,查看是否有相关检测报告
  2. 字符特征检测

    • 使用strings/pestdio工具打印字符串
    • 根据特征字符串(如IP地址、敏感词句、API符号等)进行Google搜索
  3. 加壳/混淆判断

    • 使用PEID/DIE工具查看文件是否加壳
    • 通过strings判断:如果字符串数量稀少、存在LoadLibrary等少量API符号,需留意
  4. 链接检测

    • 运行时链接检测:恶意样本通常采用LoadLibrary进行运行时链接

信息收集方法

  1. 使用PEStudio查看文件头的时间戳
  2. 使用PEStudio查看文件头的文件类型
  3. 使用DIE/PEID查壳情况或检查string表和API特征

样本初步行为判断

  • 使用pestdio查看导入表的API调用和字符串信息进行判断

实践案例1:Lab01-03.exe

鉴黑白结果

  • VirusTotal检测率:60/69
  • 确认为病毒样本

信息收集

信息类型 内容
时间戳 Thu Jan 01 08:00:00 1970
文件类型 32位命令行型可执行文件
壳特征 加壳

壳特征分析

  • 黑样本+少导入函数=加壳样本
  • 检测到FSG壳
  • 注意:没有找到自动脱FSG1.0的脱壳工具,后续分析暂时中止

实践案例2:Lab01-04.exe

鉴黑白结果

  • VirusTotal检测率:51/64
  • 判定为病毒样本
  • 从病毒名猜测应为下载者

信息收集

信息类型 内容
时间戳 Sat Aug 31 06:26:59 2019
文件类型 32位GUI型可执行文件
壳特征 未加壳

时间戳分析

  • 样本在VT首次上传时间为2011年
  • 时间戳是伪造的

感染行为分析(简单分析)

  1. 资源加载

    • 使用FindResourceA、LoadResource API函数
    • 资源节中包含exe文件,应该是加载恶意模块
  2. 远程下载样本、隐藏样本

    • 将下载后的样本隐藏于临时目录或系统目录
    • 可能隐藏当前样本于临时目录或系统目录
  3. 程序启动

    • 使用WinExec API来启动下载的程序或资源中的程序
  4. 远程线程注入

    • 可能想加载恶意DLL
    • 暂时未看见陌生的DLL字符,需进一步分析

小结

主机行为

  1. 加载资源中的模块
  2. 隐藏以及执行该样本或远程样本
  3. 远程DLL注入

网络行为

  • 从http://www.practicalmalwareanalysis.com/updater.exe下载恶意样本

衍生物1:resource.bin

鉴黑白结果

  • VirusTotal检测率:52/73
  • 判定为病毒样本
  • 根据家族名判断为下载者

信息收集

信息类型 内容
时间戳 Sun Feb 27 08:16:59 2011
文件类型 32位GUI型可执行文件
壳特征 未加壳

时间戳分析

  • 宿主样本的上传时间和此时间戳相近
  • 此时间戳应为文件的真实编译时间

感染行为分析(简单分析)

  • 从API判断是远程下载并执行的操作
  • 从字符串信息可见具体从http://www.practicalmalwareanalysis.com/updater.exe下载并执行
  • 出现\winup.exe、\system32\wupdmgrd.exe文件,但无相关API依据,无法判断

小结

主机行为

  • 执行远程下载的样本

网络行为

  • 远程下载样本

衍生物2:updater.exe

  • 因网址失效,未能下载进行分析

总结

  1. 在Lab01-04.exe的导入表中没有相关网络操作API
  2. 可能是运行时链接或动态链接隐藏了相关API调用
  3. 根据解释,资源中的模块具体进行了网络行为,导致Lab01-04.exe中只有字符串表中有相关符号
  4. 需要进一步学习相关知识

关键点总结

  1. 静态分析是恶意软件分析的基础
  2. 特征码和启发式检测是判断样本性质的重要手段
  3. 时间戳、文件类型和壳信息是基本信息收集的关键
  4. API调用分析是判断样本行为的重要依据
  5. 资源节中的内容可能包含重要信息
  6. 网络行为分析需要结合多个角度
Windows样本分析之基础静态分析(四) 目标 样本鉴定黑白(判断是否为恶意软件) 样本行为粗略判断 相关信息收集 建立自己的分析流程步骤 原理 鉴黑白方法 特征码检测 检测已知病毒:杀毒软件将分析过的病毒中的特征部分提取成特征码 特征类型包括: 文件特征 字符特征 指令特征等 启发检测 检测未知病毒:通过检测病毒运行过程中的API调用行为链 相关信息收集要点 编译时间:判断样本出现的时间 文件类型:命令行程序、GUI程序或其他类型 网络行为:是否有网络连接 关联文件:是否有相关文件 壳情况:是否加壳 感染行为分析(简单分析) 特征API:不同种类的病毒样本根据其特性会调用特定的API函数 算法流程 鉴黑白步骤 文件特征检测 使用VirusTotal检测(通过SHA-1搜索) 查看是否有厂商已进行黑白判断 使用文件SHA-1/MD5进行Google搜索,查看是否有相关检测报告 字符特征检测 使用strings/pestdio工具打印字符串 根据特征字符串(如IP地址、敏感词句、API符号等)进行Google搜索 加壳/混淆判断 使用PEID/DIE工具查看文件是否加壳 通过strings判断:如果字符串数量稀少、存在LoadLibrary等少量API符号,需留意 链接检测 运行时链接检测:恶意样本通常采用LoadLibrary进行运行时链接 信息收集方法 使用PEStudio查看文件头的时间戳 使用PEStudio查看文件头的文件类型 使用DIE/PEID查壳情况或检查string表和API特征 样本初步行为判断 使用pestdio查看导入表的API调用和字符串信息进行判断 实践案例1:Lab01-03.exe 鉴黑白结果 VirusTotal检测率:60/69 确认为病毒样本 信息收集 | 信息类型 | 内容 | |---------|------| | 时间戳 | Thu Jan 01 08:00:00 1970 | | 文件类型 | 32位命令行型可执行文件 | | 壳特征 | 加壳 | 壳特征分析 黑样本+少导入函数=加壳样本 检测到FSG壳 注意:没有找到自动脱FSG1.0的脱壳工具,后续分析暂时中止 实践案例2:Lab01-04.exe 鉴黑白结果 VirusTotal检测率:51/64 判定为病毒样本 从病毒名猜测应为下载者 信息收集 | 信息类型 | 内容 | |---------|------| | 时间戳 | Sat Aug 31 06:26:59 2019 | | 文件类型 | 32位GUI型可执行文件 | | 壳特征 | 未加壳 | 时间戳分析 样本在VT首次上传时间为2011年 时间戳是伪造的 感染行为分析(简单分析) 资源加载 使用FindResourceA、LoadResource API函数 资源节中包含exe文件,应该是加载恶意模块 远程下载样本、隐藏样本 将下载后的样本隐藏于临时目录或系统目录 可能隐藏当前样本于临时目录或系统目录 程序启动 使用WinExec API来启动下载的程序或资源中的程序 远程线程注入 可能想加载恶意DLL 暂时未看见陌生的DLL字符,需进一步分析 小结 主机行为 加载资源中的模块 隐藏以及执行该样本或远程样本 远程DLL注入 网络行为 从http://www.practicalmalwareanalysis.com/updater.exe下载恶意样本 衍生物1:resource.bin 鉴黑白结果 VirusTotal检测率:52/73 判定为病毒样本 根据家族名判断为下载者 信息收集 | 信息类型 | 内容 | |---------|------| | 时间戳 | Sun Feb 27 08:16:59 2011 | | 文件类型 | 32位GUI型可执行文件 | | 壳特征 | 未加壳 | 时间戳分析 宿主样本的上传时间和此时间戳相近 此时间戳应为文件的真实编译时间 感染行为分析(简单分析) 从API判断是远程下载并执行的操作 从字符串信息可见具体从http://www.practicalmalwareanalysis.com/updater.exe下载并执行 出现\winup.exe、\system32\wupdmgrd.exe文件,但无相关API依据,无法判断 小结 主机行为 执行远程下载的样本 网络行为 远程下载样本 衍生物2:updater.exe 因网址失效,未能下载进行分析 总结 在Lab01-04.exe的导入表中没有相关网络操作API 可能是运行时链接或动态链接隐藏了相关API调用 根据解释,资源中的模块具体进行了网络行为,导致Lab01-04.exe中只有字符串表中有相关符号 需要进一步学习相关知识 关键点总结 静态分析是恶意软件分析的基础 特征码和启发式检测是判断样本性质的重要手段 时间戳、文件类型和壳信息是基本信息收集的关键 API调用分析是判断样本行为的重要依据 资源节中的内容可能包含重要信息 网络行为分析需要结合多个角度