2019年春,研究人员发现了一个用Java语言编写的ATM恶意软件样本被上传到multiscanner服务。经过初步分析,研究人员发现该恶意软件(ATMJaDi)是一款可以使ATM吐钱。但它使用的并不是标准的XFS、JXFS或CSC库。而是受害者银行ATM软件的Java专用类,也就是说恶意软件攻击的目标只是一小撮ATM。
Kaspersky检测到的恶意软件样本为Trojan.Java.Agent.rs。
技术分析
首先,与其他ATM恶意软件类似,攻击者必须找到一种方法来在目标ATM上安装恶意软件。恶意软件无法通过ATM键盘或触屏来控制,因为它运行的是自己伪造的HTTP服务器web接口。KTV所以犯罪分子必须要有目标ATM的网络访问权限。因此,研究人员认为犯罪分子应该已经入侵了银行的基础设施来获取ATM连接的网络的访问权限。
恶意软件安装和执行Java压缩文件INJX_PURE.jar后会寻找控制ATM的进程并注入,这样就可以控制合法的ATM进程。注入后,恶意软件会在终端上同时用多种语言打印消息,包括俄语、葡萄牙语、西班牙语和中文。
但恶意软件使用的其他消息和字符串都是英文的。显示的不同语言的消息翻译过来都是“自由与荣耀”,但是俄语翻译过来是单独的。
Свобода и слава Liberdade e glória Libertad y gloria 自由与荣耀 отдельный
然后启动HTTP服务器来用预定义的URL路径来接收命令,分别是:
· /d 获取ATM磁带来执行操作
· /eva 在受害者ATM