Gafgyt木马分析
背景
设备报警
1 | |
通过playload可以看出利用了Realtek SDK远程命令执行漏洞(CVE-2021-35394),该漏洞于2021年8月16日被公开披露,由于许多IoT设备厂商都使用Realtek芯片组,所以影响较为广泛,属于典型的供应链安全漏洞。
本来以为是Mirai家族的常见扫描行为,结果下载程序后发现属于Gafgyt。
Gafgyt是另一款物联网僵尸网络程序,被认为是Mirai的前身,主要感染基于Linux的IoT设备,来发起分布式拒绝服务攻击(DDoS)。它是除Mirai家族之外,最大的活跃物联网僵尸网络家族,其源代码在2015年初被部分泄露,变种也极多。
样本信息
此次分析以x86架构版本为例
| 文件名 | rebirth.x86 |
|---|---|
| 大小 | 101269 字节 |
| MD5 | C070B0F1804A8F4EA5744268341C5A1C |
| SHA1 | B3F4BAD7B03A796A40457DA0ECD2612FF51F5518 |

64位ELF文件,有符号表。
样本分析
由于样本没有去除符号表,使用IDA打开后可以看到架构很清晰

从main函数开始分析,首先初始化随机数,然后通过getOurIP函数获取了一些网络信息,确保设备网络连接正常,创建守护进程,设置忽略中断信号,防止程序意外终止。

创建套接字并启动对CNC服务器的上线请求。

抓包可以看到,受害机向CNC服务器(78.40.117.227:666)发送IP和架构的信息,CNC服务器会回复 “PING” 确认在线。

strace跟踪程序

创建持续接收CNC发来的数据指令

对CNC服务器传输来的指令进行格式化处理,并交给cncinput方法进行进一步解析。

cncinput方法中包含UDP、XMAS(圣诞树攻击)、VSE(针对游戏服务器)、TCP、STD五种方式的攻击,其中默认使用STD发动攻击,STOP指令用于停止攻击,且攻击在启动之前会检查是否提供了正确数量的参数,例如UDP攻击需要目的IP地址、目的端口、持续时间、数据包等。

其中TCP攻击中还包括syn、rst、fin、ack、psh五种攻击方式

没有发现暴破和漏洞攻击的模块,或者killer模块,但感染肯定使用漏洞攻击。该样本应该仅属于DDos攻击模块,并且没有去除符号表,字符也没有像Mirai一样进行加密。
参考
https://blog.cyber5w.com/gafgyt-backdoor-analysis
