Fbot僵尸网络正在使用VisionNet路由器0-day漏洞传播

本文作者：马延龙，靳丹龙，涂凌鸣，侯留洋



背景介绍


2021年1月26号，360网络安全研究院未知威胁检测系统监测到攻击者正在使用美国DQ Technology，Inc.公司VisionNet路由器产品的0-day漏洞，传播Fbot僵尸网络样本。



0-day漏洞分析


漏洞类型：未授权的远程命令执行漏洞

漏洞分析：VisionNet路由器的/bin/httpd程序在处理pingcmd.cmd请求时，将address参数作为ping测试的目的地址。当gethostbyname()函数验证address参数失败时，会拼接ping命令，并由cgiPingCmd_test()间接调用system()函数执行生成ping命令日志。由于上述过程缺少对address字段的特殊字符的过滤以及登陆状态验证，导致未授权的远程命令执行漏洞。





Fbot僵尸网络


Fbot已经是安全社区非常熟悉的老朋友了，它是在Mirai基础上开发的僵尸网络，主要改动体现在2个方面


 * 加密算法
 * 上线包，心跳包


此次通过0day传播的样本（uzdad.mips），基本信息如下所示:





MD5:0a721d05492d6151e3abba3704196f42


ELF 32-bit MSB executable, MIPS, MIPS-I version 1 (SYSV), statically linked, stripped


Packer:None



它本身并没有特别之处，主要功能是


 * DDoS攻击
 * Telnet扫描


下文将围绕上述功能做简要分析。



DDoS攻击


Fbot通过以下代码片段和硬编码的C2(45.95.169.238:5634)建立连接





随后向C2发送长度为78字节的上线信息




上线包格式解析过程如下所示


Main field parsing，others can be 0
——————————————————————————————————————————
02    --->type，register
00 80 00 5a 00 57 00 c8 00 f0 00 1e   --->hardcoded
00 04   --->length of cpu arch string　
6d 69 70 73 ---->cpu arch
——————————————————————————————————————————



发送完上线包后Bot开始等待C2下发指令。指令包的第一个字节指定了指令类型。


0x00，心跳指令码


以下图心跳为例




心跳包的格式解析如下所示


Main field parsing，others can be 0
——————————————————————————————————————————
00  --->type，heartbeat package
22 ba 15 24 1a 6f 04 d4 1f 9c 0d 06   --->hardcoded
——————————————————————————————————————————



0x01，DDoS攻击指令码


以下图攻击指令为例




攻击包的格式解析如下所示


Main field parsing，others can be 0
——————————————————————————————————————————
01 　						--->type，attack package 
01							--->attack type
00 3c 						--->time (sec)
01							--->number of target
67 5f dd bc 00 20			--->target/mask,103.95.221.188/32
02							--->number of flag
	02							--->flag type, attack package length
	00 04						--->flag length
	31 34 36 30					--->flag data，1460
	
	
	01							--->flag type, port
	00 02						--->flag length
	35 33						--->flag data，53
——————————————————————————————————————————



Telnet扫描


Fbot在传播过程中用到了SYN端口探测的技巧，来提高传播效率。





通过上面的代码片段，可知其扫描流量有2个特征


 1. 扫描23端口数量约为2323端口的9倍
 2. tcp头中的序列号与ip头中的目标地址相等


当端口开放时，通过硬编码的凭证尝试登录，最后将能成功登录的IP，端口，帐号，密码等信息回传给Reporter(45.95.169.238:1337)。






0-day漏洞影响范围


360 FirmwareTotal系统通过对VisionNet路由器固件分析和漏洞验证，发现以下VisionNet路由器固件受影响。


M504-R2_R4B027
M505N_R2_DQ-R4B081U
M505N_R3A_4128_S3_00_001
M505N_R3A_4128_S3_00_002
M505N_R3A_4128_S3_00_003
M505N_R3A_4128_S3_00_004
M505N_R3A_4128_S3_00_005
M505N_R3A_4128_S3_00_006
M505N_R3A_4128_S3_00_007
M605N_R1_R4B050
M405_R3_141215 



360 Quake网络空间测绘系统通过对全网资产测绘，发现VisionNet路由器具体分布如下图所示。





处置建议


我们建议VisionNet路由器用户及时检查并更新固件系统。

我们建议读者对相关IP和URL进行监控和封锁。



联系我们


感兴趣的读者，可以在 twitter 或者通过邮件netlab[at]360.cn联系我们。



IoC


IP:


45.95.169.238       	Netherlands         	ASN42864            	Giganet Internet Szolgaltato Kft



C2:


45.95.169.238:5634



URL:


http://45.95.169.238/uzdad.x86
http://45.95.169.238/uzdad.arm6
http://45.95.169.238/uzdad.arm7
http://45.95.169.238/uzdad.mips
http://45.95.169.238/uzdad.arm5
http://45.95.169.238/uzdad.x86_64
http://45.95.169.238/uzdad.mipsel
http://45.95.169.238/uzdad.arm
http://45.95.169.238/armz.sh
http://45.95.169.238/arm6
http://45.95.169.238/arm5
http://45.95.169.238/mipsel
http://45.95.169.238/arm
http://45.95.169.238/arm7
http://45.95.169.238/mips
http://45.95.169.238/powerpc
http://45.95.169.238/x86_64
tftp://45.95.169.238/mipsel



MD5:


0a721d05492d6151e3abba3704196f42
0ae4ea5b0de5cb78080fdae43bf787d2
0f2c378ad9ba7d90cc070fd701d6d56e
090bddb4987019ded42d02eb10658a42
1bbc53e4592c7d6833f4f625bca6b461
1c61e656dcc7b2f8dc82d6dd6c4a4e33
1ecd8b7680bff9b13cd9a45d9fb9562a
3b1a14f4f47f362295b54e0f61d5b6a6
3d27d6e8207c8617b63be0b394bbe58d
6b64505f2e9dd737c9acd92604a9c27e
6ed24dffd20b675b53245cd1ad402bad
9dea4f073eaf95541a83ec1b7974a15e
14e90c68d479d68aec9d668b8d62ab87
21ad9dcc6fea0d08ef634de48c6224c8
35b73b96eb93d8d8b6cf9707c9573328
54e4425ac7d972134be6d2600f20b537
54eee54c3f51a5ed8fd406eee7b3e03f
73bfb8cbff5770a67a207d3f77fc2015
111fe291c062ec4ff0ef54fa3b43eafe
127aa326d81c6cd48f9afafaa2b3f4df
269db30f85d264ede98add7d5dc2451a
676d4cdad2b9a708c06ae387b7c35001
724f3ae5955f9019c1effaa29e09230c
767d326d2f83fac0bd81fff28d6a2a65
3421b3dd2b27bff7612c5a443847d1a9
4512e96380efdfcab4bcfc7fa500e16a
98298bac7929e71fc51ce869d3229367
294753e87a7e8ca90ac349859229f07b
2738363ae678c4797cc31b74343068fb
461741035bd397af31f7af0da770e1af
a27fa90153552785d6da26f59f675168
a322df1fb0315057c6e8675f04bf25d3
a9130a7ae9088d184433ce77795403d7
a51835cee1296c9d3697df310e382c86
abd129f17fdc4cc2391d7d2f67e44e61
b19b8456950c040fa12efb0299555a2e
bb9c8c178202294e76b2033a29ebdf8e
bea274bb100548ebc7ce6c8862c6049e
c4b4b3f9e7be21a791cc34e7b9178dfd
c29aba6f48c28cf60c79814c8fcbeb94
c330fa7b9e3978a48f1a42e5ca154d3a
ca93c94d2ef78b3cfd7ff89fcb336ced
ce8e80d89350813c70aee089e4f0c39f
d476f6ea60c74d472f8d5d0c49cd27f5
e3a57e08597e9108caad0aa13a2b66f1
e3e81b7be16a42d2ccf96f3a8ea8709f
f0a4b1b07803717461a4fe360f24a088
f0cd95b9442c0fe72f33acbdbb66bdc6
f3469ddce604319779dc1f160931c32d