该新恶意软件家族名为“艾丽丝”(Alice),是至今为止最暴力直白的ATM威胁。它没有任何信息窃取功能,甚至不能通过ATM的数字小键盘进行控制。
虽然是在2016年才首次被发现,艾丽丝据信2014年左右便已出现,趋势科技称这仅仅是迄今为止的第8个ATM恶意软件家族——虽然此类威胁早已在我们身边长达9年多了。
艾丽丝需要能物理接触到ATM机才能使用,趋势科技认为其设计目的是为了让钱骡偷走被攻击柜员机里所有现金。该功能在去年便被发现过,当时的执行软件名为GreenDispenser。
但是,与老款不同,这一新威胁不连接ATM机的密码输入键盘,且能通过远程桌面协议运作。虽然趋势科技称至今尚未发现此类用例。
恶意软件分析发现:艾丽丝(该名字在恶意软件二进制文件的版本信息中有包含Alice字样)采用了一款名为VMProtect的商用加壳/混淆器进行打包,防止在调试器中被运行。而且,该恶意软件还会在运行之前检查自身环境,只要发现自己不是运行在ATM机上就会终止进程(主要检查几个注册表键和系统上是否安装有特定DLL)。
若运行在ATM机上,艾丽丝会在根目录写入2个文件,5 MB+大小的空文件xfs_supp.sys,以及名为TRCERR.LOG的错误日志文件。然后,它会连上CurrencyDispenser1外设,也就是XFS环境中的吐钞设备。只要输入正确的密码,CurrencyDispenser1就会显示ATM机内各个钱匣里所装钞票的信息。
由于该恶意软件只连接CurrencyDispenser1外设,而不尝试使用机器的密码输入键盘,研究人员认为,攻击者是物理打开ATM机并通过USB或光驱感染机器的。另外,攻击者还将键盘连接到了ATM机的主板上,通过这个键盘来操作恶意软件。
艾丽丝支持3个指令,每一个都通过特定PIN码发送:其一是释放卸载文件,另一个是推出程序并执行卸载/清理操作,第三个则是打开“操作面板”。该面板就是ATM内可用现金信息的展示板。
攻击者只需输入钱匣的ID便可让ATM机吐光钞票。吐钞指令通过WFSExecute编程接口发送给CurrencyDispenser1外设。因为ATM机通常会有吐钞数量限制,攻击者可能需要多次重复同样的操作,才能清空ATM机里钱匣存放的所有钞票。剩余可用现金的信息会动态显示在屏幕上,攻击者可据此知晓钱匣什么时候被清空。
趋势科技认为,攻击者用艾丽丝手动替换了目标ATM机上的Windows任务管理器,因为被感染系统上发现的该恶意软件通常是以taskmgr.exe的形式存在的。该恶意软件没有长期驻留方法,但以任务管理器的形式运行,意味着每次系统发出启动任务管理器的指令,艾丽丝就会被启动。
吐钞前的PIN码输入操作,揭示出艾丽丝只能用于现场攻击。它既没有精心谋划的安装机制,也没有缜密的卸载机制,就是通过在合适的环境中运行可执行文件来起效。
PIN验证系统与其他ATM恶意软件家族使用的类似,但同时也给艾丽丝的作者提供了对其使用者的授权控制。通过修改各样本的访问码,作者既能防止钱骡共享恶意软件代码,又能追踪单个钱骡。
被分析的样本使用了4位数字的口令,但其他样本或许使用的是更长的PIN码。该PIN码不能被暴力破解,因为艾丽丝有输入次数限制,超过次数就会自我了断并显示一条错误消息。研究人员还认为,Alice可在任意使用了微软扩展金融服务中间件(XFS)的硬件上运行。
直到最近,ATM恶意软件在恶意软件世界中都还是利基类别(注:利基是指某些空白的细分领域),被一小撮犯罪团伙以高度针对性的方式使用。但我们正处在ATM恶意软件逐渐成为主流的节点上。