工具1:DNS隧道检测工具BotDAD

摘自freebuf
出处:https://www.freebuf.com/articles/database/210250.html
工具git:https://github.com/mannirulz/BotDAD

概念解释:
TLD: top level domain,顶级域名
SLD: second level domain,二级域名
C&C隧道:命令和控制
DGA:域名生成算法

BotDAD
基于Python2.7,用于检测异常的DNS流量
检测的判断条件特征:
1.每小时DNS请求的数量 :受感染的僵尸主机每小时的请求数量往往高于正常主机。
2.每小时不同的DNS请求数:感染DGA恶意软件的主机往往比普通主机具有更多不同的请求。
3.单个域的最大请求数:帮助检测DNS隧道,敏感信息通过DNS协议传输。
4.每分钟平均请求数:用于检测受恶意软件感染的计算机,该计算机不使用短暂的DNS请求,而是使用休眠间隔定期对DNS请求做出贡献。它的计算方法是将主机发送的请求数除以主机处于活动状态并使用DNS服务的持续时间。
5.每分钟最多请求数:帮助检测感染恶意软件的僵尸程序,这些恶意软件使用短暂的DNS请求通过域生成算法生成的多个URL与C&C服务器进行通信。
6.MX记录查询数:是网络中基于垃圾邮件的僵尸网络的强有力指标。
7.PTR记录查询数:有助于检测网络中存在异常行为的主机以及可能的感染。
8.查询的不同DNS服务器的数量:有助于检测网络中具有异常行为的机器,因为标准系统查询多个DNS服务器的情况并不常见。
9.不同TLD请求的数量:在检测基于DGA的机器人方面非常有效,这些机器人不仅生成具有不同二级域的随机域,还生成具有不同顶级域名的随机域。
10.不同SLD请求的数量:是网络中存在基于DGA的机器人的强烈指示。
11.唯一性比率:是在主机每小时发送至少1000个请求的假设下,发送的请求数与发送的不同请求数之比。
12.Failed/NXDOMAIN请求的数量:是网络中主机感染的一个非常强的指标。它通过主机维护响应代码等于DNS_RCODE_NXDOMAIN的响应数。
13.已解析IP地址的不同城市数量:一个强烈的异常指标,尤其是当IP地址分布在各个城市时。使用Maxmind数据库(“Geo2 Databases | MaxMi,2017”)获得城市映射的IP地址。
14.已经解析的ip地址的不同国家数量
15.Flux ratio:在主机发送至少100个查询并且已收到至少100个响应的条件下,发送的不同请求与解析的不同ip地址的比率。

你可能感兴趣的:(工具学习)