全天候攻击:物联网僵尸网络GorillaBot揭秘
颁布功夫 2025-01-07导语:
8827太阳集团与昭通大学网安学院监测到一个自称GorillaBot的物联网僵尸网络。。。。。。本文通过对该僵尸网络进行样本技术分析,,,,,,全面介绍了其根基信息、攻击指标、传布方式等细节,,,,,,以作为各行业及有关企业造订网络安全战术的参考。。。。。。
2024年9月初,,,,,,8827太阳集团在参加国度沉点研发打算项目“大规模异构物联网威胁可控捕获与分析技术(2022YFB3104100)”的钻研过程中,,,,,,监测到了一个自称GorillaBot的物联网僵尸网络。。。。。。
自觉现以来,,,,,,GorillaBot僵尸网络在提议散布式回绝服务(DDoS)攻击方面阐发出异常�;;;;;;;钤镜奶�。。。。。。凭据监测统计,,,,,,截至9月底,,,,,,该僵尸网络的号令与节造(C2)服务器已下发超过30万条攻击指令。。。。。。此表,,,,,,GorillaBot所发起的DDoS攻击出现出全天候、24幼时不间断的特点,,,,,,分歧于一些有法规作息模式的攻击行为,,,,,,这次攻击没有阐发出任何休息或减弱的迹象,,,,,,显示出攻击者意在持久维持高压态势,,,,,,对指标造成持续性的压力和侵害。。。。。。
攻击活动一向持续到11月下旬,,,,,,期间我们观察到C2服务器的数量逐步削减,,,,,,最终下线。。。。。。然而,,,,,,到了12月,,,,,,新的GorillaBot样本再次出现,,,,,,并迅速部署了一套全新的C2基础设施,,,,,,沉新复原并维持了高强度的全天候攻击态势。。。。。。

技术分析
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弱口令暴力破解这一单一高效的传统传布伎俩。。。。。。

行为分析
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字节的随机数据,,,,,,本例是"\x3f\xf3\x05\x62"。。。。。。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攻击类型,,,,,,如下:

总结
截至目前,,,,,,GorillaBot僵尸网络依然处于高度活跃状态,,,,,,每天通过C2服务器下发靠近一万条攻击指令,,,,,,对全球领域内的指标IP地址持续提议散布式回绝服务(DDoS)攻击,,,,,,影响了从金融到公共服务等多个关键行业。。。。。。它全天候、无间断地对全球各地的指标进行攻击,,,,,,不仅频率高并且覆盖宽泛,,,,,,已经成为当今互联网安全领域的一大威胁。。。。。。
此表,,,,,,GorillaBot仍在不休更新其代码库以维持最新的攻击能力。。。。。。只管这些更新大多集中在轻微之处,,,,,,并未出现革命性的变动,,,,,,我们仍会持续跟踪观察,,,,,,尤其是其攻击指标的选择以及攻击能力的进化。。。。。。同时,,,,,,也提醒各机构和幼我用户加强对网络安全防护措施的器沉,,,,,,如实时更新软件补丁、强化密码治理等,,,,,,以降低遭逢攻击的风险。。。。。。
IOC
C2:
LOL Download URL:
SHA256:
1276a39c595af5b314111387ef58fd3fc11c55e62a140b8a2c4ff0132b648243
23459e531e09663d4fe7b1d3cca93b278eabe438e843f33dea95124fe9bb081d
23c870185f29b1e92dbd10993e944c69dc50fc58cc2ee3e79712c9b5f3dd50d1
2970ffa62f3033c64a781ce28395103f6d0385b2b67988ad554c14c2440a4508
6d44898df317ce936f82196b60c65e1038610ce4e9d4e8ef8151d798af140a0d
3aaee5e38481750900c5949aa54e45acd43a162d009f04ec24893cd2ecb38d73
3c60e9e280de8798ffebfdd361f2fbbafe78c65e4ba0579ae1717684594a2ed5
3905126f5f9f7430dee31c207706852e56292291449b563781bc6ee0b540343a
549627b2ba0ef60640456a03a70e46d4c45726443fd9ac4f48bddb8aab625c9b
78cbf2863748c64ea013c2676744de4090a9029c00aade1b7cf9e698c1f95b56
ec194196bdb79b046a5dfab35a70e301376f29fa841698bf3819850168d0b09f
d339e88fd6b6f2ad713c835639d09022cbc92d55dab8a0a5006c18ca5d8e01a9
ff88b732f6fbcf440c03b1de170ab6d3b489477c93daca5057c5a7344d05f5b2
注:


京公网安备11010802024551号