Panda Banker银行木马分析
字数 1973 2025-08-20 18:18:17

Panda Banker银行木马分析与防御指南

1. Panda Banker概述

Panda Banker是一种基于Zeus源代码变种的银行木马,自2016年首次发现以来一直保持活跃。该木马主要针对美国、加拿大和日本的金融机构用户,通过窃取银行账户、信用卡和Web钱包信息进行金融犯罪。

主要特征:

  • 使用"中间人浏览器"(man-in-the-browser)技术注入恶意代码
  • 通过Emotet等恶意软件传播
  • 采用多层加密和复杂混淆技术
  • 主要攻击银行、信用卡公司和支付系统

2. 技术分析

2.1 攻击流程

  1. 环境检查:检测沙箱、调试工具和分析环境
  2. 自我复制:创建带有特殊扩展属性的副本
  3. 进程注入:注入到svchost.exe进程中
  4. C2通信:获取配置和指令
  5. 浏览器注入:监控并修改目标网站的流量
  6. 数据窃取:当访问目标网站时窃取敏感信息

2.2 规避检测技术

Panda Banker会检查以下工具和环境特征,发现则终止执行:

  • 抓包工具(Wireshark, Fiddler等)
  • 调试器(OllyDbg, WinDbg等)
  • 反编译工具(IDAPRO等)
  • 虚拟机环境
  • 沙箱特征

2.3 文件创建行为

执行后会创建4个文件:

  1. 自身副本(blocklist.exe)
  2. 其他辅助文件
  3. 使用Ntseteafiles API设置扩展文件属性(EaName="BEAR")
  4. 加载副本后原始进程退出

3. 配置数据与加密

3.1 配置数据结构

Payload中包含多层加密的配置数据:

  1. 外层:AES加密
  2. 内层:RC4加密的C2 URL
  3. X.509格式的RSA公钥

3.2 URL生成算法

Panda Banker使用复杂算法生成C2 URL:

  1. 使用Mersenne Twister算法生成随机值
  2. 第一部分:随机字母数字组合(2-10字符)
  3. 第二部分:基于系统信息(计算机名、安装日期等)的哈希值
  4. 组合方式:C2域名/第一部分/第二部分

4. C2通信机制

4.1 请求格式

POST请求使用多层加密:

  1. 生成32字节AES-256 CBC密钥和16字节IV
  2. 用RSA公钥加密AES密钥
  3. 打包:RSA加密的AES密钥 + AES IV + AES加密的参数
  4. 计算SHA256校验值
  5. Base64编码整个数据包

4.2 响应处理

C2响应也是多层加密:

  1. Base64解码
  2. 使用POST请求中的AES密钥解密第一层
  3. 解密后得到JSON数据,包含签名验证
  4. 第二层解密后可能是:
    • 配置文件
    • Web注入数据
    • PE可执行文件(DLL)

5. Web注入技术

5.1 注入方法

  1. 通过API hooking拦截浏览器流量
  2. 移除Content Security Policy头
  3. 针对特定浏览器注入恶意脚本

5.2 目标浏览器

hook以下浏览器的关键API:

  • IE(iexplore.exe)
  • Edge(microsoftedge.exe, microsoftedgecp.exe)
  • Firefox(firefox.exe)
  • Chrome(chrome.exe)
  • Opera(opera.exe)

5.3 注入内容

  1. 伪造消息(如虚假安全警告)
  2. 窃取卡号、密码等敏感信息
  3. 收集账户限制信息(支付限额等)
  4. 注入位置:通常在标签后

6. 主要攻击目标

6.1 国家分布

  • 美国(主要目标)
  • 加拿大
  • 日本

6.2 行业分布

  • 银行业(主要目标)
  • 信用卡公司
  • 支付系统
  • Web钱包服务
  • 工资系统

7. 防御建议

7.1 检测指标

  1. 文件特征:

    • 检查EaName="BEAR"的扩展属性
    • 查找blocklist.exe等可疑进程
  2. 网络特征:

    • 异常C2通信模式
    • 特定格式的加密流量
  3. 行为特征:

    • 浏览器进程注入
    • 异常API hooking

7.2 防护措施

  1. 终端防护:

    • 部署高级EDR解决方案
    • 启用行为检测
    • 限制进程注入行为
  2. 网络防护:

    • 监控异常加密流量
    • 阻断已知C2域名
  3. 浏览器防护:

    • 保持浏览器更新
    • 使用安全插件
    • 监控异常脚本执行
  4. 用户教育:

    • 警惕钓鱼邮件
    • 不下载可疑附件
    • 定期检查账户异常

8. 分析与取证指南

8.1 样本分析

  1. 静态分析:

    • 查找多层加密结构
    • 识别配置数据
    • 提取C2信息
  2. 动态分析:

    • 在受控环境中运行
    • 监控文件创建
    • 捕获网络流量

8.2 内存取证

  1. 查找注入的svchost.exe进程
  2. 分析浏览器进程中的异常模块
  3. 提取hook信息

8.3 网络取证

  1. 解密C2通信
  2. 分析URL生成模式
  3. 提取配置更新

9. 总结

Panda Banker是一种高度复杂、持续活跃的银行木马,具有以下特点:

  1. 采用先进的反分析技术
  2. 使用多层加密通信
  3. 针对特定金融机构
  4. 通过浏览器注入窃取信息
  5. 主要影响北美和日本地区

防御需要多层防护策略,结合技术措施和用户教育,同时保持对新型变种的持续监控。

Panda Banker银行木马分析与防御指南 1. Panda Banker概述 Panda Banker是一种基于Zeus源代码变种的银行木马,自2016年首次发现以来一直保持活跃。该木马主要针对美国、加拿大和日本的金融机构用户,通过窃取银行账户、信用卡和Web钱包信息进行金融犯罪。 主要特征: 使用"中间人浏览器"(man-in-the-browser)技术注入恶意代码 通过Emotet等恶意软件传播 采用多层加密和复杂混淆技术 主要攻击银行、信用卡公司和支付系统 2. 技术分析 2.1 攻击流程 环境检查 :检测沙箱、调试工具和分析环境 自我复制 :创建带有特殊扩展属性的副本 进程注入 :注入到svchost.exe进程中 C2通信 :获取配置和指令 浏览器注入 :监控并修改目标网站的流量 数据窃取 :当访问目标网站时窃取敏感信息 2.2 规避检测技术 Panda Banker会检查以下工具和环境特征,发现则终止执行: 抓包工具(Wireshark, Fiddler等) 调试器(OllyDbg, WinDbg等) 反编译工具(IDAPRO等) 虚拟机环境 沙箱特征 2.3 文件创建行为 执行后会创建4个文件: 自身副本(blocklist.exe) 其他辅助文件 使用Ntseteafiles API设置扩展文件属性(EaName="BEAR") 加载副本后原始进程退出 3. 配置数据与加密 3.1 配置数据结构 Payload中包含多层加密的配置数据: 外层:AES加密 内层:RC4加密的C2 URL X.509格式的RSA公钥 3.2 URL生成算法 Panda Banker使用复杂算法生成C2 URL: 使用Mersenne Twister算法生成随机值 第一部分:随机字母数字组合(2-10字符) 第二部分:基于系统信息(计算机名、安装日期等)的哈希值 组合方式:C2域名/第一部分/第二部分 4. C2通信机制 4.1 请求格式 POST请求使用多层加密: 生成32字节AES-256 CBC密钥和16字节IV 用RSA公钥加密AES密钥 打包:RSA加密的AES密钥 + AES IV + AES加密的参数 计算SHA256校验值 Base64编码整个数据包 4.2 响应处理 C2响应也是多层加密: Base64解码 使用POST请求中的AES密钥解密第一层 解密后得到JSON数据,包含签名验证 第二层解密后可能是: 配置文件 Web注入数据 PE可执行文件(DLL) 5. Web注入技术 5.1 注入方法 通过API hooking拦截浏览器流量 移除Content Security Policy头 针对特定浏览器注入恶意脚本 5.2 目标浏览器 hook以下浏览器的关键API: IE(iexplore.exe) Edge(microsoftedge.exe, microsoftedgecp.exe) Firefox(firefox.exe) Chrome(chrome.exe) Opera(opera.exe) 5.3 注入内容 伪造消息(如虚假安全警告) 窃取卡号、密码等敏感信息 收集账户限制信息(支付限额等) 注入位置:通常在 标签后 6. 主要攻击目标 6.1 国家分布 美国(主要目标) 加拿大 日本 6.2 行业分布 银行业(主要目标) 信用卡公司 支付系统 Web钱包服务 工资系统 7. 防御建议 7.1 检测指标 文件特征: 检查EaName="BEAR"的扩展属性 查找blocklist.exe等可疑进程 网络特征: 异常C2通信模式 特定格式的加密流量 行为特征: 浏览器进程注入 异常API hooking 7.2 防护措施 终端防护: 部署高级EDR解决方案 启用行为检测 限制进程注入行为 网络防护: 监控异常加密流量 阻断已知C2域名 浏览器防护: 保持浏览器更新 使用安全插件 监控异常脚本执行 用户教育: 警惕钓鱼邮件 不下载可疑附件 定期检查账户异常 8. 分析与取证指南 8.1 样本分析 静态分析: 查找多层加密结构 识别配置数据 提取C2信息 动态分析: 在受控环境中运行 监控文件创建 捕获网络流量 8.2 内存取证 查找注入的svchost.exe进程 分析浏览器进程中的异常模块 提取hook信息 8.3 网络取证 解密C2通信 分析URL生成模式 提取配置更新 9. 总结 Panda Banker是一种高度复杂、持续活跃的银行木马,具有以下特点: 采用先进的反分析技术 使用多层加密通信 针对特定金融机构 通过浏览器注入窃取信息 主要影响北美和日本地区 防御需要多层防护策略,结合技术措施和用户教育,同时保持对新型变种的持续监控。