泰GSB银行ATM劫案样本分析报告

8月23日出现一个疑似是新出现的ATM恶意软件样本,使用了一些与通常样本不同的技术。巧合的是此样本在曼谷邮报新闻《泰国银行ATM机被攻击,一千两百万泰铢被盗》发布出来前的几分钟,被来自于泰国的IP上传到VirusTotal(一个提供免费的可疑文件分析服务的网站)。绿盟科技安全专家团队对此恶意软件样本进行了分析,发现此样本针对ATM发起攻击,并利用了很多罕见的技术来获取目标ATM设备的物理访问权,进一步协助攻击者提取ATM中的现金。

  1.  背景介绍

关键词解释:

IDC: 身份证阅读器

CDM: 自动取款机;

PIN 小键盘

XFS.dll : 金融服务扩展(XFS)接口,现金取款设备类接口

此样本的运行依赖于金融服务扩展(XFS)库,其中所使用的函数为现金取款设备类接口API,即此样本针对的对象为ATM机,且样本获取了ATM机上的IDC、CDM、PIN等设备信息,若无法获取,则自动退出。当成功获取以上设备信息之后,恶意样本会设置盗窃者接入接口,记录IDC、PIN的输入信息,监测ATM机状态,等待盗窃者提取。

  1.  样本分析

    •  文件结构

表 文件列表

文件名MD5功能简介
源文件15632224B7E5CA0CCB0A042DAF2ADC13主样本
DBackup.exe15632224B7E5CA0CCB0A042DAF2ADC13源样本文件拷贝文件,用于服务启动
sd.exeCE5BACAF4F44BC3227E1F55B01A896EA样本释放在临时文件夹下的清除痕迹工具
  •  主要功能

当未添加参数时,样本文件首先查找到相关的ATM设备,获取设备信息检查设备状态,当检测到设备未运行,则直接退出,否则显示交互界面,提供设置、隐藏、重启等交互操作;样本创建两个线程,一个线程获取键盘输入内容,确保设备正常运行,另一个读取IDC获取的数据;样本显示交互界面(即主菜单),包含清除日志、隐藏、卸载服务、网络是开启/禁用等设置。

无参数执行流程概要图

无参数执行流程概要图

当添加参数时,执行参数指定的功能,具体功能如下表所示:

表 参数可选项列表

参数功能
service启动线程清除日志;显示交互界面(主菜单);拷贝自身到系统目录,安装服务,并通过service命令对服务状态进行更改。可选二级命令包括:install/remove/start/stop
/autorun自动运行,睡眠后在后台执行,等待攻击者进行操作
/uninstall删除添加的注册表项
/install设置自启动,添加相关的注册表项
/stop停止服务,退出进程
/cleanup终止指定的进程(多个),使用SDelete工具清除痕迹,退出进程

综上所述,样本完成的功能包括:

  1. 获取设备信息:获取设备信息和设备状态,进入用户交互界面;
  2. 安装服务:删除正在运行的DBackup.exe进程,然后将自身拷贝到系统目录下并以服务的形式启动执行;
  3. 显示主菜单:功能交互界面,可选择相应的功能;
  4. 清除日志
  5. 卸载服务:可通过与攻击者的交互界面对服务进行卸载;
  6. 断开网络连接:断开ATM局域网,防止与其他银行联机(可在主菜单交互界面中选择开启);
  7. 隐藏自身:样本会通过调用ShowWindow函数隐藏恶意软件的窗口接口;
  8. 清除痕迹:使用SDelete工具(样本释放在临时文件夹下的文件)清除痕迹;
  9. 持续攻击:样本以服务方式运行,同时在注册表中添加自动运行项,保证其持续性的攻击。

无参数情况下,进入的用户交互界面如下图所示:

交互操作命令

交互操作命令

当参数为service时,显示的功能主菜单如下图所示:

主菜单功能

主菜单功能

静态分析可以看到作者信息:

作者信息

作者信息

查看进程启动时传入的参数是否存在,并执行不同例程:

样本包含的可选参数

样本包含的可选参数

无参数启动

当没有传入参数时,校验各个设备是否正常运行,如果成功读取设备状态信息,则注册窗口消息。具体代码如下面两个图所示。
他
若发现设备未在运行,则会提示设备未知,并退出程序;否则,跳转到shell界面,并显示用户可以进行的操作界面,其中包括设置、隐藏、重启等交互操作;

并且创建两个线程,一个线程获取键盘输入内容,保证设备正在正常运行。

获取小键盘内容

获取小键盘内容

另一个线程负责读取身份证读取器的数据,并且提供一个盗窃者接入的接口,也就是定时器的回调函数:

ta2

参数为service

当选择的参数为service时,启动线程执行清除日志功能(如下图所示),并显示用户交互界面(主菜单)。

启动线程清除日志

启动线程清除日志

当选择的参数为service时,可选择二级参数install/remove/start/stop执行相应的功能,具体的代码如下面图所示。

服务可选功能

服务可选功能

ta3

安装服务中包含的终止进程及安装服务功能

安装服务中包含的终止进程及安装服务功能

参数为/install

当参数为/install时,样本设置注册表中的自启动项:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

键:FwloadPm

键值:C:\Probase\cscw32\bin\FwLoadPm.exe /autorun

(其中键值还可能为C:\Program Files\Diebold\Agilis Startup\DBackup.exe /autorun

C:\Program Files\NCR Aptra\bin\NCRPRS.exe /autorun)

添加自启动项

添加自启动项

自启动项键值

自启动项键值

自启动项

自启动项

启动进程

启动进程

参数为/uninstall

参数为/uninstall时,其功能为删除注册表项。

卸载功能(删除注册表项)

卸载功能(删除注册表项)

 

参数为/cleanup

参数为/cleanup时,其主要功能是终止多个内部正在执行的进程,同时使用样本自身释放的sd.exe(临时文件夹下)的SDelete工具清除痕迹。

终止其他内部进程

终止其他内部进程

使用SDelete工具删除痕迹

使用SDelete工具删除痕迹

ta4

  • 绿盟科技专业安全服务解决方案

1 恶意软件的清除方法,请在ATM机上进行以下操作:

[1] 查找以下文件:

C:\WINDOWS\System32\dbackup.exe

C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\sd.exe

[2] 注册表自启动项:

HKCU//Software//Microsoft//Windows//CurrentVersion//Run

HKLM//Software//Microsoft//Windows//CurrentVersion//Run

键名: FwloadPm

键值: C:\Probase\cscw32\bin\FwLoadPm.exe /autorun

或者C:\Program Files\NCR Aptra\bin\NCRPRS.exe /autorun

或者C:\Program Files\Diebold\Agilis Startup\DBackup.exe /autorun

[3]系统服务项:

ServerName: DBackup Service

ImagePath: C:\WINDOWS\System32\dbackup.exe /service

2 对ATM机所在网络环境和物理环境进行安全自查,确认修改了系统默认的配置和密码,建立完备的反病毒体系,并联系ATM机厂家确保系统和软件均升级到最新版本。

3 由于类似本次攻击ATM的恶意软件常会变换使用一些罕见的技术,传统安全产品很难及时发现,因此建议可采用绿盟科技新一代威胁防御方案(IPS+TAC),通过新型的检测技术可以有效发现并阻断这些攻击行为,帮助客户有效的遏制由此带来的风险。

4 如果您遇到无法处理的安全问题,欢迎您联系绿盟科技当地的专业安全服务团队,绿盟科技专家团队会竭诚为您提供最优质的专业安全服务。

总结

该样本与其他ATM恶意样本具有相似之处,但也有其比较新颖的地方。它能够准确定位ATM设备,当检测到插入卡为指定的卡时,弹出交互界面,允许攻击者执行多项功能,同时还具有清理自身痕迹功能,具有良好的隐蔽特性。

关于“绿盟科技”

北京神州绿盟信息安全科技股份有限公司(简称绿盟科技)成立于2000年4月,总部位于北京。在国内外设有30多个分支机构,为政府、运营商、金融、能源、互联网以及教育、医疗等行业用户,提供具有核心竞争力的安全产品及解决方案,帮助客户实现业务的安全顺畅运行。

基于多年的安全攻防研究,绿盟科技在网络及终端安全、互联网基础安全、合规及安全管理等领域,为客户提供入侵检测/防护、抗拒绝服务攻击、远程安全评估以及Web安全防护等产品以及专业安全服务。

北京神州绿盟信息安全科技股份有限公司于2014年1月29日起在深圳证券交易所创业板上市交易,股票简称:绿盟科技,股票代码:300369。

如果您需要了解更多内容,

可以 加入QQ群:486207500、570982169

直接询问:010-68438880-866

Spread the word. Share this post!

Meet The Author

Leave Comment