域名检测方法、装置及通信系统制造方法及图纸

技术编号:32202446 阅读:16 留言:0更新日期:2022-02-09 17:07
本申请公开了一种域名检测方法、装置及通信系统,属于互联网技术领域。所述方法包括:从域名中确定多个域名段;在确定该多个域名段中存在异常的域名段后,将该域名确定为恶意域名。本申请能够提高恶意域名的识别准确性。本申请用于恶意域名的识别。申请用于恶意域名的识别。申请用于恶意域名的识别。

【技术实现步骤摘要】
域名检测方法、装置及通信系统


[0001]本申请涉及互联网
,特别涉及一种域名检测方法、装置及通信系统。

技术介绍

[0002]恶意域名,是黑客在网络攻击时,生成的非法域名。基于该恶意域名,黑客所控制的主控机与安装有恶意软件的僵尸机建立直接或间接的通信连接。安全设备通过识别恶意域名,可以降低主控机与僵尸机建立连接的概率,从而降低僵尸机被控制的概率。
[0003]目前,安全设备在获取域名后,将获取的域名输入机器学习模型,由机器学习模型识别输入的域名是否为恶意域名。
[0004]但是,目前的机器学习模型对恶意域名的识别准确性较低。

技术实现思路

[0005]本申请实施例提供了一种域名检测方法、装置及通信系统。该技术方案如下:
[0006]第一方面,提供了一种域名检测方法,该方法包括:
[0007]从域名中确定多个域名段;
[0008]在确定该多个域名段中存在异常的域名段后,将该域名确定为恶意域名。
[0009]本申请实施例提供的域名检测方法,通过从域名中获取多个域名段,通过检测域名段是否为异常域名段来确定域名是否为恶意域名,相对于相关技术,不再采用域名整体作为识别单位,以域名段为异常识别单位,降低了各个域名段相互之间的干扰,提高了恶意域名的识别准确性。
[0010]可选地,该方法还包括:在该域名段满足预设规则时,确定该域名段为异常的域名段;其中,该预设规则为如下三种规则中的任一种或多种:
[0011]第一种规则、基于该域名段通过分类器识别出异常的域名段;示例的,该分类器包括神经网络模型,如循环神经网络(Recurrent Neural Network,RNN)模型、卷积神经网络(Convolutional Neural Networks,CNN)模型和/或长短期记忆(Long Short Term Memory,LSTM)模型等深度学习模型。或者,基于该域名段的特征向量通过分类器识别出异常的域名段。示例的,该分类器包括机器学习模型,如逻辑回归模型,和/或随机森林模型。前述分类器还可以包括其他模型,例如支持向量机(Support Vector Machine,SVM)。
[0012]本申请实施例中分类器通常有至少两个,如此,由至少两个分类器组合得到一个精度更高的分类器,比单一的分类器具有更好的泛化能力,从而更准确适配现网的域名数据,进一步提高确定的异常的域名段的精确度。当分类器有至少两种时,最终的分类结果为至少两种分类器的分类结果的加权和,或加权平均值。例如,该至少两种分类器分别输出包括至少两个分类结果,每个分类结果包括一个分数值,最终的分类结果为至少两个分数值的加权和,或加权平均值。
[0013]其中该特征向量为包括n个特征的n维特征向量,n为正整数,该n个特征包括如下的任一种或多种:域名段包括的连字符在域名段包括的字符中的个数占比;域名段包括的
数字在域名段包括的字符中的个数占比;域名段的长度;域名段包括的字符种类数与域名段的字符总数之比;域名段包括的数字种类数与域名段的字符总数之比;域名段的香农熵;域名段包括的连续重复字母的出现次数与域名段的字符总数之比;域名段包括的元音字母在域名段中的个数占比;域名段包括的数字在域名段包括的字符中的个数占比;域名段包括的连续字母的出现次数x1与第一字符数y1之比,该第一字符数y1为域名段的字符总数y与连续字母的出现次数x1之差;域名段包括的连续辅音字母的出现次数x2与第二字符数y2之比,该第二字符数y2为域名段的字符总数y与连续辅音字母的出现次数x2之差;域名段包括的连续数字的出现次数x3与第三字符数y3之比,该第三字符数y3为域名段的字符总数y与连续数字的出现次数x3之差;域名段中数字和字母切换的次数与域名段的字符总数之比;可读性得分,该可读性得分用于指示域名段的可读性;可靠性得分,该可靠性得分用于指示域名段的可靠性;域名段包括的单词的个数与域名段的字符总数之比;域名段包括的单词数量;二元数据排序特征,该二元数据排序特征为基于域名段包括的多个二元数据按照出现频率排序后的序号确定的特征,该多个二元数据中每个该二元数据由域名段中连续的两个字符组成;三元数据排序特征,该三元数据排序特征为基于域名段包括的多个三元数据按照出现频率排序后的序号确定的特征,该多个三元数据中每个该三元数据由域名段中连续的三个字符组成。
[0014]可选地,该n个特征满足如下的一种或多种:当该n个特征满包括可读性得分时,该可读性得分为采用指定单词库训练得到的马尔科夫模型所输出的域名段对应的得分;当该n个特征满包括可靠性得分时,该可靠性得分为采用域名段正样本集合训练得到的马尔科夫模型所输出的域名段对应的得分;当该n个特征满包括二元数据排序特征时,该二元数据排序特征为基于域名段包括的多个二元数据按照出现频率排序后的序号的中位数、平均值或方差;当该n个特征满包括二元数据排序特征时,该三元数据排序特征为基于域名段包括的多个三元数据按照出现频率排序后的序号的中位数、平均值或方差。
[0015]或者,第二种规则、该域名段包括的元音字母的个数在该域名段包的字符总数的比值小于比值阈值。通过设置该比例阈值,可以有效筛选出随机生成的域名段,从而识别得到异常的域名段。尤其对于基于DGA生成的域名中的域名段的识别准确性较高。
[0016]或者,第三种规则、该域名段包括异常词条。可选地,域名段中的词条可以由艾侯-科拉西克自动机(Aho-Corasick automaton,AC自动机)识别得到。该识别过程包括:基于AC自动机的词库从每个域名段分析出域名段中包括的词条,该AC自动机的词库包括单词、拼音、机构名(和/或组织名、单位名、公司名)或词根中的一种或多种。进一步的,该AC自动机的词库还可以包括其他内容,例如指定网站中的词条。
[0017]示例的,该异常的域名段中的词条的并集所包括的字符数大于字符数量阈值;和/或,该异常词条为在指定时长内,出现的次数大于次数阈值,和/或出现在不同域名段的同一位置的概率大于概率阈值的词条。示例的,该指定时长可以为1至7天,例如5天。
[0018]本申请实施例中,将指定时长内出现的次数大于次数阈值的词条确定为异常词条,可以针对基于单词型DGA所生成的域名的生成原理,将在指定时长内多次出现的词条确定为异常词条,从而准确识别得到异常词条。
[0019]本申请实施例中,将出现在不同域名段的同一位置的概率大于概率阈值的词条确定为异常词条,可以针对基于混淆型DGA所生成的域名的生成原理,将指定时长内经常出现
在域名段同一位置的词条确定为异常词条,从而准确识别得到异常词条。
[0020]在本申请实施例中,可以通过构建词条对应的二元组(tuple)来确定异常词条。示例的,该过程包括:为第一域名集合中每个域名中每个词条构建一个二元组,该二元组包括对应词条包括的字符串(即词条的内容)以及对应词条在所在域名段包括的词条中出现的次序。可选地,该次序可以由序号表示。当第一域名集合中某一词条w本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种域名检测方法,其特征在于,所述方法包括:从域名中确定多个域名段;在确定所述多个域名段中存在异常的域名段后,将所述域名确定为恶意域名。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:在所述域名段满足预设规则时,确定所述域名段为异常的域名段;其中,所述预设规则为如下任一种或多种:基于所述域名段或者所述域名段的特征向量通过分类器识别出异常的域名段;或者,所述域名段包括的元音字母的个数在所述域名段包的字符总数的比值小于比值阈值;或者,所述域名段包括异常词条。3.根据权利要求2所述的方法,其特征在于,所述特征向量为包括n个特征的n维特征向量,n为正整数,所述n个特征包括如下的任一种或多种:域名段包括的连字符在域名段包括的字符中的个数占比;域名段包括的数字在域名段包括的字符中的个数占比;域名段的长度;域名段包括的字符种类数与域名段的字符总数之比;域名段包括的数字种类数与域名段的字符总数之比;域名段的香农熵;域名段包括的连续重复字母的出现次数与域名段的字符总数之比;域名段包括的元音字母在域名段中的个数占比;域名段包括的数字在域名段包括的字符中的个数占比;域名段包括的连续字母的出现次数x1与第一字符数y1之比,所述第一字符数y1为域名段的字符总数y与连续字母的出现次数x1之差;域名段包括的连续辅音字母的出现次数x2与第二字符数y2之比,所述第二字符数y2为域名段的字符总数y与连续辅音字母的出现次数x2之差;域名段包括的连续数字的出现次数x3与第三字符数y3之比,所述第三字符数y3为域名段的字符总数y与连续数字的出现次数x3之差;域名段中数字和字母切换的次数与域名段的字符总数之比;可读性得分,所述可读性得分用于指示域名段的可读性;可靠性得分,所述可靠性得分用于指示域名段的可靠性;域名段包括的单词的个数与域名段的字符总数之比;域名段包括的单词数量;二元数据排序特征,所述二元数据排序特征为基于域名段包括的多个二元数据按照出现频率排序后的序号确定的特征,所述多个二元数据中每个所述二元数据由域名段中连续的两个字符组成;三元数据排序特征,所述三元数据排序特征为基于域名段包括的多个三元数据按照出现频率排序后的序号确定的特征,所述多个三元数据中每个所述三元数据由域名段中连续的三个字符组成。4.根据权利要求3所述的方法,其特征在于,所述n个特征满足如下的一种或多种:
当所述n个特征满包括可读性得分时,所述可读性得分为采用指定单词库训练得到的马尔科夫模型所输出的域名段对应的得分;当所述n个特征满包括可靠性得分时,所述可靠性得分为采用域名段正样本集合训练得到的马尔科夫模型所输出的域名段对应的得分;当所述n个特征满包括二元数据排序特征时,所述二元数据排序特征为基于域名段包括的多个二元数据按照出现频率排序后的序号的中位数、平均值或方差;当所述n个特征满包括二元数据排序特征时,所述三元数据排序特征为基于域名段包括的多个三元数据按照出现频率排序后的序号的中位数、平均值或方差。5.根据权利要求2至4任一所述的方法,其特征在于,所述分类器包括如下的一种或多种:逻辑回归模型;或者,随机森林模型;或者,长短期记忆LSTM模型。6.根据权利要求2至5任一所述的方法,其特征在于,所述异常的域名段中的词条的并集所包括的字符数大于字符数量阈值;和/或,所述异常词条为在指定时长内,出现的次数大于次数阈值,和/或出现在不同域名段的同一位置的概率大于概率阈值的词条。7.根据权利要求2至6任一所述的方法,其特征在于,所述方法还包括:基于AC自动机的词库从所述每个域名段分析出所述域名段中包括的词条,所述AC自动机的词库包括单词、拼音、机构名或词根中的一种或多种。8.根据权利要求1至7任一所述的方法,其特征在于,所述方法还包括:在确定所述域名中的指定位置的域名段属于与所述指定位置对应的域名段集合后,删除所述多个域名段中的所述指定位置的域名段,来得到更新后的多个域名段,所述域名段集合包括一个或多个域名段。9.根据权利要求8所述的方法,其特征在于,所述在确定所述域名中的指定位置的域名段属于与所述指定位置对应的域名段集合时后,删除所述多个域名段中的所述指定位置的域名段,来得到更新后的多个域名段,包括:在确定所述域名中的第一个域名段属于包括“www”的域名段集合后,删除所述多个域名段中的第一个域名段,来得到更新后的多个域名段;和/或,在确定所述域名中的倒数第二个域名段属于顶级域名集合,且所述倒数第二个域名段的字符总数小于第一数量阈值后,删除所述多个域名段中的倒数第二个域名段,来得到更新后的多个域名段,所述顶级域名集合包括一个或多个顶级域名;和/或,在确定所述域名中的最后一个域名段属于顶级域名集合后,删除所述多个域名段中的最后一个域名段,来得到更新后的多个域名段。10.根据权利要求1至9任一所述的方法,其特征在于,所述方法包括:在所述恶意域名被一次或多次访问,输出用于所述访问的互联网协议IP地址。11.根据权利要求1至9任一所述的方法,其特征在于,所述方法包括:输出异常的机构域名或者主机域名,所述机构域名或者所述主机域名为所述恶意域名中的部分字符串或者全部字符串。12.根据权利要求1至11任一所述的方法,其特征在于,所述从域名中确定多个域名段,
包括:对所述域名进行预处理;从预处理后的所述域名中确定所述多个域名段。13.根据权利要求12所述的方法,其特征在于,所述对所述域名进行预处理,包括:检测所述域名中字符的合法性,将字符合法的域名作为预处理后的所述域名;和/或,检测所述域名是否为指定用途的域名,将不是所述指定用途的所述域名作为预处理后的所述域名;和/或,采用所述域名查询字典树,所述字典树基于域名黑名单和/或域名白名单建立,将不包括所述字典树中域名的域名作为预处理后的所述域名。14.根据权利要求1至13任一所述的方法,其特征在于,所述域名为域名系统DNS流量日志中记载的域名。15.根据权利要求1至14任一所述的方法,其特征在于,所述从域名中确定多个域名段,包括:将所述域名按照分隔点划分为所述多个域名段。16.根据权利要求1至15任一所述的方法,其特征在于,所述方法应用于如下的任一种:网络防火墙;或者,主机防火墙;或者,应用服务器的网站应用防护系统WAF;或者,态势感知平台;或者,云WAF。17.一种域名检测装置,其特征在于,所述装置包括:第一确定模块,用于从域名中确定多个域名段;第二确定模块,用于在确定所述多个域名段中存在异常的域名段后,将所述域名确定为恶意域名。18.根据权利要求17所述的装置,其特征在于,所述装置还包括:第三确定模块,用于...

【专利技术属性】
技术研发人员:蒋振超柳敬武吴迪胡景培
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1