论文部分内容阅读
随着互联网应用的持续发展和网民数量的爆炸式增长,恶意域名给网民带来的安全威胁正在迅速增加。域名解析服务(DNS)存在的许多缺陷常常被僵尸网络、钓鱼网站等恶意网络行为所利用。传统网络下对恶意域名的防护一般是在用户主机或网络出口安装杀毒软件和防火墙等,但并不是每个用户都愿意或具备安装能力,而且目前对恶意域名的检测主要基于黑名单匹配,需要及时更新维护黑名单,往往危害发生后才进行防护。Fast-flux技术和DGA域名生成算法等新的网络技术的应用更增加了传统网络的传统方法对于恶意域名的检测和防护的难度。针对目前恶意域名检测与防护方法成本高、灵活性低、检测精确率低等问题,本文详细研究了SDN网络框架的特点以及其相关的技术,结合对机器学习中SVM分类算法的详细研究,最终提出了一种基于SDN和机器学习技术的恶意域名检测与防护的方法,该方法利用SDN转控分离的特点,实时地在恶意域名解析阶段就对其进行识别和拦截,并可在应用层灵活的控制其进行重定向和代理访问以及数据流实时监控等,恶意域名检测阶段利用黑白名单和机器学习分类算法对域名进行检测,可以有效提高检测精确率。本文根据提出的方法设计和实现了一套恶意域名检测与防护系统,并在Mininet虚拟仿真网络拓扑中进行了实验验证。该恶意域名检测与防护系统分为三层,分别是转发层、控制层和应用层。转发层的设备通过匹配控制层下发的流表来转发数据;控制层使用Floodlight作为控制器,控制器具有全局的网络视图,可以集中管理和配置整个网络的资源,在控制器中使用Floodlight的系统模块API以及结合SVM分类算法实现了恶意域名检测与防护系统,系统总共分为四大功能模块,分别是DNS数据包解析、域名检测分类、数据流重定向、代理访问及数据流监控,并对应用层开放相关的REST API;应用层使用nodejs和python调用控制器开放的REST API分别实现了web端可视化界面的恶意域名检测与防护管理器和DNS重定向服务器。实验证明,本系统能精确地识别恶意域名并对其进行拦截,根据配置要求可以进行域名DNS解析重定向和访问数据流的重定向以及代理访问和数据流实时监控,拥有成本低,灵活性高,透明化,实时检测等众多优点,具有较高的研究价值和实用价值。