freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

变种入侵?Emotet木马变种预警
2019-05-23 16:56:26

环境:Windows 7 32位

工具:Ollydbg、Wireshark、IDA Pro

文件信息:

046029df31a8d03a48e12d144fa51f0a



安全工作人员日前在进行应急响应时捕捉到一个恶意样本,根据VT信息,该样本疑似属于Emotet木马家族,于2015年11月12日创建,但第一次提交为2019年5月18日,猜测该木马可能进行了变种,因此安全分析人员对该样本进行了简要分析。

一 木马定义

木马程序(Trojan horse program)通常称为木马、恶意代码等,是指潜伏在电脑中,可受外部用户控制以窃取本机信息或者控制权的程序。木马指的是特洛伊木马,英文叫做“Trojan horse”。木马程序带来很多危害,例如占用系统资源,降低电脑效能,危害本机信息安全(盗取QQ帐号、游戏帐号甚至银行帐号),将本机作为工具来攻击其他设备等。

Emotet背景

Emotet是一种银行木马恶意软件程序,它通过将计算机代码注入受感染计算机的网络堆栈来获取财务信息。但由于该木马具有模块化架构及自我传播功能,使它可以根据不同情形传播恶意软件。该木马编写者似乎也因此转变了商业模式,从针对欧洲的银行客户转变为了使用其基础设施为全球其他威胁行为者提供恶意软件包装和交付服务。


近日,《铁穹高级持续性威胁预警系统》捕捉到一个恶意样本,并及时进行了告警通报。2046Lab在应急响应过程中对该样本进行了威胁检测和分析,判定为:疑似Emotet木马变种。

图片1.png

二 行为流程

QQ截图20190523095725.gif

三 详细分析

该样本首先在内存空间中提取解密出一段代码并跳转至该代码所在的内存空间。

图片1.png

该段代码将向内存地址00400000写入新的代码,该内存地址为原样本的的起始加载位置,因此该样本具有自修改功能。自修改时,代码将逐节对原样本进行修改。

图片2.png

随后返回修改后的主内存空间,并创建一个命令行参数,该参数将在随后用以判断样本是否通过CreateProcess()函数创建子进程运行。

图片3.png

若目前样本在主进程中运行,则创建相应子进程。

图片4.png

至此主进程功能结束,主进程将随后调用ExitProcess()函数退出。当子进程以悬挂模式生成时,使用Ollydbg进行附加,由于此时该样本在子进程中运行,通过之前的命令行参数比较判断,将不再跳转至创建子进程的分支。

图片5.png

该子进程将获取驱动器的信息。

图片6.png

创建两个以Global开头的互斥量。

图片7.png图片8.png

向内存中写入并加载advapi32.dll、shell32.dll中的函数,这些函数将在随后复制文件与创建服务中被调用。  图片9.png图片10.png

获取大量字符串,该字符串将随机进行拼接作为复制体的文件名,例如在本次运行中使用的字符串random、key。 图片11.png

尝试删除文件。图片12.png

创建原样本的复制体至”C:\Windows\system32\”文件夹下,文件名为之前拼接得到的字符串。图片13.png

尝试删除文件。图片14.png


将原样本的复制体作为服务创建。图片15.png

修改服务描述以增加迷惑性。图片16.png

随后启动该服务,并结束子进程。当该样本以服务模式启动时,将首先在内存中写入并加载crypt32.dll、urlmon.dll、userenv.dll、wininet.dll、wtsapi32.dll中的函数,通过函数名可以进行猜测,随后该服务将进行信息加密与网络连接行为。 图片17.png


获取用户名、版本信息及系统信息。图片18.png

枚举正在运行的进程。图片19.png

获取将要进行通信的IP,该IP有多个候选,候选值在内存地址0040F710处开始,本次连接使用的是该地址的前四个字节,即为80.0.106.83。图片20.png

获取大量字符串,该字符串将被随机选取用以拼接URL。图片21.png

拼接HTTP头中的Referer字段。图片22.png

调用GetTickCount()函数得到返回值并进行加密作为将发送的参数名图片23.png

将之前的系统信息及进程名统一加密并与参数名拼接作为将要发送的HTTP请求的body部分。图片24.png

继续拼接HTTP头中的字段。图片25.png

将拼接的信息发送。图片26.png

由于该次运行的IP 80.0.106.83未进行应答,样本随后进行循环重新获取IP并选取随机字符串拼接新的URL直至连接成功。图片27.png

若服务器返回数据,则调用函数InternetReadFile()读取返回的数据。图片28.png

在该次运行中,存在多次不同URL的POST请求,但返回值均为相同值且无后续操作,猜测该返回值功能为保持连接并持续向控制端发送主机信息。

若成功接收文件,样本将对返回数据进行解密,随后根据相应解密后的字节进行后续文件的下载执行操作。微信图片_20190523163155.png


后续文件会包括内网感染组件、暴力破解组件、勒索软件组件等。这些恶意文件被分发到受害者主机后,将持续大规模地造成财产损失。

四 IOCs

Md5

046029df31a8d03a48e12d144fa51f0a

C&C

80.0.106.83

81.143.213.156

86.155.233.74

186.71.75.2

80.0.106.83/odbc

80.0.106.83/schema/forced

186.71.75.2/acquire

186.71.75.2/iplk/prep/loadan/merge

186.71.75.2/enabled/nisp/free


五 防护措施

1.关闭易受攻击的端口(如139,445等端口);

2.不使用弱口令密码;

3.更新病毒库,查杀主机中的恶意病毒;

4. 推荐使用“铁穹高级持续性威胁预警系统”(简称“铁穹”)发现潜在的攻击行为,及时响应和阻断,避免造成业务中断或经济损失。






# 木马 # 变种 # 样本分析
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者