|
一.设计思想
针对DNS服务器的DDOS软件系统分为三个模块:1.状态监测2.负载均衡3.决策处理设计总图如上图。
1.1状态监测
DNS服务器受DDOS攻击时有如下三种反应。1.域名解析失败率增多2.网络流量迅速增大3.大量的域名请求有规律。因此基于WINPCAP的抓包分析系统作为首选。通过抓包分析系统对数据包的解析,了解数据包的组成结构,流量的详细数据,以及通过操作系统的函数获取主机资源的状态等成为决策处理的训练参数。
1.2负载均衡(用户自己决定)
随着DNS服务器的访问流量的快速增长,对DNS服务器的处理能力和计算能力的要求越来越高。因此靠单一的根设备已经无法承担如此巨大的压力,必须采用多台服务器协同工作,提高计算机系统的处理能力和计算强度,以满足当前业务量的需求。负载均衡包括两个方面的含义:第一,把大量的并发访问或数据流量分担到多台节点设备上分别处理,减少用户等待响应的时间;第二,单个重负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后,将结果汇总,再返回给用户,使得信息系统处理能力可以得到大幅度提高。负载均衡技术配合状态监测技术来抵御DDOS迅速的大流量攻击。当服务器收到超大流量的访问量时,负载均衡来缓解服务器所承受的压力,以至于服务器不在短时间内崩溃。
1.3决策处理
决策处理主要基于BP算法进行学习。在BP神经网络通过自学习对数据模型进行不断地更新和检测,数据的模型是动态更新的。通过BP的输出结果来判断是否对数据进行处理。如果发现上面几种情况将采取以下措施。1,对有规律的流行采取直接限制访问。2,解析数次失败的当前禁止访问。3,设定一个阀值,在流量超出此之后将限制一切访问,知道恢复正常。
二.具体实现2.1状态监测可以分为两部分来实现。一,调用WINPCAP函数库对访问DNS服务器的网络数据包进行捕包。二。对数据包进行处理,使用标准网络接口函数对所捕获的数据包进行源地址和解析标志位(标志解析是否成功)的提取。来做BP 网络的参数输入。参数:一.QR:占1位,1/8字节。0代表查询,1代表DNS回复。二. RCODE:占4位,1/2字节。由回复时指定的返回码:0:无差错;1:格式错;2:DNS出错;3:域名不存在;4:DNS不支持这类查询;5:DNS拒绝查询;6-15:保留字段。三. QDCOUNT:占16位,2字节。一个无符号数指示查询记录的个数。 四.ANCOUNT:占16位,2字节。一个无符号数指明回复记录的个数。五.源地址
2.2 BP神经网络主要有三层结构如下图所示
BP对接受到的参数隐含层作为训练的数据。DNS 受到攻击的主要反应是解析失败率增多,访问量 急剧上升,请求地址网段应该相似。所以BP 网络可以设置一下算法对参数进行训练:根据解析标志位来计算解析失败率(失败数目/总共的解析量)和源地址网段相近ip地址作为输出的响应。
2.3 每当接收到访问数据时把捕到参数输入BP神经网络与训练结果比对,如果期望值等于负一或正一把其输出。(BP算法来判断)
2.4 接收BP神经网络输出的参数进行判断,如果与期望值不符,则对其源地址的数据包的访问直接进行限制,反之则视为正常数据。(标准网络接口驱动对特定IP地址的数据包进行限制)
三.存在的问题
3.1标记位提取怎么实现
3.2 源地址地追踪
3.3源地址有规律的算法怎么实现
3.4几个阶段的数据传输怎么样的标准
3.5参数的实现算法
四.测试阶段
4.1 模拟数据进行训练
4.2使用工具对服务器进行攻击
小黑屋|手机版|Archiver|鱼C工作室
( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)
GMT+8, 2025-9-21 02:12
Powered by Discuz! X3.4
© 2001-2023 Discuz! Team.