DGA域名检测模型构建方法、装置、服务器及存储介质制造方法及图纸

技术编号:20978482 阅读:26 留言:0更新日期:2019-04-29 18:41
本申请公开了一种DGA域名检测模型构建方法、装置、服务器及存储介质,该方法包括获取训练数据集,该训练数据集中包括DGA域名及合法域名;将该训练数据集分成多个训练数据子集,每个该训练数据子集包括至少一个该DGA域名及至少一个该合法域名;利用分类算法对每个该训练数据子集进行训练,得到多个检测子模型;将测试样本依次输入每个该检测子模型中,得到该测试样本的预测标签集合;根据决策策略对该预测标签集合进行融合,得到该测试样本的最终标签。本申请实施例提供的DGA域名检测模型构建方法,通过对训练数据集的分组,得到多个检测子模型,实现了对训练数据集的完整学习,体现了实际DGA域名的特性。

DGA Domain Name Detection Model Construction Method, Device, Server and Storage Media

This application discloses a DGA domain name detection model construction method, device, server and storage medium. The method includes acquiring training data set, which includes DGA domain name and legal domain name; dividing the training data set into several training data subsets, each of which includes at least one DGA domain name and at least one legal domain name; and using classification calculation. Each training data subset is trained to obtain multiple detection sub-models; the test samples are input into each detection sub-model in turn, and the prediction label set of the test samples is obtained; the prediction label set is fused according to the decision-making strategy, and the final label of the test samples is obtained. The DGA domain name detection model construction method provided by the application embodiment obtains multiple detection sub-models by grouping training data sets, realizes the complete learning of training data sets, and embodies the characteristics of actual DGA domain names.

【技术实现步骤摘要】
DGA域名检测模型构建方法、装置、服务器及存储介质
本申请一般涉及计算机
,具体涉及一种DGA域名检测模型构建方法、装置、服务器及存储介质。
技术介绍
域名生成算法(Domaingenerationalgorihms,DGA)域名是一种通过算法自动生成的随机域名。恶意软件或潜伏的攻击程序常常通过DGA域名与外界的控制服务器建立网络连接,根据攻击者下发的指令,执行数据盗取等网络攻击。因此,DGA域名检测对于发现潜伏的攻击具有重要的意义。目前,在DGA域名检测中,通常采用机器学习算法对获取的域名的结构特征进行训练,得到一个DGA检测模型,进而通过训练得到DGA检测模型对DGA域名进行检测。在采用机器学习算法对域名的结构特征进行训练的过程中,得到的单个DGA域名检测模型无法完全学习到DGA域名的所有特征,导致得到的DGA域名检测模型无法充分体现实际DGA域名的特性,使得DGA域名检测模型的准确性低。
技术实现思路
鉴于现有技术中的上述缺陷或不足,期望提供一种DGA域名检测模型构建方法、装置、服务器及存储介质,以解决单个DGA域名检测模型无法充分体现实际DGA域名的特性的问题。第一方面,本申请实施例提供一种DGA域名检测模型构建方法,该方法包括:获取训练数据集,该训练数据集中包括DGA域名及合法域名;将该训练数据集分成多个训练数据子集,每个该训练数据子集包括至少一个该DGA域名及至少一个该合法域名;利用分类算法对每个该训练数据子集进行训练,得到多个检测子模型;将测试样本依次输入每个该检测子模型中,得到该测试样本的预测标签集合;根据决策策略对该预测结果标签进行融合,得到该测试样本的最终标签。第二方面,本申请实施例提供的一种DGA域名检测模型构建装置,该装置包括:获取模块,用于获取训练数据集,该训练数据集中包括DGA域名及合法域名;分组模块,用于将该训练数据集分成多个训练数据子集,每个该训练数据子集包括至少一个该DGA域名及至少一个该合法域名;训练模块,用于利用分类算法对每个该训练数据子集进行训练,得到多个检测子模型;测试模块,用于将测试样本依次输入每个该检测子模型中,得到该测试样本的预测标签集合;融合模块,用于根据决策策略对该预测标签集合进行融合,得到该测试样本的最终标签。第三方面,本申请提供一种服务器,该服务器包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行该程序时实现如第一方面所述的DGA域名检测模型构建方法。第四方面,本申请提供一种计算机存储介质,该计算机程序用于实现如第一方面所述的DGA域名检测模型构建方法。综上,本申请实施例提供的DGA域名检测模型构建方法、装置、服务器及存储介质,将获取的包括DGA域名及合法域名的训练数据集分成多个训练数据子集,并对每个训练数据子集进行训练,得到多个检测子模型,进而可以将测试样本输入到每个检测子模型中,通过对预测标签集合进行融合得到测试样本的最终标签,以对得到的检测模型的进行评估,通过对训练数据集的划分和训练,得到多个检测子模型,实现了对训练数据集的完整学习,体现了实际DGA域名的特性。进一步的,本申请实施例提供的DGA域名检测模型构建方法,通过使得每个训练数据子集中的DGA域名和合法域名的数量相等,避免了训练数据集中样本不均衡,提高了检测模型的预测性能。进一步的,本申请实施例提供的DGA域名检测模型构建方法,通过计算预测标签为DGA域名的次数占预测标签集合中预测标签总数的比值,实现了预测结果集合的融合。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1为本申请的实施例提供的DGA域名检测模型构建方法的流程示意图;图2为本申请实施例提供的检测子模型构建的原理示意图;图3为本申请实施例提供的检测模型测试的原理示意图;图4为本申请实施例提供的DGA域名检测模型构建装置的结构示意图;图5为本申请的实施例的服务器的计算机系统的结构示意图。具体实施方式下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关申请,而非对该申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与申请相关的部分。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。可以理解,域名就是一串用点分隔的名字组成的互联网上某一台计算机或计算机组的名称。合法域名就是按照一定的命名规则,并通过注册申请的字符串。DGA域名就是攻击者利用DGA生成用作域名的伪随机字符串,以有效避开黑名单列表的检测。图1所示为本申请的实施例提供的DGA域名检测模型构建方法的流程示意图。如图1所示,该方法包括:S1,获取训练数据集,该训练数据集中包括DGA域名及合法域名。具体的,可以获取已知的DGA域名及合法域名,构造训练数据集。例如,合法域名可以为通过开源渠道获取的域名。如Alexa网址排名的白名单、站长之家等获取的合法域名。例如,DGA域名可以为通过开源渠道获取的恶意域名,如安全联盟网站曝光公布的恶意网址、金山网盾公布的恶意网址数据库等恶意域名列表。可以理解,对于得到的所有域名,可以分成训练数据集和测试数据集两个部分。该训练数据集用于输入到分类算法中进行训练,得到检测模型。该测试数据集包括多个测试样本,用于对得到的检测模型进行评估,以防止检测模型过拟合或欠拟合。S2,将该训练数据集分成多个训练数据子集,每个该训练数据子集包括至少一个该DGA域名及至少一个该合法域名。具体的,可以将获取的包括一个或多个DGA域名及合法域名的训练数据集分成多个训练数据子集,使得每个训练数据子集中至少包括一个DGA域名及至少一个该合法域名。优选的,考虑实际中,已知的DGA域名的样本数量比合法域名的样本数量少很多,使得训练数据集中样本的不均衡,进而导致得到的检测模型的预测性能低。在本申请的优选实施例中,为了使得每个训练数据子集中的样本分布均衡,可以使得每个训练数据子集中的DGA域名与合法域名的数量相等。S3,利用分类算法对每个该训练数据子集进行训练,得到多个检测子模型。具体的,在得到多个训练数据子集后,可以利用分类算法对每个训练数据子集进行训练,得到对应的检测子模型。例如,可以利用逻辑回归算法或者决策树算法对每个训练数据子集进行训练,以得到对应的多个检测子模型。S4,将测试样本依次输入每个该检测子模型中,得到该测试样本的预测标签集合。具体的,在得到多个检测子模型后,可以进一步利用测试数据集中的测试样本对得到的检测模型进行评估,以防止检测模型过拟合或欠拟合。可以将测试样本依次输入到每个检测子模型中,从而可以得到每个检测子模型对应的该测试样本的测试标签集合。可以理解,该测试标签集合中包括每个检测子模型对应的测试样本的预测标签。每个预测标签表示该测试样本的标签为DGA域名或合法域名。例如,在实际测试过程中,可以设置每个检测子模型的预测标签的输出为0或1,且可以设置输出为1表示当前的测试样本标签为DGA域名,输出0表示当前的测试样本的标签为合法域名。可以理解,上述结果表示只是示例性的说明,本申请对此不做限制。S5,根据决策策略对该预测标签本文档来自技高网...

【技术保护点】
1.一种域名生成算法DGA域名检测模型构建方法,其特征在于,包括:获取训练数据集,所述训练数据集中包括DGA域名及合法域名;将所述训练数据集分成多个训练数据子集,每个所述训练数据子集包括至少一个所述DGA域名及至少一个所述合法域名;利用分类算法对每个所述训练数据子集进行训练,得到多个检测子模型;将测试样本依次输入每个所述检测子模型中,得到所述测试样本的预测标签集合;根据决策策略对所述预测标签集合进行融合,得到所述测试样本的最终标签。

【技术特征摘要】
1.一种域名生成算法DGA域名检测模型构建方法,其特征在于,包括:获取训练数据集,所述训练数据集中包括DGA域名及合法域名;将所述训练数据集分成多个训练数据子集,每个所述训练数据子集包括至少一个所述DGA域名及至少一个所述合法域名;利用分类算法对每个所述训练数据子集进行训练,得到多个检测子模型;将测试样本依次输入每个所述检测子模型中,得到所述测试样本的预测标签集合;根据决策策略对所述预测标签集合进行融合,得到所述测试样本的最终标签。2.根据权利要求1所述的DGA域名检测模型构建方法,其特征在于,所述训练数据子集中所述DGA域名的数量与所述合法域名的数量相等。3.根据权利要求1所述的DGA域名检测模型构建方法,其特征在于,所述根据决策策略对所述预测标签集合进行融合,得到所述测试样本的最终标签包括:统计所述预测标签集合中预测标签为DGA域名的个数;计算所述个数占所述预测标签集合中预测标签总数的比值;将所述比值与预设的阈值进行比较,如果大于所述阈值,则表示所述测试样本的最终标签为DGA域名;否则,为合法域名。4.根据权利要求1-3任一项所述的DGA域名检测模型构建方法,其特征在于,所述预测标签集合包括用于表示所述测试样本的标签为DGA域名和/或,用于表示所述测试样本的标签为合法域名的标签。5.一种DGA域名检测模型构建装置,其特征在于,包括:获取模块,用于获取训练数据集,所述训练数据集中包括DGA域名及合法域名;分组模块,用于将所述训练数据集分成多个训练数据子集,每个所述训练数据子集包括至少一...

【专利技术属性】
技术研发人员:张振海胡泽柱
申请(专利权)人:顺丰科技有限公司
类型:发明
国别省市:广东,44

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

1