Gafgyt家族物联网僵尸网络家族分析
2019-12-25 14:00:15 Author: www.freebuf.com(查看原文) 阅读量:136 收藏

背景

随着IOT(物联网)设备被越来越多的使用,互联网上针对IOT设备的攻击也在日益增加。相对于对传统终端安全性的重视程度,如各种杀软,终端检测,防火墙的使用,个人及企业用户对IOT设备的安全性重视仍然不够。加之IOT设备固件更新缓慢,被攻击后发现周期长的特性,使得攻击者可以以更低成本获得一台有更长控制权限的设备。这些被攻陷的IOT设备通常被用于发动DDoS攻击。著名僵尸网络家族mirai曾在2016年,利用数十万台IOT设备对域名解析商Dyn发起DDoS攻击,导致几乎整个美国东海岸的网络陷入瘫痪。Gafgyt是与Mirai类似的知名僵尸网络家族,本文将对其从多个角度进行详细分析。

简介

Gafgyt(又称BASHLITE,Qbot,Lizkebab,LizardStresser)是一款基于IRC协议的物联网僵尸网络程序,主要用于发起DDoS攻击。它可以利用内置的用户名、密码字典进行telnet爆破和对IOT设备RCE(远程命令执行)漏洞利用进行自我传播。于2015年泄露源码并被上传至github,此后衍生出多个变种,次年对互联网上的IOT设备的总感染数达到100W。Gafgyt家族曾发起过峰值400Gbps的DDoS攻击。截至2019年底,Gafgyt家族仍是除Mirai家族外的最大活跃物联网僵尸网络家族。

样本来源

本文分析的样本均来自于互联网。

目标

地域:不限

目标设备:IOT

目标行业:不限

In The Wild IP热力图

源码分析

Client端

注释

使用图形化的注释,将整个文件分为15个部分,分别为defines,includes,Config,Functions,Globals,FPRNG,utils,IP Utils,TelnetScanner lel,UDP Flood,TCP Flood,JUNK Flood,Hold Flood,Send Email,IRC Main。

C2服务器列表

Globals,全局变量声明,包含爆破用的用户名/密码对

控制端下发命令格式: !command arg

PING

测试对方是否存活

客户端

服务端

GETLOCALIP

使用getsockname获取本机ip并返回给服务器

SCANNER

分为SCANNERON/OFF两个命令,分别为开始/结束telnet扫描线程。整个扫描过程由state和complete两个标记位进行控制

下面对telnet扫描过程进行详细分析:

telnet扫描共分为10步:

1 生成随机IP,并尝试对IP的23端口进行socket连接。如果连接成功,state置为1,进行下一步;否则state仍为0,重复当前步骤。

2 使用select函数判断上一步建立的socket连接是否可用,如果不可用将state置为0,返回第一步;如果可用继续用getsockopt函数获取socket的选项,获取成功state置为2,否则置为0。

3尝试从socket返回的数据中查找”ogin”(推测为telnet的登陆标记login,为什么少了一位不清楚),如果能读取到state置为3

4尝试发送用户名列表中的用户名和回车标记,如果发送成功state置为4

5读取服务器端返回,如果上一步的用户名输入成功,服务器应该会进一步响应password并等待客户端输入密码,因此该步尝试从socket中查找“assword”标记,若找到state置为5,否则认为不需要密码可直接登录,state置为100;若找到的标记为“ncorrect”(推测为incorrect,用户名错误时服务器的响应内容),state置为0。

6尝试发送密码和回车,发送成功标记state置为6

7尝试查找服务器返回的字符串中是否由”ncorrect”标记,如果找到,state置为0,否则查找一系列登陆成功后的命令行标记(:>%$#\0),如果找到,state置为7

8发送“sh/r/n”标记,尝试调用sh,发送成功state置为8,否则置为0

9发送以下内容(在控制台中打印gafgyt),成功则state置为9

/bin/busybox;echo -e'\\147\\141\\171\\146\\147\\164'\r\n

10检查返回值,打印结果:目标ip,登陆成功的用户名和密码

EMAIL

向指定邮件服务器发送请求,尝试向指定邮箱发送指定内容。在当前版本的源码中该方法被注释

JUNK

TCP 泛洪攻击,向指定IP指定端口发送指定时间的随机字符串,使用命令

        JUNK <ip><port> <time>

发送的过程与telnet扫描类似,建立socket连接

判断连接是否可用

检查连接选项

最后生成1024长度的随机字符串并写入socket

随机字符串生成规则为任意大写字母

UDP

UDP泛洪攻击,向指定IP和端口发送指定时间长度的任意字符串,且具有源IP地址欺骗功能。使用命令:

UDP<target> <port (0 for random)> <time> <netmask (32 for nonspoofed)> <packet size (1 to 65500)> (time poll interval, default 10)

不开启源地址欺骗过程比较简单,建立连接,循环发送字符串

开启源地址欺骗需要先构造IP包,写入随机IP地址,并填充随机字符串,最后计算校验和并循环发送

TCP

TCP泛洪攻击,除TCP flags设置之外,其余与UDP基本一致。使用命令:

TCP<target> <port (0 for random)> <time> <netmask (32 for nonspoofed)> <flags (syn, ack, psh, rst, fin, all) comma seperated>(packet size, usually 0) (time poll interval, default 10)

攻击者可自定义tcp报文的flags位,可选项syn/rst/fin/ack/psh,且可任意选择一种或全部使用

HOLD

在指定时间内,持续尝试与指定IP和端口建立TCP连接,但是不发送任何数据

KILLATTK

通过Kill掉除主进程外的所有子进程来停止DoS攻击

LOLNOGTFO

C2通过IP地址判断,同一个肉鸡多次发送上线包时,即肉鸡多次执行恶意elf的情况,C2会下发该命令强制退出当前启动的进程。

流量分析

PING/PONG指令

GETLOCALIP指令

SCANNER ON指令

JUNK指令

TCP伪造源IP,flags设置为all

UDP伪造源IP,包长度设置为1000

HOLD命令

单条session

DoS攻击小结

攻击者在利用控制的僵尸主机发起DoS攻击时,出于隐藏攻击源IP的目的,会重新构造IP层报文以重设源IP;而TCP和UDP报文都是基于IP头的,当使用自建IP头时,TCP/UDP报文也需要重建。这种隐藏攻击源IP的方式常见于不需要建立三次握手的DoS攻击中,如TCP flood和UDP flood,需要建立三次握手的JUNK flood则会因为第二次握手包返回到伪造的IP而导致连接建立失败,无法通过TCP连接发送垃圾数据报文。而IP packet中的部分字段是有“上下文的“而非固定的,这就导致攻击者需要使用一些值去填充这些字段。

在Gafgyt家族客户端中,对IP头的重构部分源代码如下

可以看到IP头的id字段被填充为随机字符串。根据RFC定义,IP层包的头结构如下:

其中id应该是对应identification字段。操作系统中的IP构造方法会维持一个计数器,每产生一个IP报文该值会+1。攻击者在构造报文时无法读取上一个identification值,自然只能用随机或固定数值去填充。虽然IP协议是无连接协议,使得这个值不能作为序列号使用,但是identification值的自增特性决定了它一定程度上可以作为一种弱判断标记。

再来看TCP头的构造代码:

TCP头共有3个字段被填充为随机值,1个值被填充为0。TCP头结构如下:

代码中的source字段应该对应source port,可以忽略;seq字段对应sequence number,ack_seq字段对应acknowledgement number,这两者为TCP可靠传输的保证。sequence number为当前包中payload第一个字节的序号,acknowledgement number代表已接收数据的序号,这两者都是有状态的,如果能在性能允许的情况下维护一个TCP报文的序号表,那么使用这个表是可以进行这种类型的DoS防御的。即新来的报文既没有SYN标记,它的seq和ack序号又不能在序号表中找到对应项,那么该报文一定是可以直接丢弃的。

Window字段即滑动窗口值,该值用于接收端告诉发送端当前能够接收的最大数据字节数。该值会随接收方主机链路情况发生变化,不适用于DoS报文检测。

UDP包头中只有源端口被填充为随机值,在此不再分析。

主机特征

开放端口,生成进程/子进程。

关联分析

基于在一定时间内使用同一基础设施(如C2/ITW)的样本属于同一团伙的假设,对2019年捕获到的所有Gafgyt家族样本进行C2/ITW 信息提取并进行关联,关联结果如下:

其中红色点代表ITW地址,绿色点代表C2地址,每一条边代表所连接的两个点的地址曾出现在同一样本中(或从一个点对应地址下载的样本会以另一点对应地址为C2)。其中独立的点代表其ITW和ip为同一地址。

可以比较明显的看到关联超过5个点的类有三个,按照从下至上的顺序将其命名为家族1、家族2和家族3。

家族分析

家族1

家族1中包含1个C2地址和6个ITW地址。

从蜜罐获取样本的时间来看,该家族的活跃时间为2019年4月26日至今。4月26日第一次出现的样本,被存储在89.46.223.195服务器上,共涵盖9种架构,大多数为静态链接并剥离了调试信息,只有一个样本为静态编译未剥离调试信息。

从样本中方法调用情况来看,该样本并不完整,疑似攻击者正在对样本进行测试而未正式使用。与原始样本相比,该样本有如下变化:

1.增加了20+种控制命令,包含给客户端增加nickname,修改客户端内置C2地址,通讯流量加密以及远程下载文件并执行的方法,显著增强了样本功能(部分命令未实现)

2.添加自启动功能,避免设备重启后失去控制权

3.进行telnet扫描时使用如下payload,而原始样本仅进行弱口令扫描。

从脚本可以看出在进行传播时,脚本先通过wget获取样本托管服务器上的sh脚本保存到本地并重命名,再通过执行sh脚本进一步下载真正的恶意样本。sh脚本会下载所有架构的样本并依次执行,以保证在不同架构的设备上都能够使对应的样本运行起来。

4.新增多种DoS攻击方式,且为可伪造源IP的DoS攻击编写了专门的包头构造方法

且字符串窗口中存在大量user-agent信息,疑似为实现HTTP Flood攻击做准备:

5.增加对8种应用/设备的RCE漏洞扫描和利用

6.还有一段似乎是对某安全研究人员的嘲讽

攻击者于4月27日对样本进行了第一次更新,样本命名方式改为abe.+样本架构,仍然包括9种架构的样本,投递服务器为89.46.223[.]199。

对比发现内部仅有扫描Payload中的恶意脚本下载地址和编译器生成的部分内容发生改变,脚本下载地址由89.46.223[.]199修改为89.46.223[.]195。

此次更新后,89.46.223[.]195和89.46.223[.]199同时托管恶意样本且内置脚本下载链接均为对方IP。直到5月2日,新的恶意样本托管服务器89.46.223[.]180加入,托管样本与之前的两个IP托管的样本一致,样本内置扫描payload种的下载链接为89.46.223[.]195。

5月8日,新的恶意样本托管服务器89.46.223[.]81加入,且前述3个样本托管服务器均停止使用。89.46.223[.]81上托管的样本,内置扫描Payload中的downloader脚本为自身。

6月12日,新的样本托管服务器89.32.41[.]15上线,托管的样本仅有7种架构且均为剥离调试信息。对样本进行静态分析发现样本内容仍没有改动。内置扫描Payload中的恶意样本下载地址为89.46.223[.]81。

此后该家族停止恶意活动,直至10月22日重新开始恶意活动,此时恶意样本托管服务器ip为151.80.197[.]109,托管的样本仍然覆盖9种架构CPU,仍然只有64位MIPS架构样本未剥离调试信息。但是此时样本大小发生了明显变化,由之前的520KB变为720KB。

通过静态分析,本次样本更新主要新增了以下几种用于自我传播的RCE漏洞和用于CC攻击的User-Agent内容。新增漏洞payload如下:

小结

活跃时间线:

2019年4月26日,样本托管服务器89.46.223[.]195上线,样本内嵌下载ip:89.46.223[.]195

2019年4月27日,样本托管服务器89.46.223[.]199上线,样本内嵌下载ip: 89.46.223[.]195

2019年5月2日,样本托管服务器89.46.223[.]180上线,样本内嵌下载ip: 89.46.223[.]199

2019年5月8日,样本托管服务器89.46.223[.]81上线,样本内嵌下载ip: 89.46.223.81/89.46.223[.]195

2019年6月12日,样本托管服务器89.32.41[.]15上线,样本内嵌下载ip: 89.46.223.81/89.46.223[.]195

2019年10月22日,样本托管服务器151.80.197[.]109上线,样本内嵌下载ip: 151.80.197[.]109/89.46.223[.]81。样本新增漏洞利用Payload和User-Agent。

扩散手法:telnet弱口令扫描,RCE漏洞利用

目标地域:随机IP

目标设备:IOT

目标CPU架构:ARM,ARM(GNU/Linux),Intel 80386,MIPS64,MIPS-I,Motoroal68020,PowerPC,Renesas SH,x86-64

样本编译情况:静态链接,stripped

漏洞列表:

序号 CVE 名称
1 CVE-2019-3929 Optoma远程命令注入漏洞
2 CVE-2018-10561 Dasan GPON远程命令执行漏洞
3 CVE-2018-14847 MicroTik远程命令执行漏洞
4 CVE-2018-20841 HooToo路由器远程命令执行漏洞
5 CVE-2017-17215 HUAWEI HG532远程命令执行漏洞
6 CVE-2016-6277 NETGEAR命令注入漏洞
7 CVE-2014-8361 Miniigd UPnP SOAP命令执行漏洞
8 - CCTV-DVR远程命令执行漏洞
9 - DLink Router远程命令注入漏洞
10 - UPnP SOAP命令执行漏洞
11 - Eir D1000远程命令注入漏洞
12 - ZyXEL路由器远程命令注入漏洞
13 - ThinkPHP5远程命令执行漏洞
14 - NETGEAR DGN1000远程命令执行漏洞
15 - DLink DSL命令注入漏洞
16 - VACRON CCTV远程命令执行漏洞

IOC:

序号 IP country
1 151.80.197[.]109 United Kingdom
2 89.46.223[.]81 United Kingdom
3 89.46.223[.]195       United Kingdom
4 89.46.223[.]180       Romania
5 89.32.41[.]15 United Kingdom
6 89.46.223[.]199 France
7 54.36.212[.]123 United Kingdom

(涉及样本较多,不在此列出)

家族2

家族2活跃支持的架构较少,在活跃时间范围内仅有4个样本。

序号 哈希 架构
1 30a0c139fd384484d723e73a34547a25 MIPS-I,statically linked, stripped
2 624d47eda16cfc7ff1b97496fd42243a Intel 80386, statically linked, stripped
3 eda730498b3d0a97066807a2d98909f3 ARM, version 1, statically linked, stripped
4 b9d461d7157eb8b726ef9eecebb6cb9a MIPS-I, statically linked, stripped

如上表所示,样本均为静态编译且剥离了调试信息。

与原始样本相比,该家族样本主要变化如下:

通过将自身加入到系统初始化目录中实现自启动

入侵IOT设备成功后,通过修改配置文件、iptables禁用端口的方式关闭管理/控制端口,已以控制时间:

厂商一光猫:

厂商二光猫

利用10种RCE漏洞进行自我传播:

小结

活跃时间线:

2019年10月30日,样本托管服务器115.51.203[.]137上线,投递样本eda

2019年10月31日,样本托管服务器115.51.203[.]137新投递样本30a,624

2019年11月1日,样本托管服务器118.249.40[.]35和220.135.22[.]121上线,分别投递样本30a和eda;

2019年11月2日,样本托管服务器101.65.118[.]108和182.113.234[.]110上线,投递样本eda和b9d

2019年11月5日,样本托管服务器220.134.139[.]113上线,投递样本eda

2019年11月6日,样本托管服务器218.35.45[.]116上线,投递样本eda

2019年11月7日,样本托管服务器183.196.233[.]193上线,投递样本eda

2019年11月8日,样本托管服务器182.127.92[.]221和39.77.124[.]251上线,投递样本30a,624,eda

2019年11月10日,样本托管服务器42.225.182[.]239上线,投递样本30a和eda

2019年11月13日,样本托管服务器101.65.118[.]108上线,投递样本eda

2019年11月15日,样本托管服务器221.223.37[.]152和42.231.94[.]209上线,分别投递样本eda和30a

2019年11月16日,样本托管服务器114.240.90[.]197和221.223.37[.]152上线,分别投递样本30a、eda和30a、624

扩散手法:telnet弱口令扫描,RCE漏洞利用

目标地域:随机IP

目标设备:IOT

目标CPU架构:ARM, Intel 80386,MIPS-I

样本编译情况:静态链接,stripped

漏洞列表:

序号 CVE 名称
1 CVE-2016-6277 NETGEAR命令注入漏洞
2 CVE-2017-17215 HUAWEI HG532远程命令执行漏洞
3 CVE-2018-10561 Dasan GPON远程命令执行漏洞
4 CVE-2014-8361 Miniigd UPnP SOAP命令执行漏洞
5 - ZyXEL路由器远程命令注入漏洞
6 - DLink Router远程命令注入漏洞
7 - UPnP SOAP命令执行漏洞
8 - CCTV-DVR远程命令执行漏洞
9 - NETGEAR DGN1000远程命令执行漏洞
10 - VACRON CCTV远程命令执行漏洞

IOC:

IP列表

序号 IP country
1 87.98.162[.]88 Franc
2 101.65.117[.]115 China
3 101.65.118[.]108 China
4 101.65.119[.]23 China
5 114.240.90[.]197 China
6 115.51.203[.]137 China
7 118.249.40[.]35 China
8 182.113.229[.]250 China
9 182.113.234[.]110 China
10 182.127.92[.]221 China
11 183.196.233[.]193 China
12 218.35.45[.]116 China
13 220.134.139[.]113 China
14 220.135.22[.]121 China
15 221.223.37[.]152 China
16 39.77.124[.]251 China
17 42.225.182[.]239 China
18 42.231.94[.]209 China

样本列表

序号 哈希 架构
1 30a0c139fd384484d723e73a34547a25 MIPS-Istatically linked, stripped
2 624d47eda16cfc7ff1b97496fd42243a Intel 80386, statically linked, stripped
3 eda730498b3d0a97066807a2d98909f3 ARM, version 1, statically linked, stripped
4 b9d461d7157eb8b726ef9eecebb6cb9a MIPS-I, statically linked, stripped

用户名列表

序号 用户名
1 root
2 admin
3 super
4 telnetadmin
5 !!Huawei
6 keomeo
7 support
8 e8telnet
9 e8ehome1
10 e8ehome
11 user
12 mother
13 Administrator
14 service
15 supervisor
16 guest
17 admin1
18 666666
19 888888
20 ubnt
21 tech

密码列表

序号 用户名
1 root
2 admin
3 xc3511
4 vizxv
5 888888
6 gpon
7 Zte521
8 hg2x0
9 epicrouter
10 conexant
11 xJ4pCYeW
12 v2mprt
13 PhrQjGzk
14 h@32LuyD
15 gw1admin
16 adminpass
17 xmhdipc
18 default
19 juantech
20 telnetadmin
21 @HuaweiHgw
22 adminHW
23 2010vesta
24 2011vesta
25 keomeo
26 plumeria0077
27 cat1029
28 123456
29 54321
30 support
31 e8telnet
32 e8ehome1
33 e8ehome
34 hi3518
35 password
36 12345
37 user
38 fucker
39 pass
40 admin1234
41 1111
42 smcadmin
43 666666
44 1234
45 klv123
46 service
47 supervisor
48 guest
49 ubnt
50 klv1234
51 zte
52 jvbzd
53 anko
54 zlxx
55 7ujMko0vizxv
56 7ujMko0admin
57 system
58 ikwb
59 dreambox
60 realtek
61 1111111
62 123456
63 meinsm
64 tech

家族3

家族3中包含1个C2和40个ITW IP.

该家族至少从2019年1月2日开始活动(只筛选了2019年以后的样本)至2019年9月28日。2019年样本第一出现是部署在31.214.157[.]71服务器上。

与家族1和2一致,该家族同样是先通过下载shell脚本再运行的方式下载真正的恶意二进制样本并运行,以适应不同架构设备环境。

这个shell脚本中使用了一个小技巧,即使用“||”符号来分隔cd directory命令。这样当/tmp目录不存在时,系统会提示“No such file or directory”,但仍会继续执行第二个cd directory命令。这样既能满足在不常用目录存储恶意样本不被发现的需求,又能在不常用目录不存在时使得恶意样本能正常保存下来。

与家族1和家族2相比,家族3的样本并没有刻意剥离调试信息;样本命名方式简单粗暴,直接采用架构简称作为样本名称:

对其中的x86架构样本进行简单静态分析,与原始代码区别如下:

首先对自身进程重命名为/usr/sbin/dropbear

调用table_init函数,初始化一系列加密后的数据

然后调用函数进行解密。从攻击者没有剥离调试信息看,进行加密的主要目的是防止直接从静态字符串中看到这些信息。

解密算法如下:

要获得解密后的信息有两种方式:

(1)调试。使用ida pro远程调试样本,打开ida pro安装目录下的dbgsrv目录,根据样本架构选择linux_server64,与待调试样本一起放到一台linux主机的某一目录下,修改linux_server64的权限并运行,得到调试端口23946。简单分析代码逻辑,回到ida中在长度比较和结果返回两处位置下断

调试器选项中选择Remote Linux debugger,点击开始调试,输入linux主机IP和端口,断下来后观察异或操作时修改的位置,循环两次后发现程序对堆上的0x23e8050地址进行修改。取消第一个断点,运行发现字符串已经解密,内容为:

并不是想象中的恶意服务器地址信息。

(2)当目标样本难以进行调试时,可以对解密逻辑进行分析,并使用Python代码实现逻辑完成解密。该样本进行了初始化和解密两个步骤,所以先需要分析初始化逻辑,将数据布置在内存中之后再进行解密。

初始化逻辑比较简单,直接将字符串部署在table列表的指定位置

解密函数的输入参数为待解密字符串在table种的索引,解密算法为从低到高依次取table_key的一位与加密字符串进行异或计算,异或后的结果继续与table_key取出的下一位进行异或,四次异或后即为解密结果。

使用Python实现以上逻辑:

依次对加密字符串进行解密,结果如下:

利用CVE-2017-17215远程命令执行漏洞进行传播

利用Realtek SDK -Miniigd UPnP SOAP远程命令执行漏洞进行传播

然后开始循环调用processCmd函数,监听来自服务端的信息,并进行对应处理。与原始样本相比,发生变化的命令变动如下:

新增“HTTP”命令,用于对目标地址发起CC攻击

新增“STD”命令,用于发起udp STD flood攻击

新增“CRASH”命令,用于发起RTCP flood攻击

新增“CRUSH”命令,用于发起TCP flood和STD flood。

新增“SMITE”命令,用于发起针对Valve Source Engine的泛洪攻击。

新增“CNC命令”,用于切换客户端连接的CNC端

然后直到2019年2月5日,攻击者在104.168.143[.]19上部署新样本。通过对比发现,仅有利用漏洞传播时payload中的下载链接发生变化

2019年2月20日,攻击者在104.168.169[.]89上部署新样本,样本功能仍未发生改变,利用漏洞传播时payload中的下载地址为31.214.157[.]71

2019年2月22日,攻击者在176.31.78[.]52上部署新样本,新增对4种RCE漏洞的利用。漏洞已包含在家族1中,在此不再详细分析。

2019年3月19日,攻击者在68.183.121[.]242上部署新样本,样本中增加了大量的User-Agent字符串

接下来一段时间内,攻击者一直在新的服务器上部署样本,但是样本功能基本未发生变化。知道2019年7月28日,攻击者在165.22.187[.]56上部署新样本,downloader脚本和样本命名方式均未改变,样本大小由141KB变化为245KB。但是经分析发现,攻击者只是在样本尾部添加了部分字符串,并未对样本结构产生影响,IDA也未解析这部分数据。

2019年8月7日,攻击者在185.244.25[.]75上部署新样本。样本命名方式变为样本md5作为样本名,样本内容未发生变化。

小结

活跃时间线:

2019年01月02日,样本托管服务器31.214.157[.]71上线,样本内嵌下载ip:31.214.157[.]71

2019年02月05日,样本托管服务器104.168.143[.]19上线,样本内嵌下载ip:104.168.143[.]19

2019年02月20日,样本托管服务器104.168.169[.]89上线,样本内嵌下载ip:31.214.157[.]71

2019年02月22日,样本托管服务器176.31.78[.]52上线,样本内嵌下载ip:176.31.78[.]52

2019年02月28日,样本托管服务器142.93.11[.]223上线,样本内嵌下载ip:142.93.11[.]223

2019年03月15日,样本托管服务器35.246.45[.]191上线,样本内嵌下载ip:35.246.45[.]191

2019年03月19日,样本托管服务器68.183.121[.]242上线,样本内嵌下载ip:68.183.121[.]242

2019年03月20日,样本托管服务器188.166.116[.]249上线,样本内嵌下载ip:188.166.116[.]249

2019年03月26日,样本托管服务器157.230.92[.]69上线,样本内嵌下载ip:157.230.92[.]69

2019年03月27日,样本托管服务器68.183.148[.]125上线,样本内嵌下载ip:68.183.148[.]125

2019年03月28日,样本托管服务器46.36.35[.]127上线,样本内嵌下载ip:46.36.35[.]127

2019年03月31日,样本托管服务器185.244.25[.]117上线,样本内嵌下载ip:185.244.25[.]117

2019年03月31日,样本托管服务器68.183.24[.]85上线,样本内嵌下载ip:68.183.24[.]85

2019年04月03日,样本托管服务器185.244.25[.]114上线,样本内嵌下载ip:185.244.25[.]114

2019年04月06日,样本托管服务器194.135.92[.]252上线,样本内嵌下载ip:194.135.92[.]252

2019年04月09日,样本托管服务器104.248.28[.]163上线,样本内嵌下载ip:104.248.28[.]163

2019年04月11日,样本托管服务器134.209.8[.]154上线,样本内嵌下载ip:134.209.8[.]154

2019年04月11日,样本托管服务器188.166.63[.]234上线,样本内嵌下载ip:188.166.63[.]234

2019年04月21日,样本托管服务器157.230.4[.]62上线,样本内嵌下载ip:157.230.4[.]62

2019年04月30日,样本托管服务器185.172.110[.]226上线,样本内嵌下载ip:185.172.110[.]226

2019年05月10日,样本托管服务器37.49.225[.]230上线,样本内嵌下载ip:37.49.225[.]230

2019年05月14日,样本托管服务器188.166.14[.]76上线,样本内嵌下载ip:188.166.14[.]76

2019年05月16日,样本托管服务器198.12.97[.]73上线,样本内嵌下载ip:198.12.97[.]73

2019年05月17日,样本托管服务器174.138.52[.]74上线,样本内嵌下载ip:174.138.52[.]74

2019年05月24日,样本托管服务器107.173.57[.]152上线,样本内嵌下载ip:107.173.57[.]152

2019年06月03日,样本托管服务器185.172.110[.]214上线,样本内嵌下载ip:185.172.110.214

2019年06月10日,样本托管服务器204.48.18[.]12上线,样本内嵌下载ip:204.48.18[.]12

2019年06月13日,样本托管服务器139.99.137[.]154上线,样本内嵌下载ip:139.99.137[.]154

2019年06月14日,样本托管服务器185.172.110[.]238上线,样本内嵌下载ip:185.181.11[.]144

2019年06月17日,样本托管服务器159.89.177[.]184上线,样本内嵌下载ip:159.89.177[.]184

2019年06月20日,样本托管服务器195.231.8[.]82上线,样本内嵌下载ip:195.231.8[.]82

2019年06月20日,样本托管服务器198.175.125[.]100上线,样本内嵌下载ip:104.248.167[.]251

2019年06月22日,样本托管服务器54.39.7[.]243上线,样本内嵌下载ip: 195.231.8[.]82

2019年07月02日,样本托管服务器198.199.76[.]237上线,样本内嵌下载ip:198.199.76[.]237

2019年07月07日,样本托管服务器178.128.245[.]57上线,样本内嵌下载ip:178.128.245[.]57

2019年07月09日,样本托管服务器134.209.80[.]188上线,样本内嵌下载ip:134.209.80[.]188

2019年07月26日,样本托管服务器167.114.115[.]119上线,样本内嵌下载ip:167.114.115[.]119

2019年07月28日,样本托管服务器165.22.187[.]56上线,样本内嵌下载ip:165.22.187[.]56

2019年08月06日,样本托管服务器185.244.25[.]75上线,样本内嵌下载ip:185.244.25[.]75

2019年09月28日,样本托管服务器174.128.226[.]101上线,样本内嵌下载ip:174.128.226[.]101

扩散手法:telnet弱口令扫描,RCE漏洞利用

目标地域:随机IP

目标设备:IOT

目标CPU架构:ARM,ARM(SYSV),Intel 80386,MIPS-I,Motoroal 68020,PowerPC,Renesas SH,x86-64,SPARC

样本编译情况:静态链接,not stripped

漏洞列表:

序号 CVE 名称
1 CVE-2018-10561 Dasan GPON远程命令执行漏洞
2 CVE-2017-17215 HUAWEI HG532远程命令执行漏洞
3 CVE-2014-8361 Miniigd UPnP SOAP命令执行漏洞
4 - DLink DSL命令注入漏洞
5 - ZyXEL路由器远程命令注入漏洞
6 - ThinkPHP5远程命令执行漏洞

IOC:

IP列表

序号 IP country
1 206.189.136[.]239 India
2 104.168.143[.]19 United States
3 104.168.169[.]89 United States
4 104.248.28[.]163 Germany
5 107.173.57[.]152 United States
6 134.209.8[.]154 United States
7 134.209.80[.]188 Netherlands
8 139.99.137[.]154 Australia
9 142.93.11[.]223 United States
10 157.230.4[.]62 United States
11 157.230.92[.]69 United States
12 159.89.177[.]184 United States
13 165.22.187[.]56 United States
14 167.114.115[.]119 Canada
15 174.128.226[.]101 United States
16 174.138.52[.]74 United States
17 176.31.78[.]52 France
18 178.128.245[.]57 Netherlands
19 185.172.110[.]214 Netherlands
20 185.172.110[.]226 Netherlands
21 185.172.110[.]238 Netherlands
22 185.244.25[.]114 Netherlands
23 185.244.25[.]117 Netherlands
24 185.244.25[.]75 Netherlands
25 188.166.116[.]249 Netherlands
26 188.166.14[.]76 Netherlands
27 188.166.63[.]234 Netherlands
28 194.135.92[.]252 Lithuania
29 195.231.8[.]82 Italy
30 198.12.97[.]73 United States
31 198.175.125[.]100 United States
32 198.199.76[.]237 United States
33 204.48.18[.]12 United States
34 31.214.157[.]71 Netherlands
35 35.246.45[.]191 United Kingdom
36 37.49.225[.]230 Netherlands
37 46.36.35[.]127 Czech
38 54.39.7[.]243 Canada
39 68.183.121[.]242 United States
40 68.183.148[.]125 United States
41 68.183.24[.]85 United States

(涉及样本哈希较多,不在此列出)

由于行文仓促加之个人水平有限,难免会有分析错误或描述不清之处,欢迎多多批评指正。

*本文作者:未然实验室_威胁信息分析团队,转载请注明来自FreeBuf.COM


文章来源: https://www.freebuf.com/articles/others-articles/222677.html
如有侵权请联系:admin#unsafe.sh