一、背景
1.1 背景
Nekonebot首次出现在2019年8月份,由绿盟科技伏影实验室高级威胁狩猎系统首次监测到该僵尸网络活动的踪迹并捕获到僵尸网络程序样本,但Nekonebot知名度一直不高。
此次捕获的Nekonebot僵尸网络程序支持多种平台架构,利用了一些公开的路由器等IoT设备的漏洞进行传播,进而构建僵尸网络,并按照攻击者指令对指定目标进行DDoS攻击。通过分析确认Nekonebot所利用的漏洞影响范围包括D-Link、 Linksys、 Dasan、Netgear、ZyXEL、Huawei等厂商的部分设备以及ThinkPHP、JAWS Web Server等组件。由于捕获的样本中多次出现Neko字符串,所以我们将其命名为Nekonebot。
二、技术分析
2.1 样本功能
样本运行后监听64646端口,然后将硬编码的运行平台字段作为上线信息发送给C2服务器,完成上线操作。然后进行一些关闭进程和扫描任务,再接收指令并执行指令对应的功能操作。
通过对多个捕获的样本分析,我们发现样本中硬编码的运行平台字段(arch_build)值包括x86、realtek、hnap、africo、tr064、thinkphp等。
与C2地址185.244.25.200建立连接,并发送上线数据包。
获取系统中的进程列表,将进程名称与僵尸网络程序携带的进程列表文件kill_list.txt中包含的进程名进行对比,强制终止kill_list内包含的进程,实现关闭竞争对手独占系统资源的目的。
扫描随机IP地址的设备是否包含已知IoT漏洞,若包含漏洞则执行漏洞利用代码,在目标设备中下载对应平台架构的僵尸网络程序实现传播和开启后门的目的。
2.2 后门指令执行
Nekonebot在随机扫描和利用漏洞传播之后,会循环接收由C2发来的命令,并对命令内容进行解析,执行相应的功能。这些功能包括建立、重建与C2的连接,关闭bot,对指定目标进行DDoS攻击,执行bot本地cmd命令等。
与C2交互的命令格式为{cmd_type} {cmd_arg}。
其中cmd_type值包含push、killer、scanner、udp、hex、cmd 等:
命令格式 | 描述 |
push | 更新kill_list进程列表文件 |
killer | 关闭bot与C2的telnet、tcp连接进程 |
scanner | 扫描随机IP进行传播 |
udp | 对目标进行规定时间的udp_flood攻击 |
hex | 对目标进行规定时间的udphex_flood攻击 |
cmd | 执行bot本地命令 |
表2.1 指令说明
其中udp命令会对指定目标进行udp_flood攻击,攻击的报文内容为重复的F09F8C9C。
2.3 漏洞利用
Nekonebot使用了涉及多个厂商的路由设备产品和相关的组件的漏洞进行传播。该僵尸网络程序创建了如下结构体,在payload部分写入漏洞的exp。
通过对多个样本进行分析,我们对Nekonebot利用到的漏洞进行了汇总,多款设备受到这些漏洞的影响:
漏洞名称 |
JAWS Web Server未验证命令执行漏洞 |
D-Link设备SOAP接口任意代码执行漏洞 |
Linksys路由器命令注入和任意代码执行漏洞 |
Dasan GPON路由器登录验证绕过漏洞 |
Huawei HG532系列路由器远程命令执行漏洞 |
D-Link设备未验证命令执行漏洞 |
ThinkPHP远程命令执行漏洞 |
D-Link路由器HNAP SOAPAction命令执行漏洞 |
DGN1000 Netgear路由器未验证命令执行漏洞 |
ZyXEL设备SOAP配置协议命令注入漏洞 |
表2.2 利用到的漏洞汇总
三、总结
3.1 防范措施
由于僵尸网络程序使用到的这些漏洞无需人工干预,存在漏洞的设备只要被攻击就必然会中招。为了避免成为攻击者的傀儡肉鸡,也为了保护个人路由器的安全,做一些适当的防护措施还是很有必要的。
免于这些漏洞攻击的一个比较通用的方法是提高安全意识,定期更新固件,实时更新厂商发布的补丁,并使用尽可能复杂的密码防止被暴力破解。对于IoT路由设备的安全问题还需要路由产品厂商提高安全意识和应急响应能力,避免一些高危低利用门槛的漏洞出现,并及时修补产品出现的各种安全问题,为用户安全保驾护航。
如果感染后请重启设备,检查设备是否开启SSH (22)、 Telnet (23)、 HTTP/HTTPS (80/443)服务,禁用非主动开启的服务和端口。
版权声明
本站“技术博客”所有内容的版权持有者为绿盟科技集团股份有限公司(“绿盟科技”)。作为分享技术资讯的平台,绿盟科技期待与广大用户互动交流,并欢迎在标明出处(绿盟科技-技术博客)及网址的情形下,全文转发。
上述情形之外的任何使用形式,均需提前向绿盟科技(010-68438880-5462)申请版权授权。如擅自使用,绿盟科技保留追责权利。同时,如因擅自使用博客内容引发法律纠纷,由使用者自行承担全部法律责任,与绿盟科技无关。