首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

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

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:中国互联网络信息中心

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

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

全文数据:基于SparkStreaming的DNS水刑攻击处理方法及系统技术领域[0001]本发明属于DNSDomainNameSystem,域名系统)技术领域,尤其涉及一种基于SparkStreaming的DNS水刑攻击处理方法及系统。背景技术[0002]域名系统是互联网的基石,负责维护计算机网络中主机的信息,域名系统的安全性和可用性具有十分重要的意义。[0003]水刑攻击是一种针对域名系统的DDoSDistributedDenialofService,分布式拒绝服务攻击。在水刑攻击中,攻击者控制僵尸网络中的主机向目标权威域名服务器发送海量域名查询请求,这些请求经过域名系统解析,经过各级权威服务器,最终到达权威域名服务器,权威域名服务器因无法响应海量的查询请求而服务终止,水刑攻击成功。[0004]以往针对水刑攻击的检测方法主要包括:基于流量波动的检测方法、基于编辑距离的检测方法、基于DNS图挖掘的检测方法以及基于组行为特征的检测方法等。但这些检测方法检测效果不理想,并且不能做到对实时攻击请求的压制。发明内容[0005]有鉴于此,本发明提供了一种基于SparkStreaming的DNS水刑攻击处理方法,能够在递归服务器层级过滤水刑攻击请求,阻止水刑攻击请求进入递归解析阶段,对保证权威服务器的安全性与稳定性有重要作用。[0006]为了实现上述目的,本发明提供如下技术方案:[0007]—种基于SparkStreaming的DNS水刑攻击处理方法,包括:[0008]在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息;[0009]基于SparkStreaming以预设时间间隔提取出所述第一消息的特征;[0010]将提取出的所述第一消息的特征输入预先构建的随机森林模型;[0011]基于所述随机森林模型对所述第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;[0012]将所述攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。[0013]优选地,所述方法还包括:[0014]获取历史水刑攻击的攻击日志;[0015]对所述攻击日志进行预处理,提取特征,生成训练数据;[0016]基于所述训练数据训练得到第一随机森林模型;[0017]验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。[0018]优选地,所述在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息包括:[0019]基于软件Kafka在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息。[0020]优选地,所述验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型包括:[0021]基于5折交叉验证的方式验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。[0022]优选地,所述基于所述训练数据训练得到第一随机森林模型包括:[0023]通过SparkMl1ib基于所述训练数据训练得到第一随机森林模型。[0024]—种基于SparkStreaming的DNS水刑攻击处理系统,包括:[0025]采集模块,用于在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息;[0026]特征提取模块,用于基于SparkStreaming以预设时间间隔提取出所述第一消息的特征;[0027]输入模块,用于将提取出的所述第一消息的特征输入预先构建的随机森林模型;[0028]识别模块,用于基于所述随机森林模型对所述第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;添加模块,用于将所述发送攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。[0029]优选地,所述系统还包括:[0030]获取模块,用于获取历史水刑攻击的攻击日志;[0031]第一生成模块,用于对所述攻击日志进行预处理,提取特征,生成训练数据;[0032]训练模块,用于基于所述训练数据训练得到第一随机森林模型;[0033]第二生成模块,用于验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。[0034]优选地,所述采集模块具体用于:[0035]基于软件Kafka在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息。[0036]优选地,所述第二生成模块具体用于:[0037]基于5折交叉验证的方式验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。[0038]优选地,所述训练模型具体用于:[0039]通过SparkMllib基于所述训练数据训练得到第一随机森林模型。[0040]从上述技术方案可以看出,本发明提供了一种基于SparkStreaming的DNS水刑攻击处理方法,当需要对DNS的水刑攻击进行处理时,首先在待保护的递归服务器上采集实时解析请求,将采集的实时解析请求转换为第一消息,然后基于SparkStreaming以预设时间间隔提取出第一消息的特征,将提取出的第一消息的特征输入预先构建的随机森林模型,基于随机森林模型对第一消息的特征进行识别,识别出实时解析请求中的水刑攻击请求,能够在递归服务器层级实时的识别出攻击请求,在识别出攻击请求后,进一步将发送该攻击请求的客户端的网络地址添加至系统防火墙名单,能够阻止水刑攻击请求进入递归解析阶段,对保证权威服务器的安全性与稳定性有重要作用。附图说明[0041]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。[0042]图1为本发明公开的一种基于SparkStreaming的DNS水刑攻击处理方法实施例1的方法流程图;[0043]图2为本发明公开的一种基于SparkStreaming的DNS水刑攻击处理方法实施例2的方法流程图;[0044]图3为本发明公开的一种基于SparkStreaming的DNS水刑攻击处理系统实施例1的结构示意图;[0045]图4为本发明公开的一种基于SparkStreaming的DNS水刑攻击处理系统实施例2的结构示意图。具体实施方式[0046]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。[0047]如图1所不,为本发明公开的一种基于SparkStreaming的DNS水刑攻击处理方法实施例1的流程图,所述方法包括:[0048]S101、在待保护的递归服务器上采集实时解析请求,将采集的实时解析请求转换为第一消息;[0049]当需要检测DNS是否受到水刑攻击,且当DNS受到水刑攻击需要对水刑攻击进行处理时,首先在待保护的递归服务器上采集实时解析请求,当实时解析请求中出现新的查询记录,即出现新的实时解析请求时,将新的实时解析请求转换为第一消息。[0050]S102、基于SparkStreaming以预设时间间隔提取出第一消息的特征;[0051]当将采集的实时解析请求转换为第一消息后,基于SparkStreaming以预设时间间隔对第一消息中的特征进行抽取。例如,每间隔60秒提取一次第一消息的特征。[0052]Sl〇3、将提取出的第一消息的特征输入预先构建的随机森林模型;[0053]当提取出第一消息的特征后,将提取出的第一消息的特征输入至预先构建的随机森林模型。所述的预先构建的随机森林模型的决策树的个数为5,每次节点分裂参考的随机特征数为3,节点分裂时考虑特征的信息增益比,决策树层数上限为7。[0054]sl〇4、基于随机森林模型对第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;[0055]当将提取出的第一消息的特征输入预先构建的随机森林模型后,通过预先构建的随机森林模型对第一消息的特征进行学习识别,识别出实时解析请求中的水刑攻击请求。[0056]S105、将水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。[0057]识别出水刑攻击请求后,将识别出的水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单,从而实现直接阻止水刑攻击请求进入递归解析阶段,从源头上过滤掉水刑攻击请求。[0058]综上所述,在上述实施例中,当需要对DNS的水刑攻击进行处理时,首先在待保护的递归服务器上采集实时解析请求,将采集的实时解析请求转换为第一消息,然后基于SparkStreaming以预设时间间隔提取出第一消息的特征,将提取出的第一消息的特征输入预先构建的随机森林模型,基于随机森林模型对第一消息的特征进行识别,识别出实时解析请求中的水刑攻击请求,能够在递归服务器层级实时的识别出攻击请求,在识别出攻击请求后,进一步将发送该攻击请求的客户端的网络地址添加至系统防火墙名单,能够阻止水刑攻击请求进入递归解析阶段,对保证权威服务器的安全性与稳定性有重要作用。[0059]如图2所示,为本发明公开的一种基于SparkStreaming的DNS水刑攻击处理方法实施例1的流程图,所述方法包括:[0060]S201、获取历史水刑攻击的攻击日志;[0061]当需要检测DNS是否受到水刑攻击,且当DNS受到水刑攻击需要对水刑攻击进行处理时,首先获取以往水刑攻击的攻击日志。获取的历史水刑攻击的攻击日志中包含正类样本和负类样本,其中,正类样本为日志中的正常DNS请求,负类样本为日志中出现的水刑攻击请求。[0062]S202、对攻击日志进行预处理,提取特征,生成训练数据;[0063]当获取到历史水刑攻击的攻击日志后,对获取到的攻击日志进行提取特征操作。其中,本实施例所使用的特征包含域名本身特征和统计特征两部分。域名本身特征包含:域名长度、域名级数、是否反向解析、域名随机性得分等。其中,域名长度为域名中包含的字节数,域名级数为域名中的个数,是否反向解析是指当前域名是否以.arpa结,域名随机性得分为域名中各bigram出现概率的乘积。统计特征为被请求域名对应的权威域名在一段时间中的统计特性,包含:IP地址空间大小、子域名空间大小、权威域名查询速率等。IP地址空间大小指该域名对应的权威域名在当前这段时间被查询的不同客户端IP个数,子域名空间大小为该域名对应的权威域名在当前这段时间被查询的不同子域名个数,权威域名查询速率为该域名对应的权威域名在当前时段被查询的次数。[0064]S203、基于训练数据训练得到第一随机森林模型;[0065]当生成训练数据后,根据生成的训练数据进行训练,得到第一随机森林模型。[0066]具体的,在训练生成第一随机森林模型时,可以使用SparkMllib进行。[0067]S204、验证第一随机森林模型,根据验证结果,对第一随机森林模型的参数进行调整,生成预先构建的随机森林模型;[0068]为了使训练模型更加精确,提高水刑攻击的处理能力,进一步对训练得到的第一随机森林进行验证,根据验证结果,对第一随机森林模型的参数进行调整,生成预先构建的随机森林模型。[0069]具体的,在对第一随机森林模型进行验证时,可以使用5折交叉验证方式进行验证。[0070]S2〇5、基于软件Kafka在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息;[0071]当生成预先构建的随机森林模型后,根据软件Kafka在待保护的递归服务器上采集实时解析请求,当实时解析请求中出现新的查询记录,即出现新的实时解析请求时,将新的实时解析请求转换为第一消息。[0072]S206、基于SparkStreaming以预设时间间隔提取出第一消息的特征;[0073]当将采集的实时解析请求日志转换为第一消息后,基于SparkStreaming以预设时间间隔对第一消息中的特征进行抽取。例如,每间隔60秒提取一次第一消息的特征。[0074]S207、将提取出的第一消息的特征输入预先构建的随机森林模型;[0075]当提取出第一消息的特征后,将提取出的第一消息的特征输入至预先构建的随机森林模型。所述的预先构建的随机森林模型的决策树的个数为5,每次节点分裂参考的随机特征数为3,节点分裂时考虑特征的信息增益比,决策树层数上限为7。[0076]S208、基于随机森林模型对第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;[0077]当将提取出的第一消息的特征输入预先构建的随机森林模型后,通过预先构建的随机森林模型对第一消息的特征进行学习识别,识别出实时解析请求中的水刑攻击请求。[0078]S209、将水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。[0079]识别出水刑攻击请求后,将识别出的水刑攻击请求所对应的的客户端网络地址添加至系统防火墙黑名单,从而实现直接阻止水刑攻击请求进入递归解析阶段,从源头上过滤掉水刑攻击请求。系统防火墙在过滤发送攻击请求的客户端网络地址时,可通过IPTable实现。[00S0]综上所述,在上述实施例中,水刑攻击的防范主要工作是检测当前的DNS解析请求是否是攻击请求,在该前提下则可以根据网络地址等采取攻击请求过滤策略。本实施例通过训练基于随机森林的水刑攻击请求分类模型,通过采集DNS解析请求本身特征、一段时间内请求的统计特征等,自动判断当前请求是否为攻击请求,设置防火墙规则过滤攻击请求。本实施例部署在递归解析服务器上,直接阻止水刑攻击请求进入递归解析阶段,从源头上过滤水刑攻击请求。[0081]如图3所不,为本发明公开的一种基于SparkStreaming的DNS水刑攻击处理系统实施例1的结构示意图,所述系统包括:[0082]采集模块301,用于在待保护的递归服务器上采集实时解析请求,将采集的实时解析请求转换为第一消息;[0083]当需要检测DNS是否受到水刑攻击,且当DNS受到水刑攻击需要对水刑攻击进行处理时,首先在待保护的递归服务器上采集实时解析请求,当实时解析请求中出现新的查询记录,即出现新的实时解析请求时,将新的实时解析请求转换为第一消息。[0084]特征提取模块302,用于基于SparkStreaming以预设时间间隔提取出第一消息的特征;[0085]当将采集的实时解析请求转换为第一消息后,基于SparkStreaming以预设时间间隔对第一消息中的特征进行抽取。例如,每间隔60秒提取一次第一消息的特征。[0086]输入模块3〇3,用于将提取出的第一消息的特征输入预先构建的随机森林模型;[0087]当提取出第一消息的特征后,将提取出的第一消息的特征输入至预先构建的随机森林模型。所述的预先构建的随机森林模型的决策树的个数为5,每次节点分裂参考的随机特征数为3,节点分裂时考虑特征的信息增益比,决策树层数上限为7。[0088]识别模块304,用于基于随机森林模型对第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;[0089]当将提取出的第一消息的特征输入预先构建的随机森林模型后,通过预先构建的随机森林模型对第一消息的特征进行学习识别,识别出实时解析请求中的水刑攻击请求。[0090]添加模块305,用于将水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。[0091]识别出水刑攻击请求后,将识别出的水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单,从而实现直接阻止水刑攻击请求进入递归解析阶段,从源头上过滤掉水刑攻击请求。[0092]综上所述,在上述实施例中,当需要对DNS的水刑攻击进行处理时,首先在待保护的递归服务器上采集实时解析请求日志,将采集的实时解析请求日志转换为第一消息,然后基于SparkStreaming以预设时间间隔提取出第一消息的特征,将提取出的第一消息的特征输入预先构建的随机森林模型,基于随机森林模型对第一消息的特征进行识别,识别出实时解析请求中的水刑攻击请求,能够在递归服务器层级实时的识别出攻击请求,在识别出攻击请求后,进一步将发送该攻击请求的客户端的网络地址添加至系统防火墙名单,能够阻止水刑攻击请求进入递归解析阶段,对保证权威服务器的安全性与稳定性有重要作用。[0093]如图4所不,为本发明公开的一种基于SparkStreaming的DNS水刑攻击处理系统实施例2的结构示意图,所述系统包括:[0094]获取模块401,用于获取历史水刑攻击的攻击日志;[0095]当需要检测DNS是否受到水刑攻击,且当DNS受到水刑攻击需要对水刑攻击进行处理时,首先获取以往水刑攻击的攻击日志。获取的历史水刑攻击的攻击日志中包含正类样本和负类样本,其中,正类样本为日志中的正常DNS请求,负类样本为日志中出现的水刑攻击请求。[0096]第一生成模块402,用于对攻击日志进行预处理,提取特征,生成训练数据;[0097]当获取到历史水刑攻击的攻击日志后,对获取到的攻击日志进行提取特征操作。其中,本实施例所使用的特征包含域名本身特征和统计特征两部分。域名本身特征包含:域名长度、域名级数、是否反向解析、域名随机性得分等。其中,域名长度为域名中包含的字节数,域名级数为域名中“”的个数,是否反向解析是指当前域名是否以.arpa结,域名随机性得分为域名中各bigram出现概率的乘积。统计特征为被请求域名对应的权威域名在一段时间中的统计特性,包含:IP地址空间大小、子域名空间大小、权威域名查询速率等。IP地址空间大小指该域名对应的权威域名在当前这段时间被查询的不同客户端IP个数,子域名空间大小为该域名对应的权威域名在当前这段时间被查询的不同子域名个数,权威域名查询速率为该域名对应的权威域名在当前时段被查询的次数。[0098]训练模块403,用于基于训练数据训练得到第一随机森林模型;[0099]当生成训练数据后,根据生成的训练数据进行训练,得到第一随机森林模型。[0100]具体的,在训练生成第一随机森林模型时,可以使用SparkMllib进行。[0101]第二生成模块404,用于验证第一随机森林模型,根据验证结果,对第一随机森林模型的参数进行调整,生成预先构建的随机森林模型;[0102]为了使训练模型更加精确,提高水刑攻击的处理能力,进一步对训练得到的第一随机森林进行验证,根据验证结果,对第一随机森林模型的参数进行调整,生成预先构建的随机森林模型。[0103]具体的,在对第一随机森林模型进行验证时,可以使用5折交叉验证方式进行验证。[0104]采集模块405,用于基于软件Kafka在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息;[0105]当生成预先构建的随机森林模型后,根据软件Kafka在待保护的递归服务器上采集实时解析请求,当实时解析请求中出现新的查询记录,即出现新的实时解析请求时,将新的实时解析请求转换为第一消息。[0106]特征提取模块406,用于基于SparkStreaming以预设时间间隔提取出第一消息的特征;[0107]当将采集的实时解析请求日志转换为第一消息后,基于SparkStreaming以预设时间间隔对第一消息中的特征进行抽取。例如,每间隔60秒提取一次第一消息的特征。[0108]输入模块4〇7,用于将提取出的第一消息的特征输入预先构建的随机森林模型;[0109]当提取出第一消息的特征后,将提取出的第一消息的特征输入至预先构建的随机森林模型。所述的预先构建的随机森林模型的决策树的个数为5,每次节点分裂参考的随机特征数为3,节点分裂时考虑特征的信息增益比,决策树层数上限为7。[0110]识别模块408,用于基于随机森林模型对第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;[0111]当将提取出的第一消息的特征输入预先构建的随机森林模型后,通过预先构建的随机森林模型对第一消息的特征进行学习识别,识别出实时解析请求中的水刑攻击请求。[0112]添加模块409,用于将水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。[0113]识别出水刑攻击请求后,将识别出的水刑攻击请求所对应的的客户端网络地址添加至系统防火墙黑名单,从而实现直接阻止水刑攻击请求进入递归解析阶段,从源头上过滤掉水刑攻击请求。系统防火墙在过滤发送攻击请求的客户端网络地址时,可通过IPTable实现。综上所述,在上述实施例中,水刑攻击的防范主要工作是检测当前的DNS解析请求是否是攻击请求,在该前提下则可以根据网络地址等采取攻击请求过滤策略。本实施例通过训练基于随机森林的水刑攻击请求分类模型,通过采集DNS解析请求本身特征、一段时间内请求的统计特征等,自动判断当前请求是否为攻击请求,设置防火墙规则过滤攻击请求。本实施例部署在递归解析服务器上,直接阻止水刑攻击请求进入递归解析阶段,从源头上过滤水刑攻击请求。[0115]专业人员可意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。[0116]结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器RAM、内存、只读存储器ROM、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。[0117]对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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

百度查询: 中国互联网络信息中心 基于Spark Streaming的DNS水刑攻击处理方法及系统

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。