【翻译】Grandoreiro银行木马样本分析
字数 2356 2025-08-22 12:23:13

Grandoreiro银行木马分析与防御指南

1. Grandoreiro木马概述

Grandoreiro是一种多组件银行木马,采用恶意软件即服务(MaaS)模式运作,自2024年3月以来活跃于全球60多个国家,专门针对1500多家全球银行应用程序和网站。

关键特征:

  • 采用改进的字符串解密和域名生成算法(DGA)
  • 利用受感染主机的Microsoft Outlook客户端传播钓鱼邮件
  • 支持远程控制、键盘记录、浏览器操作等多种功能
  • 针对加密货币钱包和银行安全软件的特殊检测

2. 感染链分析

2.1 初始传播方式

通过大规模网络钓鱼攻击传播,冒充:

  • 墨西哥税务局(SAT)
  • 墨西哥联邦电力委员会(CFE)
  • 阿根廷税务局(AFIP)
  • 南非税务局(SARS)

2.2 加载器分析

加载器特点:

  • 文件体积膨胀至100MB以上以规避AV扫描
  • 显示伪造的Adobe PDF验证码弹窗要求用户交互
  • 执行三重验证:受害者合法性检查、数据枚举、载荷下载

字符串解密算法

import base64

def decode_key(key):
    # Triple Base64解码
    key = base64.b64decode(base64.b64decode(base64.b64decode(key)))
    # 十六进制字符转换为字节
    key = bytes.fromhex(key.decode())
    return key

def decrypt_string(encrypted_string, key):
    decrypted_string = ''
    for i in range(len(encrypted_string)):
        decrypted_byte = encrypted_string[i] ^ key[i % len(key)]
        decrypted_string += chr(decrypted_byte)
    return decrypted_string

受害者验证机制

检查以下信息与硬编码值比对:

  • 计算机名称和用户名
  • 操作系统版本
  • 安装的防病毒软件
  • 公共IP地理位置(通过ip-api.com/json获取)
  • 运行进程列表

特定国家/地区会被阻止:

  • 俄罗斯、捷克、波兰和荷兰的IP
  • 美国未安装AV的Windows 7机器

3. 持久性机制

3.1 注册表修改

创建Run键实现持久化:

reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v "Grandoreiro" /t REG_SZ /d "C:\ProgramData\[目录]\[载荷].exe" /f

3.2 配置文件存储

  • 路径:C:\Public\目录下的.XML文件
  • 内容:加密存储可执行文件名、路径和感染日期

4. 目标应用程序

4.1 银行应用程序目标

针对1500+全球银行应用,按地区分类:

  • 欧洲、北美、中美、南美、非洲、印太地区和全球岛屿
  • 每个区域有专用Delphi类进行检测

4.2 加密货币钱包检测

专门检测266个唯一字符串,针对:

  • Binance、Electrum、Coinomi
  • Bitbox、OPOLODesk、Bitcoin

4.3 银行安全软件检测

检查是否存在:

  • IBM Trusteer
  • Topaz OFD
  • Diebold

5. 域名生成算法(DGA)

5.1 DGA工作机制

  • 每天生成至少12个不同C2域名
  • 使用14个不同种子生成功能特定域名
  • 域名组成:顶级域+月份转换+日期字符替换

5.2 DGA示例(2024年4月17日)

  1. 主种子:"xretsmzrb"
  2. 月份转换:"04" → "oit"+"zia"
  3. 日期字符替换:17日 → "wondbbhonandhnd"
  4. 完整域名:wondbbhonandhnd.oitzia.xretsmzrb.dnsfor[.]me

5.3 端口计算

基于C2服务器IP前四位数字,通过自定义数字映射生成4位端口号

6. 命令与控制功能

6.1 远程控制功能

  • 鼠标控制:移动、点击、隐藏/显示
  • 键盘输入模拟(包括特殊键)
  • 窗口管理:列表、关闭、恢复、最大化
  • 进程管理:列表、终止(PID)

6.2 浏览器操作

支持浏览器:

  • MS Edge、Chrome、Internet Explorer
  • Firefox、Opera、Brave

特殊功能:

  • 执行JavaScript模拟按钮点击
  • 自动填写表单和提交
  • 针对特定银行URL(如Banco Banorte)

6.3 其他功能

  • 摄像头查看器启动/停止
  • 键盘记录器启动/停止
  • 文件上传/下载
  • 接收BMP/XML文件(伪造验证窗口)

7. Outlook传播模块

7.1 电子邮件收集

三种收集机制:

  1. 遍历Outlook邮箱文件夹,提取发件人地址
  2. 添加PST文件通过Namespace.AddStore()
  3. 文件系统扫描特定扩展名文件中的邮件地址

黑名单过滤:

  • 排除包含"noreply"、"no-reply"等地址
  • 排除系统目录路径

7.2 垃圾邮件发送

使用钓鱼模板,填充占位符:

  • $replyto:回复地址
  • $link:恶意载荷链接
  • $valor:随机生成的发票金额
  • $assunto:邮件主题

反检测措施:

  • 自动关闭弹出的对话框
  • 清除"已发送"邮件
  • 确保用户5分钟内无操作才发送

8. 防御建议

8.1 技术防护措施

  1. 邮件过滤

    • 实施高级邮件安全解决方案
    • 阻止带有ZIP附件的可疑邮件
  2. 终端防护

    • 部署行为检测型EDR解决方案
    • 监控注册表Run键修改
    • 阻止对C:\Public\C:\ProgramData\的可疑写入
  3. 网络防护

    • 阻断与ip-api.com/json的连接
    • 监控DoH(DNS over HTTPS)请求
    • 阻止已知Grandoreiro DGA域名

8.2 用户教育

  • 警惕声称来自税务或电力机构的紧急邮件
  • 勿点击邮件中的PDF/XML查看链接
  • 验证发件人地址真实性

8.3 企业防护

  • 限制Outlook Security Manager使用
  • 监控Outlook API异常调用
  • 实施应用程序白名单

9. 检测指标(IoC)

9.1 文件特征

  • 大型可执行文件(>100MB)
  • 伪装PDF图标的可执行文件
  • 常见文件名模式:SARS [数字] eFiling [数字].exe

9.2 注册表项

HKCU\Software\Microsoft\Windows\CurrentVersion\Run\Grandoreiro
HKLM\Software\Clients\Mail

9.3 网络特征

  • DoH请求:https://dns.google/resolve?name=<C2 server>
  • C2通信包含字符串:CLIENT_SOLICITA_DD_FULL

10. 总结

Grandoreiro是功能全面的银行木马,具有:

  • 高级规避技术(字符串加密、DGA)
  • 广泛的目标覆盖(1500+银行应用)
  • 多阶段感染链
  • 自我传播能力(Outlook滥用)

防御需要多层防护策略,结合技术控制与用户教育,特别警惕冒充政府机构的钓鱼邮件。

Grandoreiro银行木马分析与防御指南 1. Grandoreiro木马概述 Grandoreiro是一种多组件银行木马,采用恶意软件即服务(MaaS)模式运作,自2024年3月以来活跃于全球60多个国家,专门针对1500多家全球银行应用程序和网站。 关键特征: 采用改进的字符串解密和域名生成算法(DGA) 利用受感染主机的Microsoft Outlook客户端传播钓鱼邮件 支持远程控制、键盘记录、浏览器操作等多种功能 针对加密货币钱包和银行安全软件的特殊检测 2. 感染链分析 2.1 初始传播方式 通过大规模网络钓鱼攻击传播,冒充: 墨西哥税务局(SAT) 墨西哥联邦电力委员会(CFE) 阿根廷税务局(AFIP) 南非税务局(SARS) 2.2 加载器分析 加载器特点: 文件体积膨胀至100MB以上以规避AV扫描 显示伪造的Adobe PDF验证码弹窗要求用户交互 执行三重验证:受害者合法性检查、数据枚举、载荷下载 字符串解密算法 受害者验证机制 检查以下信息与硬编码值比对: 计算机名称和用户名 操作系统版本 安装的防病毒软件 公共IP地理位置(通过ip-api.com/json获取) 运行进程列表 特定国家/地区会被阻止: 俄罗斯、捷克、波兰和荷兰的IP 美国未安装AV的Windows 7机器 3. 持久性机制 3.1 注册表修改 创建Run键实现持久化: 3.2 配置文件存储 路径: C:\Public\ 目录下的.XML文件 内容:加密存储可执行文件名、路径和感染日期 4. 目标应用程序 4.1 银行应用程序目标 针对1500+全球银行应用,按地区分类: 欧洲、北美、中美、南美、非洲、印太地区和全球岛屿 每个区域有专用Delphi类进行检测 4.2 加密货币钱包检测 专门检测266个唯一字符串,针对: Binance、Electrum、Coinomi Bitbox、OPOLODesk、Bitcoin 4.3 银行安全软件检测 检查是否存在: IBM Trusteer Topaz OFD Diebold 5. 域名生成算法(DGA) 5.1 DGA工作机制 每天生成至少12个不同C2域名 使用14个不同种子生成功能特定域名 域名组成:顶级域+月份转换+日期字符替换 5.2 DGA示例(2024年4月17日) 主种子:"xretsmzrb" 月份转换:"04" → "oit"+"zia" 日期字符替换:17日 → "wondbbhonandhnd" 完整域名:wondbbhonandhnd.oitzia.xretsmzrb.dnsfor[ . ]me 5.3 端口计算 基于C2服务器IP前四位数字,通过自定义数字映射生成4位端口号 6. 命令与控制功能 6.1 远程控制功能 鼠标控制:移动、点击、隐藏/显示 键盘输入模拟(包括特殊键) 窗口管理:列表、关闭、恢复、最大化 进程管理:列表、终止(PID) 6.2 浏览器操作 支持浏览器: MS Edge、Chrome、Internet Explorer Firefox、Opera、Brave 特殊功能: 执行JavaScript模拟按钮点击 自动填写表单和提交 针对特定银行URL(如Banco Banorte) 6.3 其他功能 摄像头查看器启动/停止 键盘记录器启动/停止 文件上传/下载 接收BMP/XML文件(伪造验证窗口) 7. Outlook传播模块 7.1 电子邮件收集 三种收集机制: 遍历Outlook邮箱文件夹,提取发件人地址 添加PST文件通过Namespace.AddStore() 文件系统扫描特定扩展名文件中的邮件地址 黑名单过滤: 排除包含"noreply"、"no-reply"等地址 排除系统目录路径 7.2 垃圾邮件发送 使用钓鱼模板,填充占位符: $replyto :回复地址 $link :恶意载荷链接 $valor :随机生成的发票金额 $assunto :邮件主题 反检测措施: 自动关闭弹出的对话框 清除"已发送"邮件 确保用户5分钟内无操作才发送 8. 防御建议 8.1 技术防护措施 邮件过滤 : 实施高级邮件安全解决方案 阻止带有ZIP附件的可疑邮件 终端防护 : 部署行为检测型EDR解决方案 监控注册表Run键修改 阻止对 C:\Public\ 和 C:\ProgramData\ 的可疑写入 网络防护 : 阻断与ip-api.com/json的连接 监控DoH(DNS over HTTPS)请求 阻止已知Grandoreiro DGA域名 8.2 用户教育 警惕声称来自税务或电力机构的紧急邮件 勿点击邮件中的PDF/XML查看链接 验证发件人地址真实性 8.3 企业防护 限制Outlook Security Manager使用 监控Outlook API异常调用 实施应用程序白名单 9. 检测指标(IoC) 9.1 文件特征 大型可执行文件(>100MB) 伪装PDF图标的可执行文件 常见文件名模式: SARS [数字] eFiling [数字].exe 9.2 注册表项 9.3 网络特征 DoH请求: https://dns.google/resolve?name=<C2 server> C2通信包含字符串: CLIENT_SOLICITA_DD_FULL 等 10. 总结 Grandoreiro是功能全面的银行木马,具有: 高级规避技术(字符串加密、DGA) 广泛的目标覆盖(1500+银行应用) 多阶段感染链 自我传播能力(Outlook滥用) 防御需要多层防护策略,结合技术控制与用户教育,特别警惕冒充政府机构的钓鱼邮件。