全球上百家银行和金融机构感染了一种“无文件”恶意程序,几乎无法检测
根据卡巴斯基发布的最新报告,超过140家美国、南美、欧洲和非洲的银行、通讯企业和政府机构感染了一种几乎无法被检测到的极为复杂的无文件恶意程序。
卡巴斯基的专家警告:虽然目前的官方数据显示成为目标的银行和企业至少有140家,但是鉴于这种恶意程序极难被发现的特性,潜在受害者数量可能远高于这个数字。
这种类型的感染并不是第一次出现,几年前卡巴斯基就曾在自己企业内部网络中发现了这种在当时前所未有的恶意程序,并将其称为Duqu 2.0。Duqu 2.0的来源则被认为是震网,是当时美国与以色列为了破坏伊朗核计划专门合作创建的一种极为复杂的电脑蠕虫。
感染现状
目前这种与Duqu 2.0十分相似的恶意程序已经在不计其数的企业和银行之中像野火一样蔓延开来。它会利用像是PowerShell, Metasploit和Mimikatz这样的合法管理系统或安全工具将恶意程序注入电脑内存。
卡巴斯基选择不公布这些目前正在遭受攻击的具体机构,但确定这些机构来自40个不同国家。其中受感染的5个重灾区分别是美国、法国、厄瓜多尔、肯尼亚和英国。
此次攻击十分令人厌恶的原因主要是:它可以潜伏很久并且很难被发现,并且无法确定在这个恶意程序背后的究竟是一个黑客、一个组织或很多组织?除非哪天有人出来声称对此事负责,否则在很长时间内这个幕后真凶对安全专家或当局来说都会是一个未解之谜。
工作原理
无文件恶意程序最初是由卡巴斯基在2014年发现的,一直不算是什么主流的攻击方式,直到此次事件的发生。说起来无文件恶意程序并不会为了执行而将文件或文件夹复制到硬盘上,反而是将payloads直接注入正在运行程序的内存,导致恶意软件直接在系统RAM中执行,也让专家很难在系统重启之后找到此恶意软件的踪迹。
该恶意程序首次被发现是在2016年底,有一家银行的安全团队在微软域控制器的物理内存发现了一段Meterpreter代码。经过取证分析,卡巴斯基的专家发现这段代码是入侵者利用Windows PowerShell将Meterpreter代码注入内存,而并未将其写入磁盘。
Meterpreter是一种可注入运行程序的内存攻击payload,它可以在在被感染的系统中造成持续破坏。Meterpreter是Metasploit渗透测试框架的一部分,Metasploit在安全团队或恶意入侵者中都是十分流行的工具。
攻击者利用已知漏洞的利用工具来入侵目标组织的服务器,在获得访问权之后就利用Mimikatz来获取系统的身份凭证——这样才能完成进一步的提权,也是后续攻击必须的。
然后再用PowerShell脚本、Meterpreter和Windows工具Sc在内存中部署恶意代码。目前我们知道会用如下脚本来生成Metasploit框架。脚本会分配内存并将WinAPIs和下载的Meterpreter直接解析到RAM。
入侵者还会利用微软的NETSH网络工具设置了一个代理通道,与C&C服务器通信并远程控制被感染的主机。NETSH (Network Shell) 是windows系统本身提供的功能强大的网络配置命令行工具。
为了消除设备重启后留在日志或硬盘的痕迹,入侵者将PowerShell命令隐藏在Windows注册表,让安全专家之后的取证和分析过程变得更加困难。
看起来这个恶意程序的主要目的就是为了收集系统管理员的密码及远程控制受到感染的主机。此次攻击的终极目标可能是感染那些控制自动取款机的电脑,让入侵者能以这样的方式获取钱财。
虽然受感染的企业和机构范围很广、数量较多,但是入侵者所采取的方法相对一致,这样就能帮助各公司的安全人员认识现状并采取相应措施。
卡巴斯基实验室计划在4月2日至6日之间揭露更多关于此次攻击的细节。
Gartner安全分析师Avivah Litan提到,“现如今越来越多的公司会在终端部署保护和检测工具,所以采用无文件恶意软件的攻击也变得越来越频繁。”
Litan也给企业该如何快速检测并阻止无文件恶意软件攻击提出了一下几点建议:
频繁对系统进行维护;
根据需求,限制使用Microsoft PowerShell和类似管理工具的电脑和用户;
购买一些有预防内存攻击功能的产品,像是赛门铁克、Trend和McAfee等;
可以考虑对终端电脑实施应用程序控制,只允许一个机构的应用程序可以运行。