在近期针对巴西金融服务行业的网络攻击活动中,IBM X-Force研究团队发现了一种基于Delphi(Windows平台下知名的快速应用程序开发工具)的新型银行木马。该银行木马被命名为“MnuBot”的银行木马,吸引IBM X-Force研究团队注意的地方在于其不同寻常的命令和控制(C&C)服务器。

对于大多数银行木马或者其他类型的恶意软件而言,它们都会使用C&C服务器,用于与恶意软件进行通信,并发送要执行的命令。通常来讲,C&C服务器会是基于某种形式的Web服务器或Internet中继聊天(Internet Relay Chat,IRC)频道。

然而,MnuBot银行木马在这一点上似乎显得有些“独树一帜”,它选择了利用微软SQL Server数据库服务器来与样本进行通信,并发送要在受感染主机上执行的命令。

受感染主机的列表以及它们收到的配置

MnuBot两阶段攻击流程

MnuBot由两个基本组件构建而成,每个组件代表攻击流程的不同阶段。在第一阶段,MnuBot会在AppData Roaming文件夹中查找名为Desk.txt的文件。

根据文件是否存在,MnuBot执行以下行为:

  • 如果文件不存在,MnuBot会创建该文件,创建一个新桌面并将用户工作区切换到新创建的桌面。该桌面与合法用户桌面并排运行;
  • 如果文件存在,MnuBot则不会进行任何行为。

使用Desk.txt文件,MnuBot能够知道正在运行的是哪个桌面。因此,如果文件存在,MnuBot便能够明确其当前实例正在新桌面中运行。

MnuBot在新创建的桌面内运行

在新创建的桌面中,MnuBot持续检查前景窗口名称。一旦找到与其配置中的某个银行名称类似的窗口名称,它将根据找到的银行名称向服务器查询第二阶段可执行文件。下载的可执行文件保存为C:\Users\Public\Neon.exe——并且它包含攻击的主要逻辑。

下载的可执行文件实际上是一个远程访问特洛伊木马(RAT),它为攻击提供对受感染主机的完全控制权,以及MnuBot附带的其他功能。

和其他任何RAT一样,MnuBot需要从C&C服务器接收命令。为此,它会不断向SQL Server数据库服务器查询新命令。

与数据库通信

在感染用户主机时,MnuBot连接到C&C服务器以获取初始配置。想要连接到服务器,MnuBot需要使用SQL Server数据库服务器的详细信息(服务器地址、端口、用户名和密码),这些信息在示例中采取了硬编码。

值得一提的是,这些信息以加密形式存储,并在初始化与服务器的连接之前动态解密。

连接细节的解密

该配置由许多对MnuBot活动至关重要的字符串组成:

  • 要执行的查询;
  • 攻击者能够发送的命令;
  • MnuBot文件需要进行的交互;
  • 有针对性的银行网站。

如果没有配置,MnuBot会自行关闭,不会在受感染主机上执行任何恶意行为。

通过这种方式接收配置,MnuBot开发者试图实现两个主要目标:

  • 动态配置:在任何时候,攻击者都可以动态更改MnuBot的恶意行为(例如,有针对性的银行网站);
  • 反研究:一旦MnuBot开发者离线服务器,研究人员几乎不可能对恶意软件样本行为进行逆向工程。

使用SQL查询从C&C服务器获取配置

执行欺诈行为

一旦用户对他的银行网站账户进行了开放浏览会话并且可以下载MnuBot的第二阶段可执行文件,攻击者就可以开始工作。此时,他们已经从受感染主机向银行公开会话。

为了执行成功的欺诈行为,攻击者可以利用MnuBot的以下功能:

  • 创建浏览器和桌面屏幕截图;
  • 键盘记录;
  • 模拟用户点击和击键;
  • 重新启动感染主机;
  • 从系统中卸载Trusteer Rapport(IBM安全软件);
  • 创建一个表单来覆盖银行的表单,并窃取用户输入到表单中的数据。

攻击者通过更新一个名为“USUARIOCONTROLEXGORDO”的表中的特定列来向用户发送命令,该表存储在名为“jackjhonson”的数据库中。

一些特定列包括以下内容:

  • COMP_ ACAO:此列标识要执行的命令的类型;
  • POSICAOMOUSE:如果命令是模拟用户点击,此列将会随光标位置更新;
  • USER_IMAGEM:如果命令是屏幕截图,该列将随受感染主机的屏幕截图BMP图像进行更新;
  • VALORINPUT:此列包含输入,以防止输入插入命令。

使用值PrintDesktop更新列COMP_ACAO向恶意软件发送命令以创建桌面

覆盖表单

和其他恶意软件一样,MnuBot使用全屏覆盖表单来帮助攻击者实施欺诈行为。覆盖表单用于防止用户通过浏览器访问已打开的银行业务会话。

这些表单是一种让用户等待的社交工程。在后台,攻击者控制用户端点,并试图通过用户已打开的银行业务会话执行非法交易。

此外,如果攻击者想要获取用户的更多细节,他们能够使用另一种覆盖表单来诱使用户提供这些细节。为此,他们需要使用在攻击的第二阶段下载的可执行文件(Neon.exe)。该可执行文件包含用户当前正在使用的银行的相关社会工程表单。

基本的覆盖表单

社会工程技术:用于获取更多细节

总结

MnuBot的开发者很可能试图逃避基于恶意软件流量的常规防病毒检测。为此,他们决定使用看似无害的微软SQL通信来包装他们的恶意网络通信。

MnuBot可以说是巴西地区许多恶意软件家族的典范。它具有许多其他最近发现的恶意软件的典型特征,如覆盖表单和新桌面创建,这些都是该地区恶意软件开发者使用的主流技术。

声明:本文来自黑客视界,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。