AD

Skimer让ATM吐钞

0x01概述

       2009年,7年前,卡巴实验室发现了一个针对银行的新型攻击手法。由于个人桌面系统的安全防护水平的提高,攻击者不再尝试攻击银行客户的私人电脑,转而直接攻击ATM机。攻击过程中利用了一种新型的感染ATM的恶意软件,称之为Skimer7年后的具体,卡巴实验室和渗透测试团队跟进并发现了Skimer的改进版本。

0x02感染

       Skimer和其他恶意代码一样,采用了加壳的手段保护自己,对抗分析。它使用了一个叫做Themida的加壳器,该加壳器有感染传播和释放恶意文件两大功能。
       一旦设备感染SkimerSkimer会首先检查文件系统是否是FAT32格式,如果的确是FAT32,则会在“C:\Windows\System32”目录下释放一个DLL文件:netmgr.dll。假如设备是NTFS格式系统,该DLL文件会利用NTFS数据流被释放到XFS服务的可执行文件,采取NTFS数据流隐藏的方式是为了对抗分析。
       安装成功后,将会覆盖XFS可执行文件(SpiService.exe)的入口,添加一个LoadLibrary调用,调用释放出来的netmgr.dll
       在没有被感染前,SpiService.exe的入口:

        感染后的入口:

       成功感染后,ATM机会重启。恶意DLL文件会被加载到SpiService.exe,此时获取到了XFS的控制权限。

0x03功能

       Tyupkin采取的密钥加特点时间启动的方式不一样,Skimer在检测到一个特殊的卡片时才会被激活。该卡片有一个特殊处理的第2磁道。
       一旦特制的磁条卡有两种,插入ATM机后Skimer会检测。然后执行不同的动作。
       类型1:通过接口请求命令
       类型2:执行在第2信道上硬编码的命令
       然后会弹出卡片,ATM界面上会出现一个对话框,要求攻击者在60s内插入/输入一个认证密钥。经过认证后,Skimer就可以运行从ATM密码键盘获取到的21种不同的代码。主要的功能如下:
1.       显示安装详情信息
2.       吐钞——从指定的钱箱,40个记录
3.       开始收集使用ATM机器的卡的详细数据
4.       显示/打印收集到的卡的数据
5.       自删除
6.       进入调试模式
7.       升级,升级代码在在卡片的磁条内
Skimer运行期间,还会根据被感染设备系统类型创建文件或者NTFS数据流,这些文件被用于不同的功能模块,例如存储配置信息,存储卡片信息及活动。
1.       C:\Windows\Temp\attrib1,卡片数据收集器,可以从ATM机读卡器或者网络中收集。
2.       C:\Windows\Temp\attrib4,记录不同的API相应消息,例如记录ATM密码键盘上输入的卡的密码。
3.       C:\Windows\Temp\mk32,似乎和attrib4一样。
4.       C:\Windows\Temp:attrib1,似乎和attrib1相同。
5.       C:\Windows\Temp:attrib4,似乎和attrib4一样
6.       C:\Windows\Temp:mk32,似乎和attrib4一样
7.       C:\Windows\Temp:opt,记录恶意代码的活动情况。

演示视频:

       https://youtu.be/hOcFy02c7x0

0x04其他

       卡巴实验室发现了Skimer49个变种,其中37个针对的一个固定的ATM厂家生产的ATM机器。这些变种中,最近的一个是在20165月份发现的。

XFS

       CEN/XFS标准的关键部分就是定义了一套API、相应的SPI和支持服务,为基于WINDOWS的应用提供对金融设备的访问。

NTFS 数据流

       NTFS交换数据流(alternate data streams,简称ADS)是NTFS磁盘格式的一个特性,在NTFS文件系统下,每个文件都可以存在多个数据流,就是说除了主文件流之外还可以有许多非主文件流寄宿在主文件流中。它使用资源派生来维持与文件相关的信息,虽然我们无法看到数据流文件,但是它却是真实存在于我们的系统中的。创建一个数据交换流文件的方法很简单,命令为“宿主文件:准备与宿主文件关联的数据流文件”。

来自


       https://securelist.com/blog/research/74772/atm-infector/

评论

此博客中的热门博文

简单粗暴导出小米便签

我——终于一个人了

Ubiquiti_Networks_UniFi_Cloud_Key_authed_rce