论文部分内容阅读
域名系统(Domain Name System,DNS)是Internet上解决网上机器命名的一种系统。就像拜访朋友要先知道别人家怎么走一样,Internet上当一台主机要访问另外一台主机时,必须首先获知其地址。TCP/IP中的IP地址是由四段以“.”分开的数字组成,记起来总是不如名字那么方便,DNS作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。然而作为早期互联网协议,DNS从设计之初就建立在互信模型的基础之上,是一个完全开放的协作体系,其存在的许多缺陷也使得它成为僵尸网络,钓鱼网站等恶意网络行为当中的重要一环。随着互联网应用的不断普及和网民数量的不断增加,网页种植木马技术不断发展,恶意网站给网民带来的安全威胁正在迅速增加。为应对这种恶意网络行为,传统的方法是通过域名黑名单的方式来阻止恶意域名的活动。然而,随着一些新的网络技术的应用,恶意域名的使用变得越来越灵活,大量涌现的许多短生命周期的恶意域名,快速变更的域名和IP地址对应关系使得传统方式难以应对。在恶意域名为其恶意行为引入灵活性的同时,不可避免的引入了一些不同于正常域名的特征。通过对于海量数据进行统计和分析可以以一定的准确度对其进行识别。本文设计了一个通过分析相关域名特征信息,进而识别恶意域名的系统。首先,本文在讨论域名识别系统项目背景和对其开发设计所面对问题的基础上,分析了系统的功能需求和非功能性需求,并对系统需求以用例图的形式来详细说明。在需求分析基础上,我们进行了域名识别系统架构设计。首先根据系统需求提出系统设计目标和原则,然后分别对系统技术架构和功能架构进行了设计。再一步进行域名识别系统的详细设计。该部分对系统的各个模块的设计通过流程图、状态图以及时序图等形式进行了描述。并对整个系统所需要的数据库设计进行了详细的描述,包括数据库需求分析、数据库概念结构设计和数据库逻辑结构设计。第四部分,我们在详细设计的基础上,给出了系统各个模块的实现。对于各个模块的关键功能,我们辅以代码重点说明,并给出了相关的实现界面。最后,本文对域名识别系统的实现情况作了简单介绍,并对系统进一步改进提出了建议。综上所述,我们在对恶意域名识别有了较深了解的基础上,设计并实现了域名识别系统。