一种域名筛选方法、系统、装置及计算机可读存储介质与流程

文档序号:29228305发布日期:2022-03-12 13:22阅读:86来源:国知局
一种域名筛选方法、系统、装置及计算机可读存储介质与流程

1.本发明涉及互联网技术领域,特别涉及一种域名筛选方法、系统、装置及计算机可读存储介质。


背景技术:

2.当前很多网站存在着泛解析的情况,或因业务需求,或因黑灰产流量作弊等原因不同。泛解析域名实际上多个对应到最终的业务系统,仅仅为一个。进行有效筛选和梳理,有助于摸清楚企业域名资产信息,也有助于对域名的信誉、安全风险等情况进行快速研判。
3.泛解析技术:在泛解析的根域名前添加任何子域名前缀,均可访问到相同的web地址。例如,根域名abc.com之下所设的*.abc.com(*指域名可用的任意字符串,eg:dbapse2332dwf.abc.com)全部都解析到同一个ip地址。
4.泛解析的意义:泛解析的意义在于,防止用户输错域名前缀时,还能跳转至域名首页,比如jd.com的域名。访问任意不存在的域名,都会跳转至”https://www.jd.com/error2.aspx”这样的话,还可以提升jd访问流量,指引用户访问正确的系统。另外一个意义是像网易博客这类型的网站,提供一个子域名给所有网易博客的注册用户使用,方便互联网用户记住博客地址。比如sfswfefsf.blog.163.com和wsdfwwwsblog.blog.163.com都是解析至同一个ip地址。
5.泛解析域名的危害:泛解析的技术理念,是为了方便开展业务,但随着网络安全的发展,泛解析也带来了一些挑战。一方面泛解析给安全管理工作,增加了难度,安全管理人员很难掌握有效的互联网域名资产。另外一方面泛解析技术也会被黑灰产技术利用,用于进行搜索引擎收录作弊。
6.泛解析的技术理念,是为了方便开展业务,但随着网络安全的发展,泛解析也带来了一些挑战。一方面泛解析给安全管理工作,增加了难度,安全管理人员很难掌握有效的互联网域名资产。如果直接对全量域名进行搜索。另外一方面泛解析技术也会被黑灰产技术利用,用于进行搜索引擎收录作弊。
7.所以无论是要解决内部安全管理,还是要监控被滥用的情况,都需要梳理清楚,开启泛解析场景下的,有效域名资产清单。
8.当前识别泛解析域名的技术,主要有两种,一种是基于泛解析域名之后的网站页面访问相似度来判断的,判断当前域名是否和一个不存在的域名,页面相似度。另外一种是收集大量数据,然后使用机器学习算法对多个维度进行综合训练,使用模型来预测新的数据。
9.这两种技术都涉及到大量的数据计算,包括网络io请求或大数据量dns特征提取、模型训练预测。所以效率和性能都不高。
10.为此,需要一种能够效率更高、更为简易的域名筛选方法。


技术实现要素:

11.有鉴于此,本发明的目的在于提供一种域名筛选方法、系统、装置及计算机可读存储介质,效率更高、更为简易。其具体方案如下:
12.一种域名筛选方法,包括:
13.接收1级域名;
14.从指定的dns服务器中获取预设时间范围内的dns解析日志;
15.利用所述dns解析日志得到所有所述1级域名下的所有域名;
16.从所有域名中去除满足预设异常条件的异常域名,得到有效域名。
17.可选的,所述利用所述dns解析日志得到所有所述1级域名下的所有域名的过程,包括:
18.利用所述dns解析日志,按照预设的时间窗口,统计每个时间窗口内出现的不同域名的数量;
19.按照时间窗口和域名等级,得到包括所有所述1级域名下的所有域名的走势表格。
20.可选的,所述从所有域名中去除满足预设条件的异常域名,得到有效域名的过程,包括:
21.判断各域名等级的域名是否开启泛解析;
22.利用所述走势表格,去除开启泛解析的域名等级中满足预设筛选条件的时间窗口下的所有域名;
23.其中,所述筛选条件为单位时间窗口内域名数量超过预设数量阈值。
24.可选的,还包括:
25.统计所有有效域名的cname解析信息,若指向同一个cname的域名数超过预设指向阈值,则从多个指向同一个cname的域名中,仅筛选出一个域名保留。
26.本发明还公开了一种域名筛选系统,包括:
27.域名接收模块,用于接收1级域名;
28.dns日志获取模块,用于从指定的dns服务器中获取预设时间范围内的dns解析日志;
29.dns解析模块,用于利用所述dns解析日志得到所有所述1级域名下的所有域名;
30.域名筛选模块,用于从所有域名中去除满足预设异常条件的异常域名,得到有效域名。
31.可选的,所述dns解析模块,包括:
32.数量统计单元,用于利用所述dns解析日志,按照预设的时间窗口,统计每个时间窗口内出现的不同域名的数量;
33.表格制作单元,用于按照时间窗口和域名等级,得到包括所有所述1级域名下的所有域名的走势表格。
34.可选的,所述域名筛选模块,包括:
35.泛解析判断单元,用于判断各域名等级的域名是否开启泛解析;
36.域名筛选单元,用于利用所述走势表格,去除开启泛解析的域名等级中满足预设筛选条件的时间窗口下的所有域名;
37.其中,所述筛选条件为单位时间窗口内域名数量超过预设数量阈值。
38.可选的,还包括:
39.cname筛选模块,用于统计所有有效域名的cname解析信息,若指向同一个cname的域名数超过预设指向阈值,则从多个指向同一个cname的域名中,仅筛选出一个域名保留。
40.本发明还公开了一种域名筛选装置,包括:
41.存储器,用于存储计算机程序;
42.处理器,用于执行所述计算机程序以实现如前述的域名筛选方法。
43.本发明还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前述的域名筛选方法。
44.本发明中,域名筛选方法,包括:接收1级域名;从指定的dns服务器中获取预设时间范围内的dns解析日志;利用dns解析日志得到所有1级域名下的所有域名;从所有域名中去除满足预设异常条件的异常域名,得到有效域名。
45.本发明优化数据来源,从权威度高、可信度高、被大量使用具备代表性的指定的dns服务器获取dns解析日志,在保证数据来源的丰富度的同时,提高数据来源的可信度,并且只获取预设时间范围内的数据,精简数据量,同时也确保了获取到的域名大概率是经常使用的,提高了数据的有效度,从数据来源进行了优化,减少了需要分析的数据量,提高了数据的有效率,从而提高了后续分析与筛选的效率。
附图说明
46.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
47.图1为本发明实施例公开的一种域名筛选方法流程示意图;
48.图2为本发明实施例公开的另一种域名筛选方法流程示意图;
49.图3为本发明实施例公开的一种域名筛选系统结构示意图。
具体实施方式
50.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
51.本发明实施例公开了一种域名筛选方法,参见图1所示,该方法包括:
52.s11:接收1级域名。
53.具体的,接收用户输入的需要进行筛选的1级域名,以便后续基于1级域名判断其下各个域名。
54.s12:从指定的dns服务器中获取预设时间范围内的dns解析日志。
55.具体的,由于为了减少域名统计时间,减少获取的数据量,不从海量数据中筛选,而是选择从预先指定的dns服务器中dns解析日志,dns服务器的选择可以优先选择权威度高、可信度高、被大量使用具备代表性的dns服务器,因为,这样的dns服务器其中包括的域
名信息有效率高,无用域名少,域名被污染的可能性小,大概率获取的域名信息均为有效的域名,同时也能够保证域名的丰富度,优化了数据来源。
56.进一步的,在指定可靠的dns服务器后,进一步减少数据量,可以只获取一定时间范围内的dns解析日志,例如,只获取7天内的dns解析日志,因为,有效的域名通常会被反复使用,通过设置时间范围相当于筛选了具备一定使用频次的域名,使用频次过低的域名可能就不会在预设时间范围内被抽取到,只有具备一定使用率的域名才能够被获取到,因此,在减少数据量的同时,还起到了一定的数据筛选作用,再次使得获取的数据有效率更高,优化了数据来源。
57.s13:利用dns解析日志得到所有1级域名下的所有域名。
58.具体的,基于上述获取到的dns解析日志,从中得到1级域名下的所有域名,以便后续进行筛选。
59.s14:从所有域名中去除满足预设异常条件的异常域名,得到有效域名。
60.具体的,预先设定筛选条件,例如,利用预设的算法,根据使用频率、域名的特征信息、置信度、异常极值等判断条件进行筛选,去除满足预设异常条件的异常域名,进而得到有效域名,从而完成对1级域名下的各级域名的筛选整理,最终得到全部有效域名。
61.可见,本发明实施例优化数据来源,从权威度高、可信度高、被大量使用具备代表性的指定的dns服务器获取dns解析日志,在保证数据来源的丰富度的同时,提高数据来源的可信度,并且只获取预设时间范围内的数据,精简数据量,同时也确保了获取到的域名大概率是经常使用的,提高了数据的有效度,从数据来源进行了优化,减少了需要分析的数据量,提高了数据的有效率,从而提高了后续分析与筛选的效率。
62.本发明实施例公开了一种具体的域名筛选方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。参见图2所示,具体的:
63.s21:接收1级域名;
64.s22:从指定的dns服务器中获取预设时间范围内的dns解析日志;
65.s23:利用dns解析日志,按照预设的时间窗口,统计每个时间窗口内出现的不同域名的数量。
66.具体的,在获取到dns解析日志后,设置时间窗口以便于按照时间顺序展示域名出现情况,使统计出的数据具备时间维度,提供额外维度作为参考,例如,以一天为一个时间窗口,时间范围是7天,那么就可以分别得到7天中每天出现的不同域名的数量,例如表1所示。
67.表1
[0068][0069]
可以理解的是,一个域名在一个时间窗口可能会被多次访问,在此不统计重复访问的次数,只显示一个时间窗口内不同的域名,在不同的时间窗口一个域名可以多次出现。
[0070]
s24:按照时间窗口和域名等级,得到包括所有1级域名下的所有域名的走势表格。
[0071]
具体的,在统计不同时间窗口下的域名数量后,再按照时间窗口和域名等级进行排序,按照时间顺序排序,按照域名等级进行分类,最终得到包括所有1级域名下的所有域名的走势表格,例如,表2所示。
[0072]
表2
[0073][0074][0075]
s25:从所有域名中去除满足预设异常条件的异常域名,得到有效域名。
[0076]
例如,基于上述表2所示,利用预设的异常条件筛选后,可以得到筛选后的表3。
[0077]
表3
[0078][0079]
可见,进行筛选以及去除不同时间窗口之间产生的重复域名后,表3中所剩域名相对于表2明显减少。
[0080]
进一步的,异常条件可以包括多种条件和多种方法,可以采用一种或多种方法进行复合筛选,其中,在某一级域名开启泛解析的情况下,其下一级域名可能会存在大量短时间内暴力枚举出的新的无效泛解析域名,这些域名都指向同一个上一级域名,因此,为无效域名,为此,针对此种特殊情况进行单独筛选,具体过程如s251至s252;其中,
[0081]
s251:判断各域名等级的域名是否开启泛解析。
[0082]
具体的,首先判断各域名等级下的域名是否开启泛解析,可以通过随机构造两个待判断的域名的下一级的域名,判断构造出的两个域名最终指向的地址是否为同一域名,如果是,则说明开启,如果指向地址不同则说明未开启,例如,输入域名为www.test.com该域名为2级域名,对应1级域名为test.com,连续构造2个随机域名,并且解析a记录ip地址如表4所示。
[0083]
表4
[0084]
2级随机域名a记录解析结果db6444ca5355c4df0fbba07fa2c9455b.test.com8.8.8.822e312e73a28aab32d569ae9cb43bc31.test.com1.1.1.1
[0085]
可见,根据结果不相同,判定2级域名未开启根域解析。类似的多级域名的泛解析状态,也是通过获取上一级域名,例如,4级获取3级、3级获取2级,然后构造随机域名,查看解析是否相同。
[0086]
其中,3级域名如表5所示。
[0087]
表5
[0088]
3级随机域名3级域名db6444ca5355c4df0fbba07fa2c9455b.blog.test.comblog.test.com
22e312e73a28aab32d569ae9cb43bc31.blog.test.comblog.test.com
[0089]
s252:利用走势表格,去除开启泛解析的域名等级中满足预设筛选条件的时间窗口下的所有域名;其中,筛选条件为单位时间窗口内域名数量超过预设数量阈值。
[0090]
具体的,由于在最初获取的是指定dns服务器上的dns解析日志,所以可以确保解析出的域名都是新的,因此,短时间内有大量域名请求产生,则可以判定为无效泛解析域名,因此,一旦开启泛解析的域名等级中某个时间窗口内的域名数量超出了预设的筛选条件设置的阈值,则说明该窗口内大概率的域名均是无效的泛解析域名,因此,可以去除掉该时间窗口,不记录该时间窗口内的域名。
[0091]
例如,基于上述表3中记载,3级域名是2级域名的泛解析域名,其中,时间窗口20210624与20210626相对于其它时间窗口产生了大量的域名,可以去除开启泛解析域名的3级域名中域名最多的前30%的时间窗口,即2个最多的窗口,因此,可以去除时间窗口20210624与20210626期间记载的域名,得到表6。此外,也可以通过数据正态分布置信区间等不同的数学处理方式来筛选,本发明实施例仅是提供了个别筛选方式的举例,并不限制具体的筛选方法。
[0092]
表6
[0093][0094]
s26:统计所有有效域名的cname解析信息,若指向同一个cname的域名数超过预设指向阈值,则从多个指向同一个cname的域名中,仅筛选出一个域名保留。
[0095]
具体的,在得到有效域名后,还可以继续进行cname解析,以便进一步优化域名,统计所有有效域名的cname解析信息,得到每个有效域名的cname解析值,根据cname解析值判断多个域名所指向的实际域名是否一致,若指向同一个cname的域名数超过预设指向阈值,则从多个指向同一个cname的域名中,仅筛选出一个域名保留,舍弃其它多余的域名,优化域名数量。
[0096]
例如,表7所示,其中,admin.test.com等域名无cname则不用进行筛选判定,而表7中例如,chengdu.quyu.test.com和nanjing.quyu.test.com等6个域名的cname解析值相同,6个域名均是指向ngx-fan-v6.op.test.com,超过预设的指向阈值5,因此,可以仅保留
其中一个域名,可以随机挑选,也可以默认表格中第一个域名等方式挑选,例如,可以仅保留chengdu.quyu.test.com。
[0097]
表7
[0098]
域名cname解析值admin.test.comn/alogin.test.comn/aadmin4.test.comn/alogin3.test.comn/aadmin1.test.comn/alogin2.test.comn/achengdu.quyu.test.comngx-fan-v6.op.test.comnanjing.quyu.test.comngx-fan-v6.op.test.comchangsha.quyu.test.comngx-fan-v6.op.test.comhangzhou.quyu.test.comngx-fan-v6.op.test.combeijing.quyu.test.comngx-fan-v6.op.test.comshanghai.quyu.test.comngx-fan-v6.op.test.com
[0099]
具体的,最终进行完所有筛选后可以得到有效清单地址,例如,基于上述表7中的有效域名,最终得到如下几个域名地址作为最后的有效域名。
[0100]
admin.test.com
[0101]
login.test.com
[0102]
admin4.test.com
[0103]
login3.test.com
[0104]
admin1.test.com
[0105]
login2.test.com
[0106]
chengdu.quyu.test.com
[0107]
相应的,本发明实施例还公开了一种域名筛选系统,参见图3所示,该系统包括:
[0108]
域名接收模块11,用于接收1级域名;
[0109]
dns日志获取模块12,用于从指定的dns服务器中获取预设时间范围内的dns解析日志;
[0110]
dns解析模块13,用于利用dns解析日志得到所有1级域名下的所有域名;
[0111]
域名筛选模块14,用于从所有域名中去除满足预设异常条件的异常域名,得到有效域名。
[0112]
可见,本发明实施例优化数据来源,从权威度高、可信度高、被大量使用具备代表性的指定的dns服务器获取dns解析日志,在保证数据来源的丰富度的同时,提高数据来源的可信度,并且只获取预设时间范围内的数据,精简数据量,同时也确保了获取到的域名大概率是经常使用的,提高了数据的有效度,从数据来源进行了优化,减少了需要分析的数据量,提高了数据的有效率,从而提高了后续分析与筛选的效率。
[0113]
具体的,dns解析模块13,可以包括:数量统计单元和表格制作单元;其中,
[0114]
数量统计单元,用于利用dns解析日志,按照预设的时间窗口,统计每个时间窗口
内出现的不同域名的数量;
[0115]
表格制作单元,用于按照时间窗口和域名等级,得到包括所有1级域名下的所有域名的走势表格。
[0116]
具体的,域名筛选模块14,可以包括:泛解析判断单元和域名筛选单元;其中,
[0117]
泛解析判断单元,用于判断各域名等级的域名是否开启泛解析;
[0118]
域名筛选单元,用于利用走势表格,去除开启泛解析的域名等级中满足预设筛选条件的时间窗口下的所有域名;
[0119]
其中,筛选条件为单位时间窗口内域名数量超过预设数量阈值。
[0120]
具体的,还可以包括:cname筛选模块;其中,
[0121]
cname筛选模块,用于统计所有有效域名的cname解析信息,若指向同一个cname的域名数超过预设指向阈值,则从多个指向同一个cname的域名中,仅筛选出一个域名保留。
[0122]
此外,本发明实施例还公开了一种域名筛选装置,包括:
[0123]
存储器,用于存储计算机程序;
[0124]
处理器,用于执行计算机程序以实现如前述的域名筛选方法。
[0125]
另外,本发明实施例还公开了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如前述的域名筛选方法。
[0126]
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0127]
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0128]
以上对本发明所提供的技术内容进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1