【译】一种完美的“监守自盗”型银行恶意软件分析
字数 1732 2025-08-25 22:58:56

巴西银行恶意软件分析与防御教学文档

1. 恶意软件概述

1.1 背景

巴西银行恶意软件近年来从简单工具发展为精细攻击工具,通过葡萄牙语垃圾邮件传播,主要针对巴西银行用户但可能扩散至全球。

1.2 攻击目标

  • HSBC、Santander、Citibank等巴西银行用户
  • 窃取在线银行账户凭证
  • 隐蔽转移账户资金

2. 传播机制分析

2.1 初始感染载体

  • 传播渠道:葡萄牙语垃圾邮件
  • 恶意附件:JAR文件(Java恶意代码)

2.2 文件伪装技术

服务器文件名 本地重命名 类型 功能
vm.png [random].exe EXE 加载恶意DLL
vmwarebase.dll vmwarebase.dll DLL 注入核心模块
prs.png [random].db DLL 核心功能模块
gbs.png [random].drv DLL 高级功能模块
i.dk i.dk TXT C&C配置

3. 技术实现细节

3.1 加载器模块(vmwarebase.dll)

  1. DLL劫持:利用VMware签署的合法文件vprintproxy.exe
  2. 注入流程
    • 解析C:\Users\public\Administrator\car.dat获取随机文件名
    • 搜索匹配的.db文件(原prs.png)
    • 使用CreateRemoteThread注入到explorer.exe和notepad.exe
  3. 清理操作:终止所有conhost.exe进程

3.2 核心功能模块(prs.png)

主要功能:

  • 键盘记录
  • 屏幕截图
  • 屏幕锁定(替换为指定画面)
  • 鼠标控制
  • 持久化(注册表自启动)
  • 系统工具禁用(taskmgr, regedit等)
  • 文件删除

实现特点:

  • 使用Delphi对象存储代码和数据
  • 通过Timer对象实现多线程
  • 表单中包含GUI部件存储关键信息

3.3 高级功能模块(gbs.png)

使用Themida加壳,实现:

  1. 进程保护:防止被任务管理器终止
  2. Hook清理:调用UnhookWindowsHookEx卸载已有hook
  3. 浏览器监控
    • 使用FindWindowW/GetWindow遍历窗口
    • 针对不同浏览器(Chrome/Firefox/IE)采用不同URL获取方法
  4. 覆盖攻击
    • 匹配目标银行URL(硬编码列表)
    • 根据注册表日期决定攻击流程
    • 全屏透明窗口显示伪造的安全警告

4. C&C通信机制

4.1 配置存储

  • 加密文件:i.dk
  • 加密方式:AES-256
  • 内容:C&C服务器地址和配置参数

4.2 钓鱼技术

  • 内置多个银行相关位图
  • 根据访问的银行网站显示对应警告
  • 典型消息:"无法与[银行]安全模块同步,请稍后再试"

5. 检测与防御方案

5.1 检测指标

  1. 文件特征

    • C:\Users\public\Administrator\car.dat
    • 随机命名的.db/.drv文件
    • i.dk配置文件
  2. 进程行为

    • vprintproxy.exe加载异常DLL
    • explorer/notepad进程异常模块
    • 频繁的窗口遍历操作
  3. 网络特征

    • 与已知C&C地址通信
    • 异常AES加密流量

5.2 防御措施

  1. 技术防护

    • 禁用不必要的Java执行
    • 监控DLL加载行为
    • 检测进程注入行为
    • 拦截已知C&C地址
  2. 用户教育

    • 警惕葡萄牙语邮件附件
    • 不信任"安全模块同步失败"类警告
    • 使用硬件安全令牌而非软件2FA
  3. 应急响应

    • 检查并删除相关注册表项
    • 扫描并删除恶意文件
    • 重置所有银行凭证

6. 关联分析

该恶意软件与以下已知威胁相关:

  • Talos小组2017年5月分析的银行木马
  • Trusteer 1月份报告的类似版本
  • 采用巴西恶意软件常见技术但更复杂

7. 总结

该银行恶意软件展示了高度复杂的技术实现,包括:

  • 多阶段模块化设计
  • 合法文件伪装
  • 高级注入技术
  • 针对性钓鱼攻击
  • 强大的反检测机制

防御需要多层防护策略,结合技术控制和用户意识提升。

巴西银行恶意软件分析与防御教学文档 1. 恶意软件概述 1.1 背景 巴西银行恶意软件近年来从简单工具发展为精细攻击工具,通过葡萄牙语垃圾邮件传播,主要针对巴西银行用户但可能扩散至全球。 1.2 攻击目标 HSBC、Santander、Citibank等巴西银行用户 窃取在线银行账户凭证 隐蔽转移账户资金 2. 传播机制分析 2.1 初始感染载体 传播渠道:葡萄牙语垃圾邮件 恶意附件:JAR文件(Java恶意代码) 2.2 文件伪装技术 | 服务器文件名 | 本地重命名 | 类型 | 功能 | |--------------|------------|------|------| | vm.png | [ random ].exe | EXE | 加载恶意DLL | | vmwarebase.dll | vmwarebase.dll | DLL | 注入核心模块 | | prs.png | [ random ].db | DLL | 核心功能模块 | | gbs.png | [ random ].drv | DLL | 高级功能模块 | | i.dk | i.dk | TXT | C&C配置 | 3. 技术实现细节 3.1 加载器模块(vmwarebase.dll) DLL劫持 :利用VMware签署的合法文件vprintproxy.exe 注入流程 : 解析C:\Users\public\Administrator\car.dat获取随机文件名 搜索匹配的.db文件(原prs.png) 使用CreateRemoteThread注入到explorer.exe和notepad.exe 清理操作 :终止所有conhost.exe进程 3.2 核心功能模块(prs.png) 主要功能: 键盘记录 屏幕截图 屏幕锁定(替换为指定画面) 鼠标控制 持久化(注册表自启动) 系统工具禁用(taskmgr, regedit等) 文件删除 实现特点: 使用Delphi对象存储代码和数据 通过Timer对象实现多线程 表单中包含GUI部件存储关键信息 3.3 高级功能模块(gbs.png) 使用Themida加壳,实现: 进程保护 :防止被任务管理器终止 Hook清理 :调用UnhookWindowsHookEx卸载已有hook 浏览器监控 : 使用FindWindowW/GetWindow遍历窗口 针对不同浏览器(Chrome/Firefox/IE)采用不同URL获取方法 覆盖攻击 : 匹配目标银行URL(硬编码列表) 根据注册表日期决定攻击流程 全屏透明窗口显示伪造的安全警告 4. C&C通信机制 4.1 配置存储 加密文件:i.dk 加密方式:AES-256 内容:C&C服务器地址和配置参数 4.2 钓鱼技术 内置多个银行相关位图 根据访问的银行网站显示对应警告 典型消息:"无法与[ 银行 ]安全模块同步,请稍后再试" 5. 检测与防御方案 5.1 检测指标 文件特征 : C:\Users\public\Administrator\car.dat 随机命名的.db/.drv文件 i.dk配置文件 进程行为 : vprintproxy.exe加载异常DLL explorer/notepad进程异常模块 频繁的窗口遍历操作 网络特征 : 与已知C&C地址通信 异常AES加密流量 5.2 防御措施 技术防护 : 禁用不必要的Java执行 监控DLL加载行为 检测进程注入行为 拦截已知C&C地址 用户教育 : 警惕葡萄牙语邮件附件 不信任"安全模块同步失败"类警告 使用硬件安全令牌而非软件2FA 应急响应 : 检查并删除相关注册表项 扫描并删除恶意文件 重置所有银行凭证 6. 关联分析 该恶意软件与以下已知威胁相关: Talos小组2017年5月分析的银行木马 Trusteer 1月份报告的类似版本 采用巴西恶意软件常见技术但更复杂 7. 总结 该银行恶意软件展示了高度复杂的技术实现,包括: 多阶段模块化设计 合法文件伪装 高级注入技术 针对性钓鱼攻击 强大的反检测机制 防御需要多层防护策略,结合技术控制和用户意识提升。