基于Spark Streaming的DNS水刑攻击处理方法及系统技术方案

技术编号:17974331 阅读:30 留言:0更新日期:2018-05-16 13:55
本发明专利技术提供了一种基于Spark Streaming的DNS水刑攻击处理方法及系统,包括:在待保护的递归服务器上采集实时解析请求,将采集的实时解析请求转换为第一消息,基于Spark Streaming以预设时间间隔提取出第一消息的特征,将提取出的第一消息的特征输入预先构建的随机森林模型,基于随机森林模型对第一消息的特征进行识别,识别出实时解析请求中的水刑攻击请求,将水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。本发明专利技术能够在递归服务器层级过滤水刑攻击请求,阻止水刑攻击请求进入递归解析阶段,对保证权威服务器的安全性与稳定性有重要作用。

【技术实现步骤摘要】
基于SparkStreaming的DNS水刑攻击处理方法及系统
本专利技术属于DNS(DomainNameSystem,域名系统)
,尤其涉及一种基于SparkStreaming的DNS水刑攻击处理方法及系统。
技术介绍
域名系统是互联网的基石,负责维护计算机网络中主机的信息,域名系统的安全性和可用性具有十分重要的意义。水刑攻击是一种针对域名系统的DDoS(DistributedDenialofService,分布式拒绝服务)攻击。在水刑攻击中,攻击者控制僵尸网络中的主机向目标权威域名服务器发送海量域名查询请求,这些请求经过域名系统解析,经过各级权威服务器,最终到达权威域名服务器,权威域名服务器因无法响应海量的查询请求而服务终止,水刑攻击成功。以往针对水刑攻击的检测方法主要包括:基于流量波动的检测方法、基于编辑距离的检测方法、基于DNS图挖掘的检测方法以及基于组行为特征的检测方法等。但这些检测方法检测效果不理想,并且不能做到对实时攻击请求的压制。
技术实现思路
有鉴于此,本专利技术提供了一种基于SparkStreaming的DNS水刑攻击处理方法,能够在递归服务器层级过滤水刑攻击请求,阻止水刑攻击请求进入递归解析阶段,对保证权威服务器的安全性与稳定性有重要作用。为了实现上述目的,本专利技术提供如下技术方案:一种基于SparkStreaming的DNS水刑攻击处理方法,包括:在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息;基于SparkStreaming以预设时间间隔提取出所述第一消息的特征;将提取出的所述第一消息的特征输入预先构建的随机森林模型;基于所述随机森林模型对所述第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;将所述攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。优选地,所述方法还包括:获取历史水刑攻击的攻击日志;对所述攻击日志进行预处理,提取特征,生成训练数据;基于所述训练数据训练得到第一随机森林模型;验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。优选地,所述在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息包括:基于软件Kafka在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息。优选地,所述验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型包括:基于5折交叉验证的方式验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。优选地,所述基于所述训练数据训练得到第一随机森林模型包括:通过SparkMllib基于所述训练数据训练得到第一随机森林模型。一种基于SparkStreaming的DNS水刑攻击处理系统,包括:采集模块,用于在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息;特征提取模块,用于基于SparkStreaming以预设时间间隔提取出所述第一消息的特征;输入模块,用于将提取出的所述第一消息的特征输入预先构建的随机森林模型;识别模块,用于基于所述随机森林模型对所述第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;添加模块,用于将所述发送攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。优选地,所述系统还包括:获取模块,用于获取历史水刑攻击的攻击日志;第一生成模块,用于对所述攻击日志进行预处理,提取特征,生成训练数据;训练模块,用于基于所述训练数据训练得到第一随机森林模型;第二生成模块,用于验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。优选地,所述采集模块具体用于:基于软件Kafka在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息。优选地,所述第二生成模块具体用于:基于5折交叉验证的方式验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。优选地,所述训练模型具体用于:通过SparkMllib基于所述训练数据训练得到第一随机森林模型。从上述技术方案可以看出,本专利技术提供了一种基于SparkStreaming的DNS水刑攻击处理方法,当需要对DNS的水刑攻击进行处理时,首先在待保护的递归服务器上采集实时解析请求,将采集的实时解析请求转换为第一消息,然后基于SparkStreaming以预设时间间隔提取出第一消息的特征,将提取出的第一消息的特征输入预先构建的随机森林模型,基于随机森林模型对第一消息的特征进行识别,识别出实时解析请求中的水刑攻击请求,能够在递归服务器层级实时的识别出攻击请求,在识别出攻击请求后,进一步将发送该攻击请求的客户端的网络地址添加至系统防火墙名单,能够阻止水刑攻击请求进入递归解析阶段,对保证权威服务器的安全性与稳定性有重要作用。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术公开的一种基于SparkStreaming的DNS水刑攻击处理方法实施例1的方法流程图;图2为本专利技术公开的一种基于SparkStreaming的DNS水刑攻击处理方法实施例2的方法流程图;图3为本专利技术公开的一种基于SparkStreaming的DNS水刑攻击处理系统实施例1的结构示意图;图4为本专利技术公开的一种基于SparkStreaming的DNS水刑攻击处理系统实施例2的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。如图1所示,为本专利技术公开的一种基于SparkStreaming的DNS水刑攻击处理方法实施例1的流程图,所述方法包括:S101、在待保护的递归服务器上采集实时解析请求,将采集的实时解析请求转换为第一消息;当需要检测DNS是否受到水刑攻击,且当DNS受到水刑攻击需要对水刑攻击进行处理时,首先在待保护的递归服务器上采集实时解析请求,当实时解析请求中出现新的查询记录,即出现新的实时解析请求时,将新的实时解析请求转换为第一消息。S102、基于SparkStreaming以预设时间间隔提取出第一消息的特征;当将采集的实时解析请求转换为第一消息后,基于SparkStreaming以预设时间间隔对第一消息中的特征进行抽取。例如,每间隔60秒提取一次第一消息的特征。S103、将提取出的第一消息的特征输入预先构建的随机森林模型;当提取出第一消息的特征后,将提取出的第一消息的特征输入至预先构建的随机森林模型。所述的预先构建的随机森林模型的决策树的个数为5,每次节点分裂本文档来自技高网...
<a href="http://www.xjishu.com/zhuanli/62/201810115903.html" title="基于Spark Streaming的DNS水刑攻击处理方法及系统原文来自X技术">基于Spark Streaming的DNS水刑攻击处理方法及系统</a>

【技术保护点】
一种基于Spark Streaming的DNS水刑攻击处理方法,其特征在于,包括:在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息;基于Spark Streaming以预设时间间隔提取出所述第一消息的特征;将提取出的所述第一消息的特征输入预先构建的随机森林模型;基于所述随机森林模型对所述第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;将所述水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。

【技术特征摘要】
1.一种基于SparkStreaming的DNS水刑攻击处理方法,其特征在于,包括:在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息;基于SparkStreaming以预设时间间隔提取出所述第一消息的特征;将提取出的所述第一消息的特征输入预先构建的随机森林模型;基于所述随机森林模型对所述第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;将所述水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。2.根据权利要求1所述的方法,其特征在于,还包括:获取历史水刑攻击的攻击日志;对所述攻击日志进行预处理,提取特征,生成训练数据;基于所述训练数据训练得到第一随机森林模型;验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。3.根据权利要求1所述的方法,其特征在于,所述在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息包括:基于软件Kafka在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息。4.根据权利要求2所述的方法,其特征在于,所述验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型包括:基于5折交叉验证的方式验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。5.根据权利要求2所述的方法,其特征在于,所述基于所述训练数据训练得到第一随机森林模型包括:通过SparkMllib基于所述训练数据训...

【专利技术属性】
技术研发人员:张跃冬陈立国耿光刚延志伟
申请(专利权)人:中国互联网络信息中心
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1