洗劫ATM机的三大作案手法:远程入侵、类远程入侵、物理破坏

2017 年04 月4日

大家可能注意到我们很喜欢讨论ATM机盗窃案。当然,我们本身不会这样做,但是只要有人干了,我们会立即跳出来讨论相关案例。一年一度的安全分析专家峰会(SAS)是卡巴斯基举办的一项重要网络安全活动。在2017安全分析专家峰会上,卡巴斯基实验室专家Sergey Golovanov和Igor Soumenkov谈到了下面三个很有意思的案例。

ATMitch — 远程控制的恶意软件

ATM机空空如也。该银行的取证团队没有发现任何恶意文件,也没有看到奇怪的指纹,设备本身也没有任何物理破坏的痕迹,没有额外的电路板,也没有其他可用于接管ATM机控制的设备。但机器中的钱却不翼而飞了。

事实上,银行员工发现了一个文件kl.txt。他们猜”kl”可能与KL(你知道的,卡巴斯基实验室)有关系,所以他们联系了我们,所以我们才卷入了此案的调查工作。

为了在调查工作中找到突破口,我们的研究人员首先研究了这个文件。根据这个日志文件的内容,他们创建了一条YARA规则 – YARA是一个恶意软件研究工具;研究人员主要面向公共恶意软件存储库,利用该条规则来尝试搜索原始的恶意软件样本。经过一天的搜索后,我们得到了一些结果:一个名为tv.dll的DLL两次被标记为In the Wild,一次在俄罗斯,一次在哈萨克斯坦。这一发现足以让我们在这团乱麻中找到线头。

在卡巴斯基的测试实验室中,对该DLL进行彻底调查后,我们的研究人员对攻击进行了逆向工程,了解它的实际工作方式,甚至在测试用ATM机上再现了使用假币进行的攻击。下面是研究人员发现的内容。

ATMitch行动中

犯罪分子的攻击利用了一个众所周知但未得到修补的漏洞,从而渗透到目标银行的服务器。(我们不是说过一定要更新软件吗?这就是活生生的例子。)

攻击者使用开源代码和公开获取的工具来感染银行的计算机,但是他们创建的恶意软件是隐藏在计算机内存中,而不是在硬盘上,所以没有文件可寻,要想识别到这种攻击相当难 – 安全套件基本上是发现不了这种攻击的。更糟糕的是,系统重启后,恶意软件的痕迹就几乎消失得无影无踪了。

攻击者随后与其命令控制服务器建立连接,远程在ATM上安装软件。

本案例中的恶意软件ATMitch利用远程控制工具直接从银行在ATM机上安装并执行。它看上去像是一个合法更新,所以银行部署的任何安全解决方案都不会就此发出警报。随后,恶意软件开始寻找名为command.txt的文件。这个文件中含有控制ATM机的单字符命令。例如,”O”表示”打开自动提款机”。

接下来就会触发满堂红机关。恶意软件首先发出一条命令,要求ATM机吐出一定金额的钞票,随后发出另一条命令来处置相应数量的账单。在发出指令的同时,会有一名钱骡在现场拿钱走人。

犯罪分子试图不留下任何痕迹,所以在ATM机的硬盘上没有任何可执行文件。在钱被提走后,ATMitch会将操作的所有相关信息写入日志文件,并擦除command.txt文件。重要提示:ATMitch可以安装在目前绝大多数ATM机上 – 唯一的要求是ATM机支持XFS库,而大多数ATM机均符合这一条件。

您可以在Securelist上了解有关ATMitch恶意软件的更多详情。

简单而巧妙的骗局

接下来这个案例也是应银行要求开始调查的,但这个故事比较短。同样是ATM机日志被清得一干二净。硬盘完好无损,攻击者用胶带封住了CCTV监控摄像机,所以没拍到任何犯罪行为。

我们要求银行把ATM机送到我们办公室来。拆机后我们有了惊人的发现 – ATM机的USB集线器上连接了蓝牙适配器,而硬盘上有用于驱动蓝牙键盘的驱动程序。

因此,我们很容易重现抢劫行为。犯罪分子先是在ATM机上安装蓝牙适配器,然后等银行执行过三个月一次的日志清除后,犯罪分子就带着蓝牙键盘回来了。他们先封住安全摄像头,随后利用蓝牙键盘在服务模式下重启ATM机,执行取空提款机的服务操作。这就是整个过程。

电钻 – 实际钻孔

像远程控制的恶意软件和蓝牙键盘等作案手法算是文明的。但接下来的可就不是了。

本案一开始和其他案例一样,也是一家银行主动与我们联系,要求调查另一起ATM机被盗案。这一次,取证时发现了确凿无疑地物理破坏的证据:在密码键盘附近发现了一个直径约4厘米的圆形钻孔。除此之外没有其他破坏迹象。ATM机虽然看上去很坚固,但不可避免有塑料部件。大家都知道,这类部件很容易用电钻破坏。

在很短的时间内,俄罗斯和欧洲发生了好几起类似案件。后来警方用一台笔记本电脑和一些布线抓住了一名嫌疑犯,才弄清楚了具体情况。

我们前面提到,我们实验室里有一台ATM机。所以我们把这台机器拆开来,研究了攻击者是怎样利用这个孔从机器中弄钱的。我们发现了一个10针的头,该头连接到一条基本上与所有ATM组件互连的总线上 – 从内部计算机连到自动提款机。

参考信息:ATM机的任一部分都可以控制其他所有部分,各部分之间没有任何认证(所以替换其中任何一个部分,其他部分都不会受影响),用于控制各部分的命令十分容易理解。你觉得这样安全吗?

我们花了大约15美元用了些时间就制作出了一个简单的电路板,只要把这个电路板连到ATM机的串行总线就能控制机器。在测试用ATM机上安装后,我们能直接从机器取(假)钱。犯罪分子的作案手法似乎和我们在实验室做的非常相似,不过他们是在真实的ATM机上取真钱,他们还需要用到一台笔记本电脑。

我们向银行报告了调查结果,但这里的问题是,正如Igor Soumenkov所指出的,ATM机无法远程更新。修补需要进行硬件更新,而这又要求技术人员实地操作ATM机 – 但实际中ATM机的数量太多了,技术人员根本忙不过来。

该怎么办?

最后,如果你不是银行职员,那么对上述威胁你无能为力。这些是银行的问题,而不是你的问题。不过,若是你在银行工作,而且对ATM保护有一定的影响,那么我们可以为你提供应对ATMitch恶意软件方面的帮助。卡巴斯基实验室的所有安全解决方案都能捕捉到该恶意软件。但是我们并没有抵御电钻的协议。这就得靠你及公司的安全摄像头了。