最近,有一群黑客将目标瞄准了俄罗斯的至少8台ATM,一夜之间就窃取了80万美元。但是攻击者使用的方法却非常奇幻。监控显示一个黑客走向ATM机,甚至都没有触碰机器就把现金取了出来。
即使是那些被窃取的银行,在ATM上还是找不到任何入侵的痕迹。唯一线索是某家银行的专家在ATM的硬盘上发现的两个包含恶意软件日志的文件:kl.txt和logfile.txt。文件中的有两个字符串:“拿钱吧”和“取款成功”。
尽管这个线索看似微乎其微,但是对卡巴斯基的研究员们而言这已经足够。他们一直在调查针对ATM机的攻击,想要找到攻击背后所使用的病毒样本。研究人员创建了YARA识别规则来捕获样本。YARA是一款模式识别工具,帮助研究人员识别恶意软件。
今年2月,卡巴斯基实验室报道称,黑客使用“无文件病毒”成功攻击了140家企业,包括银行、电信和政府组织,范围包括美国、欧洲等地区,不过攻击的细节没有做过多披露。
研究人员称,攻击银行时所用的是一种无文件的病毒,它能够存在内存中,而非像传统恶意程序那样驻足在硬盘中。
在圣马丁岛举办的卡巴斯基安全分析员峰会上,研究员Sergey Golovanov和Igor Soumenkov深入介绍了ATM攻击,向大家描述了如何使用无文件病毒进入银行系统并提取现金。
研究人员介绍ATM攻击
这款被命名为ATMitch的恶意软件之前在哈萨克斯坦和俄罗斯被发现,病毒通过远程管理模块远程安装和执行的。黑客可以通过SSH隧道部署恶意软件并发送指令给ATM,从而获取现金。
无文件病毒利用了ATM设备上的合法工具,恶意程序不会被安装到系统上,ATM因此会把这些恶意代码识别为正规软件。然后远程操控者会发送指令,而他们的同伙则会与此同时等候在ATM前将钱取走,这也就是为什么取钱的犯罪分子可以不接触ATM机。一旦所有现金被取出,黑客就会“注销”,留下非常少的线索。
从技术上讲,恶意软件一旦通过远程桌面连接被安装执行,就会寻找一个名叫command.txt的文件。从文件中读取字符,这些字符关联着不同的命令,按照攻击者需要来执行。例如,“O”代表打开提款面板。 ATMitch会将命令的结果写入日志文件,随后从机器的硬盘中删除command.txt。
攻击的第一步依赖大量开源软件。银行发现了Meterpreter,黑客应该还使用了PowerShell脚本、NETSH和Mimikatz。为了消除痕迹,黑客有时还会使用SDelete,这是一款Windows命令行软件,用于删除他们的文件和目录掩盖痕迹。
然而,要进行这样的攻击,首先攻击者需要能够入侵银行的后端网络,这需要极高的网络入侵能力。
精准的物理入侵
直接打开ATM的面板会触发警报,黑客转而使用了一种更加精准的物理入侵手段:在ATM机的前面板上钻一个高尔夫球大小的洞,然后用串行分布式控制线(SDC RS485 standard)传输9字节的加密数据,从而打开提现的面板。
这个方法被曝光的原因是之前警方逮捕了一名伪装成维修工的罪犯,当时他正在钻孔,尝试植入恶意代码触发提现面板,卡巴斯基的研究员借此还原了ATM攻击的经过。
嫌犯被捕时携带着笔记本、电缆和一个小盒子。尽管研究人员没有指明ATM机的生产商和受影响的银行,但是他们警告称,犯罪分子已经已经在俄罗斯和欧洲使用了这种钻孔攻击,并且实际上这种攻击能够影响全世界的ATM机。
目前大家还不知道这些ATM攻击背后的组织或国家。但研究人员发现的“tv.dll”中存在俄语资源。
而攻击的方法、过程与Carbanak和GCMAN组织十分相像。这些攻击攻击了30个国家的超过30个IP地址,但大多数影响的是美国和俄罗斯。犯罪分子利用后门安装键盘记录器来收集密码。一些罪犯雇佣钱骡收钱,并将其转移到SWIFT网络上,而其他犯罪分子则通过ATM欺诈发财。
在去年的会议上,Golovanov和另一位研究员Vladislav Roskov透露了另外两家银行抢劫团伙Metel和GCMAN的细节。就像ATMitch背后的黑客一样,这两个组织都使用了正规的渗透软件执行任务。 Metel使用了Mimikatz,而GCMAN使用了VNC、Putty和Meterpreter来控制系统。
最近无文件病毒攻击形式也变得普遍起来。就在上个月,研究人员发现了一种无文件病毒,命名为DNSMessenger,它会使用DNS请求生成恶意PowerShell命令,从而加大病毒检测的难度。
*参考来源:THN,本文作者:Sphinx,转载请注明来自FreeBuf(FreeBuf.COM)0day
文章评论