APP下载

基于地址池的DDoS防护模型

2016-09-10

计算机与数字工程 2016年8期
关键词:池中报文威胁

张 欣 钱 锦 张 昕

(1.西安邮电大学科技处 西安 710061)(2.西安邮电大学研究生院 西安 710061) (3.西安邮电大学信息中心 西安 710061)



基于地址池的DDoS防护模型

张欣1钱锦2张昕3

(1.西安邮电大学科技处西安710061)(2.西安邮电大学研究生院西安710061) (3.西安邮电大学信息中心西安710061)

旨在维护DNS服务器免受DDoS攻击的困扰,在有大量恶意解析请求时能实现实时防御。在分析了DDoS攻击特点的基础上,重点根据欺骗式攻击和反射式攻击两种攻击方式,论文提出了构建DNS服务器的恶意地址库,即地址池的概念,并设计了防护系统,通过仿真实验验证了其可行性。

域名解析; 流量监测; 访问控制; 网络安全

Class NumberTP393

1 引言

DNS是一个多层次的分布式数据库系统,实现域名和IP之间的解析功能,是互联网运作的基础,近年来针对DNS服务器的各种DDoS攻击层出不穷,各种防护手段也相继出炉,最新提出的DNSSEC协议因其校验的复杂性[1],无法有效地应对DDoS攻击,在如今数据库发展迅速,信息检索速率提高,服务器性能卓越的基础上,本文提出基于地址池的DDoS防护设计方案。

1.1DNS服务器的脆弱性

相对于客户端,由于本地服务器需要根据域名进行递归查询[2],需要承受本地客户端大约五倍的开销,而且字符串匹配和数据库查找是一个开销巨大的操作,由此可见,支持递归查询的DNS服务器在抵御DDOS攻击上有更大的脆弱性,大多数DNS服务器安全面临严重挑战。开放递归DNS服务器是指支持递归查询,同时对发起递归查询请求的客户端不进行身份验证的DNS服务器,在网络安全角度上,支持递归的DNS服务器应该对请求客户端进行访问控制,例如BIND9中的ACL语句或者进行防火墙的设置,只允许内网用户和授权外部客户端进行递归查询,开放就要面对不可预知的风险,本文基于禁止IP访问DNS服务器的方法,做了进一步拓展,引入了地址池思想。

1.2DDoS攻击

DDoS(Distributed Denial of Service)是分布式拒绝服务攻击[3],是指将大量主机联合起来,对目标发起的DDoS攻击。DDoS攻击分为两种,分别是欺骗式攻击和反射式攻击。欺骗式攻击为攻击者侵入DNS服务器的高速缓存中恶意存贮虚假信息,如不存在的域名和IP的映射,或通过病毒木马获得root权限后,改变服务器的转换表使不同的域名映射到被攻击目标的IP。此时如果有用户发出一个域名解析请求,该域名解析请求到被攻击了的DNS服务器,则得到的是被攻击者的IP,因此被攻击目标会收到大量的网页连接报文,导致其资源耗尽甚至系统崩溃而无法响应正常的请求。

反射式攻击为攻击者利用僵尸网络发送起始IP为被攻击目标IP的查询报文到大量开放的DNS服务器,由于该报文为正常查询报文,DNS服务器把相应的应答报文发送到被攻击目标可以是主机或DNS服务器,导致被攻击目标的带宽被完全消耗无法对外提供服务。由于域名服务器对特定的查询报文返回应答报文可超过512字节,此时,一个64字节的DNS查询报文就可产生一个大于4000字节的响应报文,流量的放大比率1∶73。

2 总体框架设计与分析

基于地址池的DDoS防护模型在流量监控预防网络攻击的基础上[4],分成两个支路,一个是正常状态下,进行正常的域名解析服务,第二个是当流量异常时,添加了抓包模块、地址池模块和过滤模块。模型结构图1所示。

图1 地址池防护模型结构图

1) 当流量监控显示异常时,开启抓包工具,对抓取的网络包进行分析,将IP发送给地址池。地址池分为两部分,前端为危险池,后端为评估单元和威胁池。首先经过危险池遍历,如果源IP已经在危险池中存在,通过过滤单元,直接拒绝该IP的解析请求。接着如果该IP不在危险池中,则通过评估单元对其进行评估,如果持续高速访问DNS服务器,则将其放入威胁池中,通过过滤单元对流量进行过滤。最后若该IP被存储在威胁池中超过阀值次数,则将该IP发送给危险池,从而减少DNS服务器的访问流量。当流量显示正常时,直接进行DNS解析服务。

2) 该防护模型以串联方式部署在DNS服务器前端,对进出DNS服务器的流量进行检测和过滤。在流量检测正常情况下,不会调用地址池部分,减少了资源的消耗。

2.1地址池具体工作原理

在DNS服务器工作时,流量正常时,直接传输到DNS服务器进行解析,流量异常时,若在危险池中无该IP,则通过评估单元将单位时间内访问次数超过阈值K的源IP放入威胁地址池中,根据它的信任度大小T设置威胁时长t,在这段时间内不再对该IP提供解析服务,如果该IP被发现具有威胁次数超过阈值s,则永久禁止该IP不再对其进行域名解析服务,放入危险地址池中,每当有IP来访问时,对地址池进行检索,如果没有在威胁和危险地址池中检索到该IP则对该IP正常解析。工作流程图,如图2所示。

图2 地址池工作流程图

关于威胁时长t的设置,这里引入了该域名的信任度T[5]。

由表2可知,分蘖数是处理6最高为9.13万蘖/亩,依次是处理6>处理5>处理4>处理3>处理2>处理1;分蘖率和分蘖成穗率变化趋势与分蘖数一致。

K为设置的常数,针对不同IP对DNS服务器的访问频率设置,例如根服务器访问频率会比较高,一般可以设置为10,代表每秒访问了该DNS服务器10次。代表该IP在该秒内的访问次数,而信任度T与访问次数呈反比,不正常的访问次数表明该IP不值得信任,该公式是一个求和运算,n表示监控的秒数,一般设置为5s,防止受到更大程度的攻击,另外也防止对安全的IP做出误判后,不能及时改正。s为该IP被禁次数的阈值,超过该值则将该IP放入到危险池中,该值由管理员根据服务器性能进行设置。

t=d/T(day)

t为该域名的信任度T的反比乘以d,单位为天,d的大小根据服务器的性能由管理员设置,即在这段时间内DNS服务器不再对该IP提供解析服务,在t时间到达后,则能够再次接受该IP的查询请求。

2.2地址池的存储结构设计

地址池分为两部分,前半部分和后半部分,前半部分为危险池,后半部分为威胁池,危险池直接存储在数据库中,威胁池采用哈希链表的数据结构存储在数据库中[6],哈希链表具有易于分类和查找快速的优点。主要设计原理如图3所示:

图3 哈希链表结构图

1) 信息的存储

先计算每个IP的威胁时间t,t就是哈希值,每个哈希表表头里存储威胁时间t和链表头节点和尾节点的位置,然后把捕获的威胁IP和被捕获的次数m存储到对应的哈希表项后面的双向链表中,每次增加一个信息,从尾部插入,当存储的信息到达阈值时,采用先入先出FIFO的方式,从头节点删除信息。

2) 威胁IP寻找方式

3) 更新机制

在算法中易实现同一个IP只存储一次,这样有效节省了数据资源,因为一个IP最多被存储s次,当发现其超过s次后,则会将该IP送达危险池,在下一次寻址时不会再经过威胁池,然而当数据累计,仍然会堆积大量无用的潜在危险IP,更新的原则是威胁时间原则,当威胁时间t相比于t的均值过小,缺乏时效性,则将该威胁时间对应的链删除,以此来保证威胁IP信息的更新。

3 仿真实验实施与结果

本文中利用nagios软件监控系统的流量变化,在流量突然猛增时,会通知DNS服务器前端地址池数据库对流量进行过滤,首先安装nagios插件,并且进行编译安装,修改配置文件,根据本地需求将nagios配制成适应本地环境的监控软件。在DNS正常工作时,每隔90s监测一次服务器状态。

使用Wireshark作为抓包工具,对DNS信息进行分析,抓包情况如图4所示。

图4 抓包结果

地址池存储在数据库MySQL系统中,使用SQL语句进行增删改查操作,并且MySQL和PHP有很好的接口,程序员可以在PHP中编写地址池脚本,对流量进行管理。

使用Autocrat进行攻击,Autocrat是一款基于TCP/IP协议的DDoS分布式拒绝服务攻击工具,使用远程控制方式进行DDoS攻击。这里用六台主机对配置了防护系统的DNS服务器进行攻击,采用Ping的方式对目标IP进行攻击,攻击界面截图,如图5所示,攻击结果如表1所示:

图5 Autucrat攻击界面

由以上仿真实验数据可看出,在发生流量异常攻击时,地址池防护系统能够将异常IP拦截,有效地减小了网络流量,缓解了DNS服务器被攻击的危机,对于长期的维护和运行仍然有待考究。

表1 攻击结果表

4 结语

通过封IP的方式能够有效缓解DDoS攻击,即使在存在大量攻击IP和攻击者不断变更IP的情况下,也能针对该IP做出反应,并且通过不断增加威胁池深度,将整个攻击网络纳入到威胁池中,并且由于地址池不断更新的机制,能够有效避免数据冗余,增加了DDoS攻击的难度。

[1] 方蕾,钱华林.DNS安全漏洞以及防范策略研究[J].微电子学与计算机,2003(10):53-57.

FANG Lei, QIAN Hualin. Study on DNS security vulnerabilities and prevention strategies[J]. Microellectronics & Computer,2003,10:53-57.

[2] LI Weimin, CHEN Luying, LEI Zhenming. Alleviating the impact of DNS DDoS attacks[C]//2010 Second International Conference on Networks Security, Wireless Communications and Trusted Computing,2010:240-243.

[3] 张小妹,赵荣彩,单征,等.基于DNS的拒绝服务攻击研究与防范[J].计算机工程与设计,2008,29(1):21-24.

ZHANG Xiaomei, ZHAO Rongcai, SHAN Zheng, et al. To study and prevent attacks based on DNS service[J]. Computer Engineering and Design,2008,29(1):21-24.

[4] 胥秋华.DDoS攻击防御关键技术的研究—DDoS攻击检测[D].上海:上海交通大学,2007.

XU Qiuhua. Study on the detection of DDoS attacks DDoS attack defense key technology[D]. Shanghai: Shanghai Jiao Tong University,2007.

[5] 闫伯儒,方宾兴,李斌,等.DNS欺骗攻击的检测和防范[J].计算机工程,2006,32(21):130-135.

YAN Boru, FANG Bingxing, LI Bin, et al. The detection and prevention of DNS spoofing[J]. Computer Engineering,2006,32(21):130-135.

[6] 欧帅.DNS拒绝服务攻击的防护系统的研究与设计[D].成都:西南交通大学,2009.

OU Shuai. Research and design of DNS protection system of denial of service attacks[D]. Chengdu: Southwest Jiao Tong University,2009.

[7] 陈琳.DNS攻击检测与防御技术研究[D].北京:北京邮电大学,2011.

CHEN Lin. Research on DNS attack detection and Defense Technology[D]. Beijing: Beijing University of Posts and Telecommunications,2011.

[8] 李军利,卜晓燕,张根耀,等.恶意DNS流量攻击研究[J].计算机应用与软件,2007,24(9):200-202.

LI Junli, PU Xiaoyan, ZHANG Genyao, et al. Research on DNS traffic attack[J]. The Application of Computer and Software,2007,24(9):200-202.

[9] 靳冲,郝志宇,吴志刚.DNS缓存投毒攻击原理与防御策略[J].网络与信息安全,2009,11:17-22.

JIIN Chong, HAO Zhiyu, WU Zhigang. DNS cache poison attack and defense strategy of investment principle[J]. Networks and Information Study,2009,11:17-22.

[10] 罗玮,何黎明.DNSSEC与DNS安全防范研究[J].科技广场,2011,9:97-100.

LUO Wei, HE Liming. Study on DNSSEC and DNS security[J]. Technology Square,2011,9:97-100.

[11] 李馥娟.DNSSEC技术及应用分析[J].计算机安全,2009,10:27-30.

LI Fujuan. Analysis of DNSSEC technology and its application[J]. Computer Security,2009,10:27-30.

[12] 白竞雄.DNS拒绝服务式攻击以及防范措施分析[J].技术应用,82-92.

BAI Jingxiong. DNS analysis of denial of service attacks and preventive measures[J]. Technology Application,82-92.

[13] 宋国柱,陈俊杰.基于Mysql数据库的智能DNS系统的设计与实现[J].计算机工程与设计,2009,30(24):5771-5777.

SONG Guozhu, CHEN Junjie. Design and implementation of intelligent DNS system based on Mysql database[J]. Computer Engineering and Design,2009,30(24):5771-5777.

[14] 李静梅,吴鹏.智能DNS系统的设计与实现[J].计算机工程与应用,2007,43(11):157-160.

LI Jingmei, WU Peng. Design and implementation of the intelligent DNS system[J]. Computer Engineering and Applications,2007,43(11):157-160.

[15] 吕国,钟晓春,张梁,等.多出口校园网智能DNS服务器的配置[J].河北建筑工程学院学报,2008,26(3):112-113.

LV Guo, ZHONG Xiaochun, ZHANG Liang, et al. Campus network intelligent DNS server configuration[J]. Journal of Hebei Institute of Architectural Engineering,2008,26(3):112-113.

[16] 潘中强,孙亚南.基于BIND9架构的智能DNS实现[J].平顶山学院学报,2008,23(5):81-83.

PAN Zhongqiang, SUN Yanan. Intelligent DNS implementation based on BIND9 architecture[J]. Journal of Pingdingshan University,2008,23(5):81-83.

[17] 秦宝龙,淑琴.利用BIND9为内外网用户提供域名解析服务网[J].内蒙古电大学刊,2012(3):54-56.

QIN Baolong, SHU Qin. Use BIND9 to provide DNS service network for internal and external network users[J]. Journal of Inner Mongolia Radio & TV University,2012,3:54-56.

[18] 廖宝华.基于Bind及Squid服务的内容分发网络的设计与实现[D].北京:北京邮电大学,2011.

LIAO Baohua. Design and implementation of Bind and Squid service based on content distribution network[D]. Beijing: Beijing University of Posts and Telecommunications,2011.

[19] 张立成,彭勇华.一种智能DNS的设计与实现[J].计算机系统应用,2012,21(11):194-197.

ZHANG Licheng, PENG Yonghua. Design and implementation of an intelligent DNS[J]. The Application of Computer System,2012,21(11):194-197.

[20] 杨柯,陈纪豪,卢春,等.基于Linux智能DNS系统的研究与实现[J].通信技术,2011:72-75.

YANG Ke, CHEN Jihao, LU Chun. Research and implementation of intelligent DNS system based on Linux[J]. Communications Technology,2011:72-75.

[21] 张涛,朱楠.基于智能DNS的校园网络双出口的设计与实现[J].中州大学学报,2009,26(1):126-128.

ZHANG Tao, ZHU Nan. Design and implementation of double outlet of intelligent DNS based on campus network[J]. Journal of Zhongzhou University,2009,26(1):126-128.

DDoS Protection Model Based on Address Pool
ZHANG Xin1QIAN Jin2ZHANG Xin3
(1. Science and Technology Department, Xi’an University of Posts and Telecommunications, Xi’an710061)

(2. Graduate School, Xi’an University of Post and Telecommunications, Xi’an710061)

(3. Information Center, Xi’an University of Posts and Telecommunications, Xi’an710061)

In oder to keep the DNS Server away from the DDoS attack, when attack happens the DNS server will immediately offend itself. Based on the analysis of the attack features and fcous on spoofing attack and reflection attack, the article proposes a malicious IP address library, known as IP address pool and the whole protection system is designed. Also, the feasibility is verified by the simulation experiment.

domain name resolution, flow monitoring, access control, network security

2016年2月12日,

2016年3月30日

张欣,女,硕士,讲师,研究方向:高校科研管理和信息系统应用。钱锦,男,硕士研究生,研究方向:信息安全和云计算。张昕,男,硕士,高级工程师,研究方向:计算机网络与信息系统。

TP393

10.3969/j.issn.1672-9722.2016.08.027

猜你喜欢

池中报文威胁
基于J1939 协议多包报文的时序研究及应用
CTCS-2级报文数据管理需求分析和实现
人类的威胁
池中景象
浅析反驳类报文要点
老伴
受到威胁的生命
面对孩子的“威胁”,我们要会说“不”
ATS与列车通信报文分析