概述:本文对僵尸网络工作原理以及僵尸网络检测技术进行概述,后续将继续推出后续的僵尸网络检测文章对其中的问题进行详细研究。
基于通信的僵尸网络检测三大假设
- 僵尸控制程序及其参数设置的一致性
- 通信程序及其程序设置的一致性
- 僵尸客户端与僵尸控制器之通信的普遍性
常见僵尸网络分类
1.IRC僵尸网络
2. HTTP僵尸网络
HTTP僵尸网络是典型的”拉“模式的僵尸网络,僵尸网络客户端周期性的访问某个固定的URL或URL列表,控制命令将作为HTTP响应发送给客户端。
特点
- 域名C&C服务
- Fast-Flux
- 频繁访问C&C
3. P2P僵尸网络
僵尸网络危害
- 身份窃取
- 垃圾邮件攻击
- 点击欺诈
- DDos
僵尸网络检测角度环节
1. 周期性检测
jdk
常用算法:
- 自循环检测算法
2. 相似性检测
常用算法:
- KL
- jaccard
3.域名检测
4.结构性检测
5.垃圾邮件
僵尸网络常用逃逸技术
1. Fast-Flux
Fast-Flux技术是一种僵尸网络中常用的提高僵尸网络可靠性和隐蔽性的手段。所谓fast-flux是指网络使用快速变化的DNS域名解析记录将对同一域名的请求在不同的时间映射到不同的IP地址的技术,该技术最初出现用于网站的负载均衡,后被僵尸网络用于隐藏其行为与增强可靠性。在僵尸网络中fast-flux技术一般都是通过控制一台受控主机作为DNS代理服务器,来响应这些僵尸网络的DNS查询。
这里我们要有两个认识:
- 很多僵尸网络会采用Fast-Flux技术
- 正常网站负载均衡也会采用Fast-Flux
因此我们不仅要首先要识别出使用Fast-Flux技术的网络,然后再去识别是否为僵尸网络所使用的。
- step1:fast-flux识别
Fast-FLux的识别主要依赖于fast-flux相关域名映射快速变化的特点,fast-flux相关域名请求的DNS记录会只有很短的有效期(几分钟甚至更短),而域名的有效期可以从DNS的TTL中获取。
- step2:僵尸网络fast-flux识别
正常站点使用的fast-flux对同一域名的在不同时刻的对同一域名的映射通常会具有比较强相似性的IP地址,从而表明他们来自于同一个网络而且相互间具有联系。而僵尸网络的fast-flux,由于受控主机由于来源不同,因此使用fast-flux进行映射的DNS请求返回的IP地址则通常来自多个网络和ISP,不具有相似性,可以利用这个特点对僵尸网络的fast-flux和正常站点的fast-flux进行区分。
总结:观察TTL短并且并且IP地址变换且IP地址不具有相似性的域名能够识别出使用fast-flux的僵尸网络(解析的IP地址都是僵尸节点,提供解析的DNS服务器也是僵尸节点)。
参考文献
- xxx
- xxx