Silence是一个新的活跃的APT组织,会自己开发攻击工具,同时会借鉴其他组织的TTPS。主要攻击目标是银行等金融组织。

Silence group

Group-IB 2016年7月检测到Silence相关的第一起事件。那时攻击者应该才开始测试软件的共那个。Silence的第一个目标是俄罗斯银行,因为攻击者会尝试攻击AWS CBR。之后,黑客沉默了一段时间,这也是Silence的标准实践方式。

研究人员分析发现Silence团队有两个角色,分别是运营者和开发者。运营者应该是team leader,具体负责渗透测试,对银行系统渗透测试工具有深入的了解。开发者是经验丰富的逆向工程师,负责开发执行攻击的工具,并能够修改复杂的漏洞利用和第三方软件。而且,开发者对ATM进程、系统和非公开的恶意软件样本都有丰富的了解。

Silence: 开发的工具和攻击类型

工具集

Silence group的一个重要特征就是使用自己组织开发的工具,包括:

Silence

Silence group使用的框架是模块化的,含有下面的组件:

主模块会加载可执行文件,这不会限制系统的功能,并预留了扩展特征的空间。

伪装为office文件的附件利用被打开后,木马的Silence.Downloader加载器会下载并安装。加载器会安装到开始菜单中,并等候命令下载并启动下一阶段。如果攻击者对服务器不感兴趣,僵尸就会执行自毁命令。

Silence木马的主体会在启动后将自己加入到开始菜单中,然后在服务器上注册并进入命令接收或执行循环中。木马的主任务是在命令翻译器中执行远程命令,下载和启动任意程序。

下图是恶意软件执行的C2命令表:

为了进入企业网络的独立(网)段中,Silence会下载ProxyBot模块。该代理模块的目的是通过受感染的设备将外部C2服务器的浏览重定向到被入侵网络的本地节点上,因为从外部是不能访问的。研究任意共发现两个版本,一个是Delphi语言编写的,一个是C#编写的。

为了监控受害者银行的用户和金融组织的合法活动,攻击者安装了SurveillanceModule模块,该模块可以偷偷截图并融合到伪数据流中。

在攻击的最后一阶段,僵尸主机会在系统中安装Meterpreter stager,负责在网络中导航。

分析C2服务器过程中,研究任意发现了与Silence服务器46.183.221[.]89进行通信的Kikothac后门。开始的时候,研究任意认为软件与Silence活动没有关联,但上传到HybridAnalysis沙箱的时间就是Silence攻击的时间,而且Kikothac样本也被上传到VirusTotal中,文件名就是Silence Trojan:

经过深入分析,研究任意发现到原来C2服务器地址的引用已经没有了,负责连接服务器的代码使用的是到编译器生成的静态链接代码的引用:

而且,所有的Kikothac命令都是以#开头的,包括从web服务器下载文件的命令#wget,Silence木马中的命令也是一样的。其他不在Kikothac命令列表中的字符串都会自动发送给命令翻译器cmd.exe来执行。Silence也是这样做的,下面是2个Kikothac命令示例:

从中可以看出,这两个命令都会用到Silence木马中,命令会复制顺序、参数类型以及逻辑。就是说会控制打补丁的Kikothac,随后用于Silence Trojan中。

Atmosphere

为了控制ATM 自动取款机,Silence会使用一个特别的软件Atmosphere。随着时间的改进,木马会明显地进化来满足犯罪分子的需求。比如,开发者改变了进程注入的逻辑并加入灵活的注入器,这也扩展了目标ATM列表。攻击者移除了可能会影响攻击活动的一些无用特征,比如软件的最新版本不会处理来自PIN pad的命令。而早期版本,软件会重编译多次,产生一些失败的提现尝试。

黑客会在ATM上远程安装Atmosphere.Dropper。软件含有一个DLL库,这也是Atmosphere木马的主体部分。主体部分被提取后,是放弃会将库注入到进程fwmain32.exe中。然后攻击者就可以远程控制ATM了。在早期版本中,有一个使用PIN pad来控制ATM的方法,后来这些特征被删除了。

程序会通过特定扩展名的文件来接收命令,然后读取命令并执行;恶意软件作者还会用一些无用的话覆写这些文件,然后删除这些文件来阻碍研究人员的取证工作。但软件逻辑中存在错误,错误会导致在文件结尾处写入一些无意义的内容。

Silence使用的软件中也存在该错误,研究人员推测两款恶意软件是同一作者。

在一起银行攻击活动的应急响应过程中,Group-IB取证专家就发现了Atmosphere软件的11个样本,在不同时间编译的,有一些不同。在一个含有木马的目录中,研究人员发现了命令翻译器和单独的注入器的脚本以及进程识别符。但脚本传递的是目标进程名而不是进程识别符,这就导致尝试控制ATM失败。

Undernet DDoS bot

在分析Silence服务器时,研究人员发现一个名为Perl IrcBot的DDoS bot。2017年4月20日,有许多从driley123@ bellsouth[.]net发来的钓鱼邮件,邮件含有从C2服务器地址92.222.68[.]32下载Silence.Downloader到机器的漏洞利用。

该程序最早出现在一个西班牙语的论坛上hxxps://forum.voidsec[.]com/thread-93.html 。该僵尸的修改版本可以通过hxxps://github[.]com/H1R0GH057/Anonymous/blob/master/ircabuse.pl 和hxxps://gist.github[.]com/dreadpiratesr/7bccc6eed49150a8564a 查看。Silence使用的就是基于Undernet DDoS Bot的版本。

该软件是用IRC消息进行控制的,一共使用了两个服务器:

Smoke Bot

2017年发送的英文邮件中含有一个JS加载器,加载器可以在系统中安装Smoke Bot。Smoke Bot从2011年起就在地下论坛出售了,卖家是一个名为SmokeLdr的说俄语的黑客。从了下载和执行任意文件,Smoke Bot还有以下特征:

本文来源于俄罗斯威胁情报机构 Group-IB 公司发布的<Silence: Moving into the darkside>。附链接:
https://www.group-ib.com/resources/threat-research/silence.html

源链接

Hacking more

...