一次窃取程序的恶意样本分析
字数 1636 2025-08-20 18:17:07

恶意样本分析教学文档:基于.NET的窃取程序分析

1. 样本基础信息

  • 样本类型:32位.NET程序
  • 分析工具:dnSpy(.NET反编译工具)
  • 主要功能:多维度信息窃取与回传

2. 核心功能分析

2.1 配置信息提取

  • 存储位置:程序集的AssemblyDescription属性
  • 加密方式
    • 基础配置:Base64编码
    • 关键数据(Telegram Token和Chat ID):ROT13加密
  • 分析技巧:在dnSpy中查看程序集属性可快速定位配置信息

2.2 持久化机制

  • 方法persistence.CheckCopy()
  • 实现细节
    • 将自身复制到系统特定路径(如%AppData%)
    • 确保原始程序被删除后仍可运行
  • 注册表操作
    • 创建唯一键值实现单实例运行
    • 检测已有实例则退出

2.3 反分析检测

  • 检测项目
    • 虚拟机环境(VMware/VirtualBox等)
    • 沙箱环境
    • 调试器附加
  • 应对策略:检测到分析环境立即退出

3. 数据窃取功能

3.1 浏览器数据窃取

  • 目标数据
    • 保存的密码
    • Cookies
    • 自动填充信息
  • 浏览器支持:常见浏览器(Chrome/Firefox/Edge等)

3.2 加密货币钱包窃取

  • 目标钱包
    • Exodus钱包
    • Metamask
  • 操作流程
    1. 定位钱包数据存储路径
    2. 复制钱包数据文件
    3. 压缩为ZIP
    4. 通过Telegram API外传

3.3 Telegram数据窃取

  • 目标数据
    • 会话数据
    • 本地存储文件
  • 处理方式:同上压缩外传

3.4 系统信息收集

  • 收集内容
    • CPU/GPU型号
    • RAM容量
    • 操作系统版本
  • 存储位置Log\ComputerInfo.txt

3.5 屏幕截图

  • 实现函数utils.desktopScreenshot()
  • 技术细节:调用Windows API捕获屏幕

4. 数据外传机制

  • 传输方式:Telegram Bot API
  • 流程
    1. 将所有窃取数据打包为ZIP
    2. 通过配置的Token和Chat ID上传
    3. 清理痕迹(删除ZIP和自身)

5. 攻击者溯源

5.1 GitHub账户

  • 地址:https://github.com/attatier
  • 发现内容
    • 恶意程序传播方式
    • 历史项目记录

5.2 传播方式

  • 初始载体:恶意LNK快捷方式
  • 技术细节
    • 使用PowerShell远程下载恶意负载
    • 同时下载正常PDF文件作为诱饵
    • 执行后自动打开PDF降低怀疑

5.3 Telegram账户

  • ID:7781867830
  • 关联信息
    • 用于接收窃取数据
    • 哈希值:50a6880b7a2cfb41d50b9fa34438b8fa4bc209d3c71283fd0efefe10ef2bc4387dd26c19

6. 防御建议

6.1 检测方案

  • 注册表监控:关注异常自启动项
  • 网络流量:监控Telegram API通信
  • 文件监控:关注%AppData%下可疑.NET程序

6.2 防护措施

  1. 限制PowerShell执行远程代码
  2. 启用浏览器数据加密
  3. 使用钱包硬件隔离方案
  4. 定期检查系统异常进程

6.3 应急响应

  1. 检查注册表Run项
  2. 删除%AppData%下可疑文件
  3. 重置所有浏览器保存的凭据
  4. 转移加密货币到新钱包

7. 分析技巧总结

  1. .NET分析:优先使用dnSpy查看程序集属性
  2. 配置提取:注意非标准加密(如ROT13)
  3. 持久化分析:检查注册表和文件复制操作
  4. 流量分析:关注小众API通信(如Telegram Bot)
  5. 溯源方法:GitHub历史提交和字符串提取

附录:关键IoC

  • GitHub账户:attatier
  • Telegram ID:7781867830
  • 样本哈希:50a6880b7a2cfb41d50b9fa34438b8fa4bc209d3c71283fd0efefe10ef2bc4387dd26c19
  • C2通信:Telegram Bot API
恶意样本分析教学文档:基于.NET的窃取程序分析 1. 样本基础信息 样本类型 :32位.NET程序 分析工具 :dnSpy(.NET反编译工具) 主要功能 :多维度信息窃取与回传 2. 核心功能分析 2.1 配置信息提取 存储位置 :程序集的AssemblyDescription属性 加密方式 : 基础配置:Base64编码 关键数据(Telegram Token和Chat ID):ROT13加密 分析技巧 :在dnSpy中查看程序集属性可快速定位配置信息 2.2 持久化机制 方法 : persistence.CheckCopy() 实现细节 : 将自身复制到系统特定路径(如%AppData%) 确保原始程序被删除后仍可运行 注册表操作 : 创建唯一键值实现单实例运行 检测已有实例则退出 2.3 反分析检测 检测项目 : 虚拟机环境(VMware/VirtualBox等) 沙箱环境 调试器附加 应对策略 :检测到分析环境立即退出 3. 数据窃取功能 3.1 浏览器数据窃取 目标数据 : 保存的密码 Cookies 自动填充信息 浏览器支持 :常见浏览器(Chrome/Firefox/Edge等) 3.2 加密货币钱包窃取 目标钱包 : Exodus钱包 Metamask 操作流程 : 定位钱包数据存储路径 复制钱包数据文件 压缩为ZIP 通过Telegram API外传 3.3 Telegram数据窃取 目标数据 : 会话数据 本地存储文件 处理方式 :同上压缩外传 3.4 系统信息收集 收集内容 : CPU/GPU型号 RAM容量 操作系统版本 存储位置 : Log\ComputerInfo.txt 3.5 屏幕截图 实现函数 : utils.desktopScreenshot() 技术细节 :调用Windows API捕获屏幕 4. 数据外传机制 传输方式 :Telegram Bot API 流程 : 将所有窃取数据打包为ZIP 通过配置的Token和Chat ID上传 清理痕迹(删除ZIP和自身) 5. 攻击者溯源 5.1 GitHub账户 地址 :https://github.com/attatier 发现内容 : 恶意程序传播方式 历史项目记录 5.2 传播方式 初始载体 :恶意LNK快捷方式 技术细节 : 使用PowerShell远程下载恶意负载 同时下载正常PDF文件作为诱饵 执行后自动打开PDF降低怀疑 5.3 Telegram账户 ID :7781867830 关联信息 : 用于接收窃取数据 哈希值:50a6880b7a2cfb41d50b9fa34438b8fa4bc209d3c71283fd0efefe10ef2bc4387dd26c19 6. 防御建议 6.1 检测方案 注册表监控 :关注异常自启动项 网络流量 :监控Telegram API通信 文件监控 :关注%AppData%下可疑.NET程序 6.2 防护措施 限制PowerShell执行远程代码 启用浏览器数据加密 使用钱包硬件隔离方案 定期检查系统异常进程 6.3 应急响应 检查注册表Run项 删除%AppData%下可疑文件 重置所有浏览器保存的凭据 转移加密货币到新钱包 7. 分析技巧总结 .NET分析 :优先使用dnSpy查看程序集属性 配置提取 :注意非标准加密(如ROT13) 持久化分析 :检查注册表和文件复制操作 流量分析 :关注小众API通信(如Telegram Bot) 溯源方法 :GitHub历史提交和字符串提取 附录:关键IoC GitHub账户:attatier Telegram ID:7781867830 样本哈希:50a6880b7a2cfb41d50b9fa34438b8fa4bc209d3c71283fd0efefe10ef2bc4387dd26c19 C2通信:Telegram Bot API