CN108040076A - 基于Spark Streaming的DNS水刑攻击处理方法及系统 - Google Patents
基于Spark Streaming的DNS水刑攻击处理方法及系统 Download PDFInfo
- Publication number
- CN108040076A CN108040076A CN201810115903.2A CN201810115903A CN108040076A CN 108040076 A CN108040076 A CN 108040076A CN 201810115903 A CN201810115903 A CN 201810115903A CN 108040076 A CN108040076 A CN 108040076A
- Authority
- CN
- China
- Prior art keywords
- attack
- random forest
- forest model
- message
- real time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1458—Denial of Service
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明提供了一种基于Spark Streaming的DNS水刑攻击处理方法及系统,包括:在待保护的递归服务器上采集实时解析请求,将采集的实时解析请求转换为第一消息,基于Spark Streaming以预设时间间隔提取出第一消息的特征,将提取出的第一消息的特征输入预先构建的随机森林模型,基于随机森林模型对第一消息的特征进行识别,识别出实时解析请求中的水刑攻击请求,将水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。本发明能够在递归服务器层级过滤水刑攻击请求,阻止水刑攻击请求进入递归解析阶段,对保证权威服务器的安全性与稳定性有重要作用。
Description
技术领域
本发明属于DNS(Domain Name System,域名系统)技术领域,尤其涉及一种基于Spark Streaming的DNS水刑攻击处理方法及系统。
背景技术
域名系统是互联网的基石,负责维护计算机网络中主机的信息,域名系统的安全性和可用性具有十分重要的意义。
水刑攻击是一种针对域名系统的DDoS(Distributed Denial of Service,分布式拒绝服务)攻击。在水刑攻击中,攻击者控制僵尸网络中的主机向目标权威域名服务器发送海量域名查询请求,这些请求经过域名系统解析,经过各级权威服务器,最终到达权威域名服务器,权威域名服务器因无法响应海量的查询请求而服务终止,水刑攻击成功。
以往针对水刑攻击的检测方法主要包括:基于流量波动的检测方法、基于编辑距离的检测方法、基于DNS图挖掘的检测方法以及基于组行为特征的检测方法等。但这些检测方法检测效果不理想,并且不能做到对实时攻击请求的压制。
发明内容
有鉴于此,本发明提供了一种基于Spark Streaming的DNS水刑攻击处理方法,能够在递归服务器层级过滤水刑攻击请求,阻止水刑攻击请求进入递归解析阶段,对保证权威服务器的安全性与稳定性有重要作用。
为了实现上述目的,本发明提供如下技术方案:
一种基于Spark Streaming的DNS水刑攻击处理方法,包括:
在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息;
基于Spark Streaming以预设时间间隔提取出所述第一消息的特征;
将提取出的所述第一消息的特征输入预先构建的随机森林模型;
基于所述随机森林模型对所述第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;
将所述攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。
优选地,所述方法还包括:
获取历史水刑攻击的攻击日志;
对所述攻击日志进行预处理,提取特征,生成训练数据;
基于所述训练数据训练得到第一随机森林模型;
验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。
优选地,所述在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息包括:
基于软件Kafka在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息。
优选地,所述验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型包括:
基于5折交叉验证的方式验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。
优选地,所述基于所述训练数据训练得到第一随机森林模型包括:
通过Spark Mllib基于所述训练数据训练得到第一随机森林模型。
一种基于Spark Streaming的DNS水刑攻击处理系统,包括:
采集模块,用于在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息;
特征提取模块,用于基于Spark Streaming以预设时间间隔提取出所述第一消息的特征;
输入模块,用于将提取出的所述第一消息的特征输入预先构建的随机森林模型;
识别模块,用于基于所述随机森林模型对所述第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;添加模块,用于将所述发送攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。
优选地,所述系统还包括:
获取模块,用于获取历史水刑攻击的攻击日志;
第一生成模块,用于对所述攻击日志进行预处理,提取特征,生成训练数据;
训练模块,用于基于所述训练数据训练得到第一随机森林模型;
第二生成模块,用于验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。
优选地,所述采集模块具体用于:
基于软件Kafka在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息。
优选地,所述第二生成模块具体用于:
基于5折交叉验证的方式验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。
优选地,所述训练模型具体用于:
通过Spark Mllib基于所述训练数据训练得到第一随机森林模型。
从上述技术方案可以看出,本发明提供了一种基于Spark Streaming的DNS水刑攻击处理方法,当需要对DNS的水刑攻击进行处理时,首先在待保护的递归服务器上采集实时解析请求,将采集的实时解析请求转换为第一消息,然后基于Spark Streaming以预设时间间隔提取出第一消息的特征,将提取出的第一消息的特征输入预先构建的随机森林模型,基于随机森林模型对第一消息的特征进行识别,识别出实时解析请求中的水刑攻击请求,能够在递归服务器层级实时的识别出攻击请求,在识别出攻击请求后,进一步将发送该攻击请求的客户端的网络地址添加至系统防火墙名单,能够阻止水刑攻击请求进入递归解析阶段,对保证权威服务器的安全性与稳定性有重要作用。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明公开的一种基于Spark Streaming的DNS水刑攻击处理方法实施例1的方法流程图;
图2为本发明公开的一种基于Spark Streaming的DNS水刑攻击处理方法实施例2的方法流程图;
图3为本发明公开的一种基于Spark Streaming的DNS水刑攻击处理系统实施例1的结构示意图;
图4为本发明公开的一种基于Spark Streaming的DNS水刑攻击处理系统实施例2的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,为本发明公开的一种基于Spark Streaming的DNS水刑攻击处理方法实施例1的流程图,所述方法包括:
S101、在待保护的递归服务器上采集实时解析请求,将采集的实时解析请求转换为第一消息;
当需要检测DNS是否受到水刑攻击,且当DNS受到水刑攻击需要对水刑攻击进行处理时,首先在待保护的递归服务器上采集实时解析请求,当实时解析请求中出现新的查询记录,即出现新的实时解析请求时,将新的实时解析请求转换为第一消息。
S102、基于Spark Streaming以预设时间间隔提取出第一消息的特征;
当将采集的实时解析请求转换为第一消息后,基于Spark Streaming以预设时间间隔对第一消息中的特征进行抽取。例如,每间隔60秒提取一次第一消息的特征。
S103、将提取出的第一消息的特征输入预先构建的随机森林模型;
当提取出第一消息的特征后,将提取出的第一消息的特征输入至预先构建的随机森林模型。所述的预先构建的随机森林模型的决策树的个数为5,每次节点分裂参考的随机特征数为3,节点分裂时考虑特征的信息增益比,决策树层数上限为7。
S104、基于随机森林模型对第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;
当将提取出的第一消息的特征输入预先构建的随机森林模型后,通过预先构建的随机森林模型对第一消息的特征进行学习识别,识别出实时解析请求中的水刑攻击请求。
S105、将水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。
识别出水刑攻击请求后,将识别出的水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单,从而实现直接阻止水刑攻击请求进入递归解析阶段,从源头上过滤掉水刑攻击请求。
综上所述,在上述实施例中,当需要对DNS的水刑攻击进行处理时,首先在待保护的递归服务器上采集实时解析请求,将采集的实时解析请求转换为第一消息,然后基于Spark Streaming以预设时间间隔提取出第一消息的特征,将提取出的第一消息的特征输入预先构建的随机森林模型,基于随机森林模型对第一消息的特征进行识别,识别出实时解析请求中的水刑攻击请求,能够在递归服务器层级实时的识别出攻击请求,在识别出攻击请求后,进一步将发送该攻击请求的客户端的网络地址添加至系统防火墙名单,能够阻止水刑攻击请求进入递归解析阶段,对保证权威服务器的安全性与稳定性有重要作用。
如图2所示,为本发明公开的一种基于Spark Streaming的DNS水刑攻击处理方法实施例1的流程图,所述方法包括:
S201、获取历史水刑攻击的攻击日志;
当需要检测DNS是否受到水刑攻击,且当DNS受到水刑攻击需要对水刑攻击进行处理时,首先获取以往水刑攻击的攻击日志。获取的历史水刑攻击的攻击日志中包含正类样本和负类样本,其中,正类样本为日志中的正常DNS请求,负类样本为日志中出现的水刑攻击请求。
S202、对攻击日志进行预处理,提取特征,生成训练数据;
当获取到历史水刑攻击的攻击日志后,对获取到的攻击日志进行提取特征操作。其中,本实施例所使用的特征包含域名本身特征和统计特征两部分。域名本身特征包含:域名长度、域名级数、是否反向解析、域名随机性得分等。其中,域名长度为域名中包含的字节数,域名级数为域名中“.”的个数,是否反向解析是指当前域名是否以.arpa结,域名随机性得分为域名中各bigram出现概率的乘积。统计特征为被请求域名对应的权威域名在一段时间中的统计特性,包含:IP地址空间大小、子域名空间大小、权威域名查询速率等。IP地址空间大小指该域名对应的权威域名在当前这段时间被查询的不同客户端IP个数,子域名空间大小为该域名对应的权威域名在当前这段时间被查询的不同子域名个数,权威域名查询速率为该域名对应的权威域名在当前时段被查询的次数。
S203、基于训练数据训练得到第一随机森林模型;
当生成训练数据后,根据生成的训练数据进行训练,得到第一随机森林模型。
具体的,在训练生成第一随机森林模型时,可以使用Spark Mllib进行。
S204、验证第一随机森林模型,根据验证结果,对第一随机森林模型的参数进行调整,生成预先构建的随机森林模型;
为了使训练模型更加精确,提高水刑攻击的处理能力,进一步对训练得到的第一随机森林进行验证,根据验证结果,对第一随机森林模型的参数进行调整,生成预先构建的随机森林模型。
具体的,在对第一随机森林模型进行验证时,可以使用5折交叉验证方式进行验证。
S205、基于软件Kafka在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息;
当生成预先构建的随机森林模型后,根据软件Kafka在待保护的递归服务器上采集实时解析请求,当实时解析请求中出现新的查询记录,即出现新的实时解析请求时,将新的实时解析请求转换为第一消息。
S206、基于Spark Streaming以预设时间间隔提取出第一消息的特征;
当将采集的实时解析请求日志转换为第一消息后,基于Spark Streaming以预设时间间隔对第一消息中的特征进行抽取。例如,每间隔60秒提取一次第一消息的特征。
S207、将提取出的第一消息的特征输入预先构建的随机森林模型;
当提取出第一消息的特征后,将提取出的第一消息的特征输入至预先构建的随机森林模型。所述的预先构建的随机森林模型的决策树的个数为5,每次节点分裂参考的随机特征数为3,节点分裂时考虑特征的信息增益比,决策树层数上限为7。
S208、基于随机森林模型对第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;
当将提取出的第一消息的特征输入预先构建的随机森林模型后,通过预先构建的随机森林模型对第一消息的特征进行学习识别,识别出实时解析请求中的水刑攻击请求。
S209、将水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。
识别出水刑攻击请求后,将识别出的水刑攻击请求所对应的的客户端网络地址添加至系统防火墙黑名单,从而实现直接阻止水刑攻击请求进入递归解析阶段,从源头上过滤掉水刑攻击请求。系统防火墙在过滤发送攻击请求的客户端网络地址时,可通过IPTable实现。
综上所述,在上述实施例中,水刑攻击的防范主要工作是检测当前的DNS解析请求是否是攻击请求,在该前提下则可以根据网络地址等采取攻击请求过滤策略。本实施例通过训练基于随机森林的水刑攻击请求分类模型,通过采集DNS解析请求本身特征、一段时间内请求的统计特征等,自动判断当前请求是否为攻击请求,设置防火墙规则过滤攻击请求。本实施例部署在递归解析服务器上,直接阻止水刑攻击请求进入递归解析阶段,从源头上过滤水刑攻击请求。
如图3所示,为本发明公开的一种基于Spark Streaming的DNS水刑攻击处理系统实施例1的结构示意图,所述系统包括:
采集模块301,用于在待保护的递归服务器上采集实时解析请求,将采集的实时解析请求转换为第一消息;
当需要检测DNS是否受到水刑攻击,且当DNS受到水刑攻击需要对水刑攻击进行处理时,首先在待保护的递归服务器上采集实时解析请求,当实时解析请求中出现新的查询记录,即出现新的实时解析请求时,将新的实时解析请求转换为第一消息。
特征提取模块302,用于基于Spark Streaming以预设时间间隔提取出第一消息的特征;
当将采集的实时解析请求转换为第一消息后,基于Spark Streaming以预设时间间隔对第一消息中的特征进行抽取。例如,每间隔60秒提取一次第一消息的特征。
输入模块303,用于将提取出的第一消息的特征输入预先构建的随机森林模型;
当提取出第一消息的特征后,将提取出的第一消息的特征输入至预先构建的随机森林模型。所述的预先构建的随机森林模型的决策树的个数为5,每次节点分裂参考的随机特征数为3,节点分裂时考虑特征的信息增益比,决策树层数上限为7。
识别模块304,用于基于随机森林模型对第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;
当将提取出的第一消息的特征输入预先构建的随机森林模型后,通过预先构建的随机森林模型对第一消息的特征进行学习识别,识别出实时解析请求中的水刑攻击请求。
添加模块305,用于将水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。
识别出水刑攻击请求后,将识别出的水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单,从而实现直接阻止水刑攻击请求进入递归解析阶段,从源头上过滤掉水刑攻击请求。
综上所述,在上述实施例中,当需要对DNS的水刑攻击进行处理时,首先在待保护的递归服务器上采集实时解析请求日志,将采集的实时解析请求日志转换为第一消息,然后基于Spark Streaming以预设时间间隔提取出第一消息的特征,将提取出的第一消息的特征输入预先构建的随机森林模型,基于随机森林模型对第一消息的特征进行识别,识别出实时解析请求中的水刑攻击请求,能够在递归服务器层级实时的识别出攻击请求,在识别出攻击请求后,进一步将发送该攻击请求的客户端的网络地址添加至系统防火墙名单,能够阻止水刑攻击请求进入递归解析阶段,对保证权威服务器的安全性与稳定性有重要作用。
如图4所示,为本发明公开的一种基于Spark Streaming的DNS水刑攻击处理系统实施例2的结构示意图,所述系统包括:
获取模块401,用于获取历史水刑攻击的攻击日志;
当需要检测DNS是否受到水刑攻击,且当DNS受到水刑攻击需要对水刑攻击进行处理时,首先获取以往水刑攻击的攻击日志。获取的历史水刑攻击的攻击日志中包含正类样本和负类样本,其中,正类样本为日志中的正常DNS请求,负类样本为日志中出现的水刑攻击请求。
第一生成模块402,用于对攻击日志进行预处理,提取特征,生成训练数据;
当获取到历史水刑攻击的攻击日志后,对获取到的攻击日志进行提取特征操作。其中,本实施例所使用的特征包含域名本身特征和统计特征两部分。域名本身特征包含:域名长度、域名级数、是否反向解析、域名随机性得分等。其中,域名长度为域名中包含的字节数,域名级数为域名中“.”的个数,是否反向解析是指当前域名是否以.arpa结,域名随机性得分为域名中各bigram出现概率的乘积。统计特征为被请求域名对应的权威域名在一段时间中的统计特性,包含:IP地址空间大小、子域名空间大小、权威域名查询速率等。IP地址空间大小指该域名对应的权威域名在当前这段时间被查询的不同客户端IP个数,子域名空间大小为该域名对应的权威域名在当前这段时间被查询的不同子域名个数,权威域名查询速率为该域名对应的权威域名在当前时段被查询的次数。
训练模块403,用于基于训练数据训练得到第一随机森林模型;
当生成训练数据后,根据生成的训练数据进行训练,得到第一随机森林模型。
具体的,在训练生成第一随机森林模型时,可以使用Spark Mllib进行。
第二生成模块404,用于验证第一随机森林模型,根据验证结果,对第一随机森林模型的参数进行调整,生成预先构建的随机森林模型;
为了使训练模型更加精确,提高水刑攻击的处理能力,进一步对训练得到的第一随机森林进行验证,根据验证结果,对第一随机森林模型的参数进行调整,生成预先构建的随机森林模型。
具体的,在对第一随机森林模型进行验证时,可以使用5折交叉验证方式进行验证。
采集模块405,用于基于软件Kafka在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息;
当生成预先构建的随机森林模型后,根据软件Kafka在待保护的递归服务器上采集实时解析请求,当实时解析请求中出现新的查询记录,即出现新的实时解析请求时,将新的实时解析请求转换为第一消息。
特征提取模块406,用于基于Spark Streaming以预设时间间隔提取出第一消息的特征;
当将采集的实时解析请求日志转换为第一消息后,基于Spark Streaming以预设时间间隔对第一消息中的特征进行抽取。例如,每间隔60秒提取一次第一消息的特征。
输入模块407,用于将提取出的第一消息的特征输入预先构建的随机森林模型;
当提取出第一消息的特征后,将提取出的第一消息的特征输入至预先构建的随机森林模型。所述的预先构建的随机森林模型的决策树的个数为5,每次节点分裂参考的随机特征数为3,节点分裂时考虑特征的信息增益比,决策树层数上限为7。
识别模块408,用于基于随机森林模型对第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;
当将提取出的第一消息的特征输入预先构建的随机森林模型后,通过预先构建的随机森林模型对第一消息的特征进行学习识别,识别出实时解析请求中的水刑攻击请求。
添加模块409,用于将水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。
识别出水刑攻击请求后,将识别出的水刑攻击请求所对应的的客户端网络地址添加至系统防火墙黑名单,从而实现直接阻止水刑攻击请求进入递归解析阶段,从源头上过滤掉水刑攻击请求。系统防火墙在过滤发送攻击请求的客户端网络地址时,可通过IPTable实现。
综上所述,在上述实施例中,水刑攻击的防范主要工作是检测当前的DNS解析请求是否是攻击请求,在该前提下则可以根据网络地址等采取攻击请求过滤策略。本实施例通过训练基于随机森林的水刑攻击请求分类模型,通过采集DNS解析请求本身特征、一段时间内请求的统计特征等,自动判断当前请求是否为攻击请求,设置防火墙规则过滤攻击请求。本实施例部署在递归解析服务器上,直接阻止水刑攻击请求进入递归解析阶段,从源头上过滤水刑攻击请求。
专业人员可意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种基于Spark Streaming的DNS水刑攻击处理方法,其特征在于,包括:
在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息;
基于Spark Streaming以预设时间间隔提取出所述第一消息的特征;
将提取出的所述第一消息的特征输入预先构建的随机森林模型;
基于所述随机森林模型对所述第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;
将所述水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。
2.根据权利要求1所述的方法,其特征在于,还包括:
获取历史水刑攻击的攻击日志;
对所述攻击日志进行预处理,提取特征,生成训练数据;
基于所述训练数据训练得到第一随机森林模型;
验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。
3.根据权利要求1所述的方法,其特征在于,所述在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息包括:
基于软件Kafka在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息。
4.根据权利要求2所述的方法,其特征在于,所述验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型包括:
基于5折交叉验证的方式验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。
5.根据权利要求2所述的方法,其特征在于,所述基于所述训练数据训练得到第一随机森林模型包括:
通过Spark Mllib基于所述训练数据训练得到第一随机森林模型。
6.一种基于Spark Streaming的DNS水刑攻击处理系统,其特征在于,包括:
采集模块,用于在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息;
特征提取模块,用于基于Spark Streaming以预设时间间隔提取出所述第一消息的特征;
输入模块,用于将提取出的所述第一消息的特征输入预先构建的随机森林模型;
识别模块,用于基于所述随机森林模型对所述第一消息的特征进行识别,识别出所述实时解析请求中的水刑攻击请求;
添加模块,用于将所述水刑攻击请求所对应的客户端网络地址添加至系统防火墙黑名单。
7.根据权利要求6所述的系统,其特征在于,还包括:
获取模块,用于获取历史水刑攻击的攻击日志;
第一生成模块,用于对所述攻击日志进行预处理,提取特征,生成训练数据;
训练模块,用于基于所述训练数据训练得到第一随机森林模型;
第二生成模块,用于验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。
8.根据权利要求6所述的系统,其特征在于,所述采集模块具体用于:
基于软件Kafka在待保护的递归服务器上采集实时解析请求,将采集的所述实时解析请求转换为第一消息。
9.根据权利要求7所述的系统,其特征在于,所述第二生成模块具体用于:
基于5折交叉验证的方式验证所述第一随机森林模型,根据验证结果,对所述第一随机森林模型的参数进行调整,生成所述预先构建的随机森林模型。
10.根据权利要求7所述的系统,其特征在于,所述训练模型具体用于:
通过Spark Mllib基于所述训练数据训练得到第一随机森林模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810115903.2A CN108040076A (zh) | 2018-02-06 | 2018-02-06 | 基于Spark Streaming的DNS水刑攻击处理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810115903.2A CN108040076A (zh) | 2018-02-06 | 2018-02-06 | 基于Spark Streaming的DNS水刑攻击处理方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108040076A true CN108040076A (zh) | 2018-05-15 |
Family
ID=62097316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810115903.2A Pending CN108040076A (zh) | 2018-02-06 | 2018-02-06 | 基于Spark Streaming的DNS水刑攻击处理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108040076A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109165334A (zh) * | 2018-09-20 | 2019-01-08 | 恒安嘉新(北京)科技股份公司 | 一种建立cdn厂家基础知识库的方法 |
CN110704206A (zh) * | 2019-09-09 | 2020-01-17 | 上海凯京信达科技集团有限公司 | 一种实时计算方法、计算机存储介质及电子设备 |
CN110868382A (zh) * | 2018-12-21 | 2020-03-06 | 哈尔滨安天科技集团股份有限公司 | 一种基于决策树的网络威胁评估方法、装置及存储介质 |
CN111698260A (zh) * | 2020-06-23 | 2020-09-22 | 上海观安信息技术股份有限公司 | 一种基于报文分析的dns劫持检测方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105656886A (zh) * | 2015-12-29 | 2016-06-08 | 北京邮电大学 | 一种基于机器学习的网站攻击行为的检测方法及装置 |
CN105915555A (zh) * | 2016-06-29 | 2016-08-31 | 北京奇虎科技有限公司 | 网络异常行为的检测方法及系统 |
CN106230819A (zh) * | 2016-07-31 | 2016-12-14 | 上海交通大学 | 一种基于流采样的DDoS检测方法 |
CN107404473A (zh) * | 2017-06-06 | 2017-11-28 | 西安电子科技大学 | 基于Mshield机器学习多模式Web应用防护方法 |
CN107483458A (zh) * | 2017-08-29 | 2017-12-15 | 杭州迪普科技股份有限公司 | 网络攻击的识别方法及装置、计算机可读存储介质 |
-
2018
- 2018-02-06 CN CN201810115903.2A patent/CN108040076A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105656886A (zh) * | 2015-12-29 | 2016-06-08 | 北京邮电大学 | 一种基于机器学习的网站攻击行为的检测方法及装置 |
CN105915555A (zh) * | 2016-06-29 | 2016-08-31 | 北京奇虎科技有限公司 | 网络异常行为的检测方法及系统 |
CN106230819A (zh) * | 2016-07-31 | 2016-12-14 | 上海交通大学 | 一种基于流采样的DDoS检测方法 |
CN107404473A (zh) * | 2017-06-06 | 2017-11-28 | 西安电子科技大学 | 基于Mshield机器学习多模式Web应用防护方法 |
CN107483458A (zh) * | 2017-08-29 | 2017-12-15 | 杭州迪普科技股份有限公司 | 网络攻击的识别方法及装置、计算机可读存储介质 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109165334A (zh) * | 2018-09-20 | 2019-01-08 | 恒安嘉新(北京)科技股份公司 | 一种建立cdn厂家基础知识库的方法 |
CN109165334B (zh) * | 2018-09-20 | 2022-05-27 | 恒安嘉新(北京)科技股份公司 | 一种建立cdn厂家基础知识库的方法 |
CN110868382A (zh) * | 2018-12-21 | 2020-03-06 | 哈尔滨安天科技集团股份有限公司 | 一种基于决策树的网络威胁评估方法、装置及存储介质 |
CN110704206A (zh) * | 2019-09-09 | 2020-01-17 | 上海凯京信达科技集团有限公司 | 一种实时计算方法、计算机存储介质及电子设备 |
CN110704206B (zh) * | 2019-09-09 | 2022-09-27 | 上海斑马来拉物流科技有限公司 | 一种实时计算方法、计算机存储介质及电子设备 |
CN111698260A (zh) * | 2020-06-23 | 2020-09-22 | 上海观安信息技术股份有限公司 | 一种基于报文分析的dns劫持检测方法及系统 |
CN111698260B (zh) * | 2020-06-23 | 2022-10-11 | 上海观安信息技术股份有限公司 | 一种基于报文分析的dns劫持检测方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108040076A (zh) | 基于Spark Streaming的DNS水刑攻击处理方法及系统 | |
US8935383B2 (en) | Systems, apparatus, and methods for network data analysis | |
CN104065644B (zh) | 基于日志分析的cc攻击识别方法和设备 | |
Lippmann et al. | Analysis and results of the 1999 DARPA off-line intrusion detection evaluation | |
CN109474575B (zh) | 一种dns隧道的检测方法及装置 | |
CN106101104A (zh) | 一种基于域名解析的恶意域名检测方法及系统 | |
CN101924757B (zh) | 追溯僵尸网络的方法和系统 | |
CN103297433B (zh) | 基于网络数据流的http僵尸网络检测方法及系统 | |
CN107404465A (zh) | 网络数据分析方法及服务器 | |
CN107888607A (zh) | 一种网络威胁检测方法、装置及网络管理设备 | |
CN109756512A (zh) | 一种流量应用识别方法、装置、设备及存储介质 | |
CN108111466A (zh) | 一种攻击检测方法及装置 | |
JP2009539271A (ja) | コンピュータ・ネットワーク侵入検出のシステムおよび方法 | |
CN106357685A (zh) | 一种防御分布式拒绝服务攻击的方法及装置 | |
CN111726364B (zh) | 一种主机入侵防范方法、系统及相关装置 | |
CN111654487B (zh) | 一种基于旁路网络全流量与行为特征dga域名识别方法 | |
JP2004030286A (ja) | 侵入検知システムおよび侵入検知プログラム | |
CN108270722A (zh) | 一种攻击行为检测方法和装置 | |
US20210360013A1 (en) | Detection method for malicious domain name in domain name system and detection device | |
KR101538374B1 (ko) | 사이버 위협 사전 예측 장치 및 방법 | |
CN106790073B (zh) | 一种Web服务器恶意攻击的阻断方法、装置及防火墙 | |
KR20140070075A (ko) | 불법 접속 탐지 및 처리 시스템, 장치, 방법 및 컴퓨터 판독 가능한 기록 매체 | |
CN104486320A (zh) | 基于蜜网技术的内网敏感信息泄露取证系统及方法 | |
CN109120733B (zh) | 一种利用dns进行通信的检测方法 | |
CN105978904A (zh) | 一种入侵检测方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180515 |
|
RJ01 | Rejection of invention patent application after publication |