一例以“采访”为社工手段的定向木马攻击分析

2015-12-21 13,520

1 概述

2015年12月2日夜间,安天监控预警体系感知到如下信息线索:某知名作家在新浪微博发布消息,曝光有人以发送“采访提纲”为借口,利用微博私信功能,发送恶意代码链接。
安天安全研究与应急处理中心(安天CERT)根据微博截图指向的链接,下载该样本并连夜展开分析。随着分析的深入,我们梳理了整个事件的过程,及相关的恶意代码机理。

2 “采访”事件

引起我们关注的微博如图所示,该微博发布于12月1日23时24分。作家收到自称“南周冯翔”的记者发来的“采访提纲”,这位记者因“不知道联系方式”,而将“采访提纲”存放网盘。可是,网盘上的文件引起了反病毒软件的报警。

image003

图 1 微博私信所发文件引起反病毒软件报警

首先,我们根据微博截图中的短网址找到真实的文件链接,由图可知,文件链接指向百度网盘。

image004

图 2 报警文件的下载地址为百度网盘

百度网盘所有者为“南周冯翔”,分享创建时间为2015年11月30日17时4分,见下图。

image005

图 3 “南周冯翔”的百度网盘分享

同时,我们注意到另一位微博名人也向“南周冯翔”提出质疑,该评论发表于11月30日

image006

图 4 微博名人向“南周冯翔”提出质疑

对此,我们通过新浪微博搜索了这位“南周冯翔”的信息,发现其粉丝数只有三百多,而另一位“冯翔”却拥有过万的粉丝数,他们的“头像”等信息极为相似。不过,由于新浪微博的昵称是可以随意修改的,尚无法判定通过私信发送恶意代码的人是否为“南周冯翔”。我们将事件中涉及的人物关系梳理如下:

image007

图 5 人物关系

无论是原始微博截图中的头像、微博两条搜索结果显示的头像,还是百度网盘的头像,相似度都非常高,让人真假难辨。我们梳理一下整个事件过程:

image008

图 6 攻击流程示意图

虽然攻击者使用了社会工程学的方法,仿冒记者信息进行欺骗,但至今,并没有微博知名人士“中招”。下面,我们开始对样本本身进行分析。

3 文件信息

包裹文件名称 南方周末采访提纲.rar
MD5 F2928482E9F7443EDED6B366AAD554F9
文件大小 1.16 MB (1,217,174 字节)
文件格式 RAR archive data, v1d, os: Win32

包裹文件内部,只有一个与包裹文件同名的EXE文件,文件信息如下:

原始文件名 南方周末采访提纲.exe
MD5 EA878E08F10057B2477090C8017AF587
处理器架构 X86-32
文件大小 5,238 KB (5,364,268 字节)
文件格式 BinExecute/Microsoft.EXE[:X86]
文件时间 2015-11-30 16:51:21 (文件时间取自包裹内)
时间戳 53973C2B->2014-06-11 01:11:07(文件时间戳可被伪造)
数字签名 YES(伪造微软签名,数字签名无效)
开发工具: n/a
加壳工具: n/a

EXE的文件图标如下图所示,程序图标很像Word文档。

图 7 南方周末采访提纲程序图标

文件具有数字签名,而且是微软的数字签名,但该签名不能通过在线验证,怀疑其采用了一种静态仿冒数字签名的手段。

image009

图 8 南方周末采访提纲.exe仿冒微软数字签名

而衍生文件VSTquanjuhe.com具有仿冒的sogou数字签名:

image010

图 9 VSTquanjuhe.com仿冒的sogou数字签名

image011

图 9 VSTquanjuhe.com仿冒的sogou数字签名

image012

图 10 ing.exe仿冒的NVIDIA数字签名

4 样本分析

该程序在运行后,会在C盘根目录建立名为“$NtUninstallKB1601A$”的文件夹,其中包括BinBackup和tools两个子文件夹。整体目录结构如下图所示。

image013

图 11 恶意程序释放文件夹整体目录结构

该目录结构中各具体文件名称及大小见下表。

所在目录 文件名称 文件大小
.\ bmd.vbe 10.4 KB (10,698 字节)
.\ gsxt.bat 1.26 KB (1,299 字节)
ABAZ\ 1.exe 69.5 KB (71,168 字节)
ABAZ\ sl2.db 70 字节 (70 字节)
ABAZ\ speedmem2.hg 21.0 KB (21,504 字节)
ABAZ\ XueTr.dll 261 KB (267,776 字节)
ABAZ\ XueTrSDK.sys 362 KB (370,688 字节)
BinBackup\MYTEMP\ 8.3f 169 字节 (169 字节)
BinBackup\ abc.os 3.00 KB (3,072 字节)
BinBackup\ abc1601.dat 341 KB (350,190 字节)
BinBackup\ inst.ini 293 KB (300,990 字节)
BinBackup\ lang1.lnk 3 KB (3,172字节)
BinBackup\ lang2.lnk 3 KB (3,338字节)
BinBackup\ links.ini 404 KB (413,742 字节)
BinBackup\ mew.1r 42.6 KB (43,646 字节)
BinBackup\ mtfile.tpi 86.3 KB (88,462 字节)
BinBackup\ os.bat 242 字节 (242 字节)
BinBackup\ super.inf 7.01 KB (7,180 字节)
BinBackup\ test1.pfx 107 KB (110,030 字节)
BinBackup\ test2.pfx 95.1 KB (97,484 字节)
BinBackup\ ua.lnk 1 KB (1,046字节)
BinBackup\ ub.lnk 1 KB (668字节)
BinBackup\ Win1.bat 1.53 KB (1,570 字节)
BinBackup\ Win2.bat 764 字节 (764 字节)
Tools\ cmd.exe 336 KB (344,576 字节)
Tools\ ing.exe 192 KB (197,320 字节)
Tools\ ua.exe 483 KB (495,568 字节)
Tools\ VSTquanjuhe.com 51.5 MB (54,035,320 字节)

样本执行流程图如下:

image014

图 12 样本执行流程图

该样本是一个自解压程序,它使用了十多个加密脚本执行不同的恶意功能,运行后解压文件并运行解压后的程序VSTquanjuhe.com,使用验证是否存在文件"C:\\$NtUninstallKB1601A$\\BinBackup\\Images\\FreeImage.dll"的方法来校验程序是否首次运行,VSTquanjuhe.com使用极为复杂的解压密码解压文件links.ini(实为包裹文件),并使用验证是否存在文件夹"C:\Windows\SysWOW64"的方法来校验系统版本是否为64位操作系统,32位操作系统和64位操作系统调用不同的加密脚本执行。32位操作系统中(除Windows 8)通过脚本实现添加注册表启动项的操作,并重新启动操作系统,之后再次利用复杂的密码对多个文件进行解压,运行解压后的可执行文件shotdown.exe,shotdown.exe程序将释放一个名为FreeImage.dll的加密的RAR文件,通过再次重新启动系统,使用解密脚本及手工杀毒辅助工具“XueTr”覆盖360安全软件的白名单文件,并删除反病毒软件Windows Defender文件,运行解压的文件ing.exe(捆绑文件,释放VBS脚本),利用ing.exe释放的脚本解压RAR文件FreeImage.dll后得到后门程序FreImage.exe并运行,程序还可以利用文件替换的方法添加规则绕过腾讯电脑管家检测。64位操作系统及Windows 8系统的流程分支功能与32位操作系统的分支功能相差不多,主要的区别是重启系统是一次而非两次,不覆盖360安全软件的白名单文件。它们最终的目的都是运行两个后门程序。

5 衍生文件分析

文件路径名称 主要功能
ABAZ\1.exe XueTr命令行版本,供BAT及VBS脚本调用,实现强制复制、删除文件功能。
ABAZ\XueTr.dll XueTr依赖动态链接库文件。
ABAZ\XueTrSDK.sys XueTr依赖驱动文件。
Tools\ua.exe RAR命令行工具,供BAT及VBS脚本调用,实现文件解压缩。

这四个衍生的文件是较为常见的工具类程序。

5.1 Inst.ini解压文件的程序调用关系及功能描述:

Init.ini 文件虽然使用ini作为扩展名,但实际上是RAR包裹文件。

image015

图 13 inst.ini解压文件的功能描述

bmd.vbe是一个加密的脚本文件,其中包含多层加密,层层解密后最终的代码如下:

image016

图 14 bmd.vbe解密后的明文代码

它的主要功能是添加注册表启动项:“C:\$NtUninstallKB1601A$\BinBackup\ub.lnk”,随后调用gsxt.bat来替换安全软件的白名单文件,达到绕过安全软件的查杀的目的。

image017

 

image018

图 15 替换安全软件白名单

因此可以发现inst.ini包裹中文件的功能就是添加ub.lnk启动项,并尝试绕过安全软件查杀。

5.2 links.ini解压文件及基本功能描述:

links.ini 文件虽然使用ini作为扩展名,但实际上是RAR包裹文件。

image019

图 16 links.ini解压文件的功能描述

文件ua.lnk删除开始菜单与腾讯安全管家的注册表项,并修改.1r与.3f两种后缀的文件关联,使这两种后缀的文件能按vbe和inf文件的形式打开。

image020

图 17 ua.lnk代码

解压文件中的vbe脚本采用JScript Encode编码算法进行加密,比如mew.1r脚本的代码片断如下:

image021

图 18 加密的mew.1r代码

脚本采用了多次加密,反复解密后的明文代码片断如下所示。该脚本用于打开MYTEMP文件夹并调用SendKeys函数模拟键盘操作,实现选中配置文件8.3f(实为inf格式)并执行安装注册表操作:

image022

图 19 解密后的mew.1r部分代码

5.3 后门程序分析

该事件样本的最终目的是在用户系统中安装后门程序,通过上述分析,可以发现有两个后门程序:

原始文件名 FreeImage.exe unninst.exe
MD5 66FF6F32FF7096206B48D8006854C568 2A0C3E7262AD136D9D776A99E18A03CB
处理器架构 X86-32 X86-32
文件大小 686 KB (702,464 字节) 660 KB (676,352 字节)
文件格式 BinExecute/Microsoft.EXE[:X86] BinExecute/Microsoft.EXE[:X86]
时间戳 4981F684->2009-01-30 02:33:40 4981F684->2009-01-30 02:33:40
数字签名
开发工具: Borland Delphi 6.0 - 7.0 Borland Delphi 6.0 - 7.0
加壳工具:

这两个后门程序的本地行为完全一致,开启系统进程svchost.exe,并注入其中。

FreeImage.exe注入:

image023

图 20 FreeImage.exe注入svchost.exe

unninst.exe注入:

image024

图 21 unninst.exe注入svchost.exe

通过代码分析,可以找出其上线地址:

  域名 端口 IP 地理位置
FreeImage.exe C***la.meibu.net 3529 115.**.***.239 山东省青岛市 阿里云BGP数据中心
unninst.exe 1048****er.meibu.net 3529 115.**.***.239 山东省青岛市 阿里云BGP数据中心

其动态域名跳转地址都为115.28.136.239。可以推断出这两个后门都是同一网络行为与功能。同时,经过安天CERT研究人员对后门代码以及上线数据包格式的分析,可以判定这两个后门为同一远程控制生成器生成,该远程控制软件是灰鸽子源码修改的RemoteABC远程控制软件的某一版本。
此远程控制软件具有如下功能:

    • 文件管理
    • 进程管理
    • 服务管理
    • 共享管理
    • 插件管理
    • 远程开启视频和语音
    • ……

6 总结

从上述分析结果可以看出,在这起事件中,攻击者具有以下作业特点:

  1. 借助微博仿冒身份
  2. 利用百度网盘向目标人群投送恶意代码
  3. 借助常被用于处置恶意代码的工具软件,绕过系统及安全工具提供的保护机制
  4. 利用已知安全工具软件的安全漏洞,破坏安全工具软件,使之失去保护效果

根据上述作业特点,我们得出如下启示:

  • 互联网公司有必要加强对用户身份仿冒的监测与治理
  • 网盘提供厂商应加强对存储内容的安全性检查,避免被利用传播恶意代码
  • 工具软件的开发者在开发一些可能绕过、破坏系统安全机制的功能时,应尽量加入明显的用户交互确认功能,以免被恶意利用
  • 安全工具开发厂商在发现安全漏洞后,应及时发布升级补丁,并建议用户立即更新,以免漏洞被攻击者绕过,而给用户带来安全假象

附录一:本次事件中恶意样本的MD5

0C5261CB53CF17E0A03CA1E6A230430B 29017A44550FBC8AA4D64820044F54EC
1E6726ED20B88CD2C3E546306E5A3C72 34220AFE857F99A493F4171482E7E8FE
2A0C3E7262AD136D9D776A99E18A03CB 480145BA7EE820C20AB7D2AD97F95005
3B86EC0243AB626A11787DA0C53C302A A133284DA52E3CC848C175D73732E88A
3EE804C0D1AB806BB837FE061A80B457 AFFB80A87F53E67CA886935E44D2BB6E
5D47C0554EE28E8532F0430CF8235195 B3E18430E5353F6FEF2E787551A78921
35D779D412FA3682330162FAEDC7D26E B60F57B01A0382C9D9372E78D95D6386
40E292484019A58AD3AA5C99EF993614 B5713261E7338431FF430DE6E1ACE47A
44FADA41819963DD353E62026011F6D5 BDB0A5261D139F7B4804C6B03A3E909F
45ADCB2BDD43FB32F4BA9542E7788F13 C0**57F28C7657FB5B99E2CDD447EED9
53F88B226236125C816B795BFB8E239E D2B983C66658C8A3DEF1E77E12AB8689
66FF6F32FF7096206B48D8006854C568 EB5F29A9A9EDCD600F2846403E4B4223
110F6A386798757904892EDB5866A453 F0F1038A3F455EAFEAB73944CC09FC08
887E9654A1E8C956013BB5961A4FDC6B FB24C79B390D3CA14755C1F3DF3E6600

 

【原文:一例以“采访”为社工手段的定向木马攻击分析  作者:安天安全研究与应急处理中心(Antiy CERT)   安全脉搏整理发布

本文作者:SP小编

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/42056.html

Tags:
评论  (0)
快来写下你的想法吧!

SP小编

文章数:209 积分: 25

交流和分享以及愉快的玩耍

安全问答社区

安全问答社区

脉搏官方公众号

脉搏公众号