僵尸主机识别方法
时间:2023-07-03 09:21:01 | 来源:营销百科
时间:2023-07-03 09:21:01 来源:营销百科
僵尸主机识别方法:僵尸程序被被攻击者秘密植入正常主机就变成僵尸主机即Bot 机,它通过主动连接到 Botnet 的命令与控制服务器( CCServer ),才能加入相应的僵尸网络,它从 CC 服务器读取控制命令,按照指令执行相应的动作。因此, Bot 发现或找到 CC Server是整个 Botnet 活动的核心部分,也是决定 Botnet 能够正常运作的关键。如何准确地识别僵尸主机,并切断 bot 主机和控制服务器之间的联系,是防御僵尸网络的首要任务,这对发现新的僵尸网络具有非常重要的意义。
Bot 发现 CC Server 机制的方式有多种,从僵尸网络的发展历程来看,僵尸主机的识别检测有以下几种方法:
( 1 )基于固定 IP 地址或域名的 Bot 识别这种方式是多数僵尸网络采用的方式。利用预先定义好的固定 IP 地址或者域名去找到控制服务器。僵尸网络通过分布广泛的多个静态 IP 地址或域名,结合内建的更新机制和域名或 IP 地址的跨越管理问题,使得这样的僵尸网络具有很好的抗关停能力。可以通过主机的通信过程和网络流量的异常操纵作为行为特征检测法来对感染僵尸程序的 Bot 主机进行识别。如端口扫描、周期性交互等异常行为。
( 2 )基于随机扫描的 Bot 识别这种方式是僵尸网络几乎不采用的方式,因为过于盲目地随机发送数据包来寻找 CC Server ,所以极容易被识别。只有Sinit 僵尸网络采用了这种机制。这种方式可以通过大量的网络通信流量检测来识别 Bot 主机。
( 3 )基于 P2P 动态发现机制的 Bot 识别基于 P2P 协议的僵尸主机在每个阶段表现出来的特征行为是完全不一样的。初始阶段,僵尸主机会随机向网络中的节点请求连接,由于连接不成功导致出现大量 ICMP 报文错误、 ARP 协议报文且连接成功率低。发呆阶段,感染僵尸程序的主机在同一时间点行为特征基本一致,导致僵尸主机与大量连接节点发生大小相似的通信量。攻击阶段,僵尸主机产生大量 SMTP 数据包或产生大量 TCP SYN 的数据包,并对指定目标发送 DDoS 攻击。这种环境下,我们可以分析 P2P 僵尸网络中节点和信息交换产生的流量和行为相似性的特点,通过分析网络流量、网络图来识别 Bot 主机。
( 4 )基于 Domain-flux 的 Bot 识别由于不同的域名生成算法,其所生成的域名集合会表现出不同的字符特征。为了在某段时间能够定位到同一命令与控制服务器,僵尸网络会修改或替换域名生成算法,并利用如时间、网络社区的热门话题等作为种子,来保证各 CC Serve 在某一时间,某一域名被请求解析。而僵尸主机首先会通过某种域名算法产生大量伪随机域名,然后 Bot 逐个比对伪随机域名,直到与真正的CC Server 取得通信为止。这样的方式能有效逃避追踪和检测,从而保护 CC Server 地址信息,具有抗关停能力。Domain-Flux 是利用域名的检测来完成 Bot 主机的识别,如伪随机域名流量的长度、域名活跃时间分布、域名字符分布情况进行分析,检测到 Bot 主机。
( 5 )基于 Fast-flux 的 Bot 识别Fast-Flux 是近些年出现的僵尸网络最常用的通信技术,它是一种利用 DNS 实现的动态代理技术。基本原理是通过一些具有公共 IP 地址的僵尸主机作为代理( flux-agent )主机,形成一个动态的代理网络。把 CC Server 的域名解析为代理主机的 IP 地址,然后隐藏在 flux-agent 背后进行操控。这种 Bot 主机识别可以对数据流特征分析检测,利用僵尸网络产生与正常通信流量不同的数据流量特征进行识别。如通信周期性、 Arp 请求速率异常等。