介绍
Zerobot是一种基于Go语言的增强型僵尸网络恶意软件,利用web应用程序漏洞并使用物联网传播自己。微软的研究人员已经监视Zerobot几个月了。Zerobot恶意软件是作为恶意软件即服务方案(MAAS)提供的,自从研究人员开始跟踪它以来,它已经被增强了多次。一个与Zerobot有关的域名是FBI在2022年12月扣押的多个与DDoS-for-hire服务有关的域名之一.
Zerobot会影响一系列设备,包括防火墙设备、路由器和摄像头,将受感染的设备添加到分布式拒绝服务(DDoS)僵尸网络中。利用众多组件,恶意软件可以感染构建在各种架构和操作系统上的易受攻击的设备,找到额外的设备进行感染,实现持久性,并攻击一系列协议。
Zerobot的最新发行版包含了新的功能,例如利用Apache和Apache Spark中的漏洞(分别为CVE-2021-42013和CVE- 2022-33891),以及新的DDoS攻击能力。
Zerobot获取设备访问权限的过程
黑客组织以物联网设备为目标,因为它们大部分时间都暴露在互联网上,他们可以利用漏洞入侵那些未打补丁且存在漏洞的脆弱设备。
Zerobot可以对具有不安全配置或默认凭据或弱凭据的设备执行暴力攻击。除此之外,Zerobot还能够利用各种新的漏洞,如下表所示:
Vulnerability |
Affected Software |
CVE-2017-17105 |
CVE-2017-17105 |
CVE-2019-10655 |
Grandstream |
CVE-2020-25223 |
WebAdmin of Sophos SG UTM |
CVE-2021-42013 |
Apache |
CVE-2022-31137 |
Roxy-WI |
CVE-2022-33891 |
Apache Spark |
ZSL-2022-5717 |
MiniDVBlinux |
Zerobot 1.1版本发布后,黑客已经删除了CVE-2018-12613,这是一个phpMyAdmin漏洞,允许攻击者查看或执行文件。
研究人员还发现了一个新的迹象,即Zerobot通过接收远程命令执行已知的漏洞攻击代码来控制设备,例如CVE-2022-30023,这是Tenda GPON AC1200路由器中的命令注入漏洞。
一旦黑客获得了设备访问权限,他们就会注入一个名为zero.sh的恶意bash脚本,该脚本会下载并试图执行Zerobot。它会试图尝试下载各种Zerobot二进制文件的bash脚本,并尝试通过暴力方式识别目标的体系结构,并相应地部署有效负载。
Zerobot使用桌面入口、守护进程和服务方法的组合来获得基于linux的设备上的持久性,如下所示:
桌面入口
Zerobot将自己复制到$HOME/.config/ssh.Service /sshf然后将一个名为sshf.desktop的桌面条目文件写入同一目录。旧版本的Linux使用$HOME/。用$HOME/.config/ssh.service代替$HOME/.config/ssh.service
守护进程
将自身复制到/usr/bin/sshf,并在/etc/init/sshf.conf写入配置。
服务
将自身复制到/etc/sshf并写入服务配置
在
/lib/system/system/sshf.Service,然后用两个命令启用服务(以确保它在引导时启动):
▪ systemctl enable sshf
▪ service enable sshf
增加攻击能力
黑客组织在最新版本Zerobot中增加了DDoS攻击功能
这些函数允许黑客攻击目标资源并使其不可被正常访问。成功的DDoS攻击可能会被黑客组织用来勒索赎金。购买这种恶意软件的人可以根据他们的目标定制攻击。
下表包含了之前已知的Zerobot功能:
Vulnerability |
Affected Software |
UDP_LEGIT |
Sends UDP packets without data. |
MC_PING |
Meant for DDoS on Minecraft servers. Sends a handshake and status request. |
TCP_HANDSHAKE |
Floods with TCP handshakes. |
TCP_SOCKET |
Continuously sends random payloads on an open TCP socket. The payload length is customizable. |
TLS_SOCKET |
Continuously sends random payloads on an open TLS socket. The payload length is customizable. |
HTTP_HANDLE |
Sends HTTP GET requests using a Golang standard library. |
HTTP_RAW |
Formats and sends HTTP GET requests. |
HTTP_BYPASS |
Sends HTTP GET requests with spoofed headers. |
HTTP_NULL |
HTTP headers are each one random byte (not necessarily ascii). |
之前未披露的新功能如下
Vulnerability |
Affected Software |
CVE-2017-17105 |
CVE-2017-17105 |
CVE-2019-10655 |
Grandstream |
CVE-2020-25223 |
WebAdmin of Sophos SG UTM |
CVE-2021-42013 |
Apache |
CVE-2022-31137 |
Roxy-WI |
CVE-2022-33891 |
Apache Spark |
ZSL-2022-5717 |
MiniDVBLinux |
ZeroBot扩散过程
ZeroBot在获得持久性后,Zerobot会扫描新的暴露在互联网上的设备进行感染。然后随机创建一个0到255之间的数字,并扫描以该值开始的所有ip。使用名为
new_bo.NET_selfRepo_isHoneypot的函数来识别蜜罐IP地址,网络诱饵会使用这些IP地址来吸引网络攻击,并收集有关威胁和试图访问资源的信息。该功能包括61个IP子网,防止扫描这些蜜罐的IP地址。用于下载这个RAT的脚本名为impst.sh,如下面的代码片段所示
结论
Zerobot恶意软件使用物联网设备或易受攻击的软件来利用和感染受害者的网络。我们也看到了黑客如何努力提高他们针对受害者的技术,例如通过添加分布式拒绝服务(DDoS),他们也可以用它来索要赎金。