导语:
启明星辰与广州大学网安学院监测到一个自称GorillaBot的物联网僵尸网络。本文通过对该僵尸网络进行样本技术分析,全面介绍了其基本信息、攻击目标、传播方式等细节,以作为各行业及相关企业制定网络安全策略的参考。
2024年9月初,启明星辰在参与国家重点研发计划项目“大规模异构物联网威胁可控捕获与分析技术(2022YFB3104100)”的研究过程中,监测到了一个自称GorillaBot的物联网僵尸网络。
自发现以来,GorillaBot僵尸网络在发起分布式拒绝服务(DDoS)攻击方面表现出异常活跃的态势。根据监测统计,截至9月底,该僵尸网络的命令与控制(C2)服务器已下发超过30万条攻击指令。此外,GorillaBot所发动的DDoS攻击呈现出全天候、24小时不间断的特点,不同于一些有规律作息模式的攻击行为,此次攻击没有表现出任何休息或减弱的迹象,显示出攻击者意在长期维持高压态势,对目标造成持续性的压力和损害。
攻击活动一直持续到11月下旬,期间我们观察到C2服务器的数量逐渐减少,最终下线。然而,到了12月,新的GorillaBot样本再次出现,并迅速部署了一套全新的C2基础设施,重新恢复并维持了高强度的全天候攻击态势。
01
技术分析
1、基本信息
GorillaBot同样基于Mirai进行的二次开发。在9月份捕获的样本几乎完全复用了Mirai的源代码,并在此基础上引入了多种新的DDoS攻击方法,增强了其攻击能力。从10月份开始,其代码开始进行优化调整,新版本在通信协议中引入了加密及校验机制,进一步增强了其攻击活动的隐蔽性和抗干扰能力,并且一直保持到了现在。
运行后,它会在屏幕上打印字符串“The Gorilla Botnet Cats Came After You!”,这也是GorillaBot名称的由来。
GorillaBot致力于多平台适配工作,旨在扩大其潜在感染范围。自9月份以来,它已经支持了包括arm、misp、x86_64以及x86在内的多种CPU架构。随着版本迭代,在10月份新增了对mipsel架构的支持;到12月,又进一步扩展至m68k、sh4和sparc等更多样化的处理器类型。
2、攻击目标
截止目前,GorillaBot的攻击活动已经波及全球超过130个国家和地区。其攻击目标涉及各种行业领域,包括但不限于电信、运营商、银行、云计算数据中心、游戏、教育、政府网站、博彩等。尤其值得注意的是,中国和美国是此次攻击活动受害最为严重的两个国家。
国内有4300多个目标IP被攻击,涵盖全国所有省级行政区,包括港澳台。从地域分布来看,受害最严重的地区是香港、浙江、广东、湖北、江苏等省份。
另外,从攻击方式来看,GorillaBot更倾向于发起UDP协议的DDoS攻击,占整个攻击活动的42%以上。包括udp_plain、vse、udp_discord、udp_a2s、udp_fivem、udp_openvpn。
3、传播方式
GorillaBot主要使用Telnet弱口令猜解的方式扩散,通过内置硬编码的96种常见弱口令组合尝试未经授权访问设备。
在9月初的早期样本中,GorillaBot曾短暂地利用了Hadoop Yarn RPC未授权访问漏洞来进行传播,随后更新便移除了针对Hadoop漏洞的利用代码,最终仅保留了基于Telnet弱口令暴力破解这一简单高效的传统传播手段。
02
行为分析
1、初始化
在2024年9月的早期样本中,我们发现了大量与调试器检测相关的字符串。这些字符串的存在表明攻击者有意图地设计了复杂的逻辑来识别是否存在调试工具正在监控或修改其行为。以下是一些在早期样本中发现的典型调试器检测字符串示例:
但是,并未发现这些字符串有任何实际引用,也未能找到其它检测调试器的代码。这表明虽然GorillaBot的开发者似乎有意图加入调试器检测功能,但在该版本中这些功能可能还没有实现。
自2024年10月起,GorillaBot样本引入了实际的调试器检测机制。首先通过检测"/proc/self/status"文件中的"TracerPid"字段来检测调试器。如果检测到调试器则立即退出进程。
继而通过检查文件"/proc"文件是否存在,作为判断当前环境是否为蜜罐的依据。
随后检查cgroup信息中的特定字符串来判断是否运行在容器环境中,特别是查找包含"kubepods"的字符串。
为了确保在系统重启后仍能执行,GorillaBot采用了创建系统服务的方式实现持久化。具体来说,它会在/etc/systemd/system/目录下创建一个名为custom.service的服务文件,使其能够在系统启动时自动运行。
custom.service服务的核心功能是下载名为lol.sh的脚本到/tmp/目录,设置执行权限并执行。下载链接来自硬编码的字符串"kwws=22;:14531;7157:2oro1vk",依次减去0x03即可解密出下载链接。
为了进一步确保其持久性,GorillaBot还会对关键系统配置文件(/etc/inittab、/etc/profile、/boot/bootcmd)进行修改添加命令,以实现在系统的不同启动阶段自动下载并执行lol.sh脚本。
在/etc/init.d/目录下创建名为"mybinary"或者"system"的脚本,设置它在系统启动时执行,去下载下载执行lol.sh脚本。
此外,GorillaBot还会尝试在/etc/rc.d/rc.local或/etc/rc.conf(如果不存在)中添加指向"mybinary"或者"system"的软链接,以确保在系统启动时自动执行该脚本。
这种多层次、多途径的持久化策略既反映了GorillaBot开发者对系统机制有很深刻的理解,也表明了致力于长期控制受感染者的设备。
上述步骤完成之后,则进入Mirai类物联网僵尸网络常见的执行流程:监听38242端口以实现单一进程实例、开启telnet扫描等,随后和C2建立通信并等待执行C2下发的DDoS命令。
2、C2服务器
9月份的GorillaBot样本硬编码5个C2,减去0x03即可解密。10月份起,引入一个非常复杂的加密函数enc_switch,用来解密C2服务器字符串,每个C2都有一个的密钥。
其实10月份之后的样本,C2通信开启加密验证,加密也使用enc_switch函数。显然,其实现的是某种对称加密算法。12月份的样本只有一个硬编码的明文C2服务器,不再加密C2字符串。
3、通信协议
9月初的样本完全复刻了Mirai的通信协议,包括上线数据,心跳包以及攻击命令等各方面都和Mirai没有任何区别。10月份起,样本在总体保留Mirai通信协议的同时,新加入了加密和校验机制。以上线数据与攻击指令为例。
3.1 上线数据
连接C2成功后,首先向C2发送1字节的0x01。C2向Bot返回4字节的随机数据,本例是"x3fxf3x05x62"。GorillaBot通过对称加密算法,加密上述4字节数据,计算密文的Sha256,并发送给C2。C2在收到密文的Sha256,校验无误之后,返回1字节的0x01作为认证通过数据。随后GorillaBot发送保留的Mirai协议数据,至此上线成功,进入互相发送心跳包以及下发DDoS指令阶段。从上线到C2下发DDoS攻击指令,整个交互流程如下:
3.2 攻击指令
自9月份出现伊始,GorillaBot就进入异常活跃的攻击阶段。C2每天下发的DDoS攻击指令数量惊人,达到1万条甚至2万条以上。更值得注意的是,GorillaBot的攻击是全天候的,一天24小时内都在不间断下发攻击指令,没有任何休息间断时间。
GorillaBot的攻击指令载荷数据使用按字节加0x03的方式加密,对加密后数据的计算Sha256,作为校验值使用。
GorillaBot在接收到DDoS攻击指令后,先校验攻击指令载荷数据的Sha256,校验通过之后,再减去0x03解密。随后调用attack_parse函数去执行。
以某DDoS攻击指令为例:
前2字节是本帧DDoS攻击指令的数据长度减去2,随后32字节是DDoS攻击指令载荷数据的Sha256校验值。上图绿色部分是Sha256校验值,从偏移34到结尾是的红色部分是真正的DDoS攻击指令载荷数据。验证如下:
DDoS攻击指令载荷数据减去0x03即可解密,如下:
解密后的DDoS攻击指令载荷数据和Mirai完全一致。事实上,仔细观察会发现,如果去掉Sha256校验和加密,它完全就是Mirai的攻击指令格式。上述攻击指令简要描述如下:
因此,上述DDoS攻击指令即是向指定目标159.xxx.xxx.29:80,发起attack_udp_vse类型的攻击,持续120秒钟。攻击流量如下:
目前,GorillaBot目前共支持20个 DDoS攻击类型,如下:
03
总结
截至目前,GorillaBot僵尸网络仍然处于高度活跃状态,每天通过C2服务器下发接近一万条攻击指令,对全球范围内的目标IP地址持续发起分布式拒绝服务(DDoS)攻击,影响了从金融到公共服务等多个关键行业。它全天候、无间断地对全球各地的目标进行攻击,不仅频率高而且覆盖广泛,已经成为当今互联网安全领域的一大威胁。
此外,GorillaBot仍在不断更新其代码库以保持最新的攻击能力。尽管这些更新大多集中在细微之处,并未出现革命性的变化,我们仍会继续跟踪观察,尤其是其攻击目标的选择以及攻击能力的进化。同时,也提醒各机构和个人用户加强对网络安全防护措施的重视,如及时更新软件补丁、强化密码管理等,以降低遭受攻击的风险。
04
IOC
C2:
LOL Download URL:
SHA256:
1276a39c595af5b314111387ef58fd3fc11c55e62a140b8a2c4ff0132b648243
23459e531e09663d4fe7b1d3cca93b278eabe438e843f33dea95124fe9bb081d
23c870185f29b1e92dbd10993e944c69dc50fc58cc2ee3e79712c9b5f3dd50d1
2970ffa62f3033c64a781ce28395103f6d0385b2b67988ad554c14c2440a4508
6d44898df317ce936f82196b60c65e1038610ce4e9d4e8ef8151d798af140a0d
3aaee5e38481750900c5949aa54e45acd43a162d009f04ec24893cd2ecb38d73
3c60e9e280de8798ffebfdd361f2fbbafe78c65e4ba0579ae1717684594a2ed5
3905126f5f9f7430dee31c207706852e56292291449b563781bc6ee0b540343a
549627b2ba0ef60640456a03a70e46d4c45726443fd9ac4f48bddb8aab625c9b
78cbf2863748c64ea013c2676744de4090a9029c00aade1b7cf9e698c1f95b56
ec194196bdb79b046a5dfab35a70e301376f29fa841698bf3819850168d0b09f
d339e88fd6b6f2ad713c835639d09022cbc92d55dab8a0a5006c18ca5d8e01a9
ff88b732f6fbcf440c03b1de170ab6d3b489477c93daca5057c5a7344d05f5b2
注:
1.
3.
4.
•
END
•
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...