CN110099059A - 一种域名识别方法、装置及存储介质 - Google Patents
一种域名识别方法、装置及存储介质 Download PDFInfo
- Publication number
- CN110099059A CN110099059A CN201910373033.3A CN201910373033A CN110099059A CN 110099059 A CN110099059 A CN 110099059A CN 201910373033 A CN201910373033 A CN 201910373033A CN 110099059 A CN110099059 A CN 110099059A
- Authority
- CN
- China
- Prior art keywords
- domain name
- analyzed
- feature
- vector
- feature vector
- 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.)
- Granted
Links
Classifications
-
- 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/30—Managing network names, e.g. use of aliases or nicknames
-
- 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
- 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/1433—Vulnerability analysis
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种域名识别方法、装置及存储介质,本发明实施例通过接收域名识别指令;根据所述域名识别指令获取多个客户端针对待分析域名的访问记录,并根据所述访问记录构建待分析域名对应的特征向量;对所述待分析域名对应的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量;基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后的域名集,根据所述聚类后的域名集对待分析域名进行识别。该方案可以提高域名识别的准确性。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种域名识别方法、装置及存储介质。
背景技术
目前,恶意域名已经成为国内乃至全世界的网络安全领域最为关注的危害之一。恶意域名也叫恶意网站,是指该网站利用浏览器或者应用软件的漏洞,嵌入恶意代码,在用户不知情的情况下,对用户的机器进行篡改或破坏的网站。对于仿冒其他网站比如银行网站、电子商务网站的,虽然未对用户的机器进行篡改或破坏,但是也被定义为恶意域名。
恶意域名能够形成一个庞大的网络体系,通过网络来控制受感染的***,同时不同地造成网络危害,如更快地传播木马蠕虫、短时间内窃取大量敏感信息、抢占***资源进行非法目的牟利、发起大范围的分布式拒绝服务攻击等,给危害追踪和损失抑制带来巨大的麻烦。
传统恶意域名检测主要采用恶意程序逆向分析技术。而逆向分析二进制木马非常耗费时间,并且还需要考虑加壳的情况,使得逆向分析规则的获取依赖于逆向人员,造成逆向分析识别的准确率以及效率不高。
发明内容
本发明实施例提供一种域名识别方法、装置及存储介质,可以提高域名识别的准确性以及效率。
为解决上述技术问题,本发明实施例提供以下技术方案:
接收域名识别指令;
根据所述域名识别指令获取多个客户端针对待分析域名的访问记录,并根据所述访问记录构建待分析域名对应的特征向量;
对所述待分析域名对应的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量;
基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;
基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后的域名集;
根据所述聚类后的域名集对待分析域名进行识别,得到识别结果。
相应的,本发明实施例还提供一种域名识别装置,包括:
接收单元,用于接收域名识别指令;
获取单元,用于根据所述域名识别指令获取多个客户端针对待分析域名的访问记录,并根据所述访问记录构建待分析域名对应的特征向量;
降维单元,用于对所述待分析域名对应的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量;
计算单元,用于基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;
聚类单元,用于基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后的域名集;
识别单元,用于根据所述聚类后的域名集对待分析域名进行识别。
可选的,在一些实施例中,所述降维单元包括确定子单元以及哈希变化子单元:
所述确定子单元,用于确定所述待分析域名对应的特征向量所需的哈希函数;
所述哈希变化子单元,用于基于所述哈希函数对所述待分析域名对应的特征向量进行哈希变化,得到降维后特征向量。
可选的,在一些实施例中,所述哈希变化子单元包括添加模块、初始化模块、对比模块以及降维模块;
所述添加模块,用于根据哈希函数向所述特征向量添加相应的哈希子特征向量;
所述初始化模块,用于将所述哈希子特征向量中的特征值进行初始化,得到初始化哈希特征子向量;
所述对比模块,用于将所述初始化哈希特征子向量与所述待分析域名对应的子特征向量进行对比,得到对比结果;
所述降维模块,用于根据所述对比结果对所述待分析域名对应的子特征向量进行降维,得到降维后特征向量。
可选的,在一些实施例中,所述对比模块包括:对比子模块;
所述对比子模块,用于将所述初始化哈希特征子向量的特征值与所述待分析域名对应的子特征向量特征值进行大小对比,得到对比结果。
可选的,在一些实施例中,所述降维模块包括替换子模块、组合子模块和降维子模块:
所述替换子模块,用于若所述初始化哈希特征子向量的特征值大于所述待分析域名对应的子特征向量特征值,且所述待分析域名对应的子特征向量特征值大于预设值,则将所述初始化哈希特征子向量的特征值进行替换;若所述初始化哈希特征子向量的特征值大于所述待分析域名对应的子特征向量特征值,且所述待分析域名对应的子特征向量特征值等于预设值,则所述初始化哈希特征子向量的特征值保持不变;
所述组合子模块,用于将替换后的哈希特征子向量的特征值与保持不变的哈希特征子向量的特征值进行组合,得到组合哈希特征子向量;
所述降维子模块,用于根据组合哈希特征子向量对所述待分析域名对应的子特征向量进行降维,得到降维后特征向量。
可选的,在一些实施例中,所述装置还包括过滤单元;
所述过滤单元,用于对所述待分析域名对应的特征向量进行过滤处理,获得过滤后特征向量;将过滤后的特征向量作为待分析域名对应的特征向量。
可选的,在一些实施例中,所述计算单元包括第一获取子单元和计算子单元:
所述第一获取子单元,用于获取待分析域名之间的相似度计算系数;获取所述待分析域名对应的降维后特征向量的向量行数;
所述计算子单元,用于根据所述相似度计算系数以及向量行数计算待分析域名之间的相似度。
可选的,在一些实施例中,所述获取单元还包括排序子单元、检测子单元和构建子单元;
所述排序子单元,用于根据排序轨迹对多个客户端进行排序;
所述检测子单元,用于检测排序后客户端对所述待分析域名是否存在访问记录,得到排序后客户端对应的检测结果;
所述构建子单元,用于基于排序后客户端对应的检测结果、客户端的排列顺序,构建待分析域名对应的特征向量。
可选的,在一些实施例中,所述聚类单元包括第一对比子单元和聚类子单元;
所述对比子单元,用于将待分析域名之间的相似度与预设值进行对比;
所述聚类子单元,用于将相似度大于预设值的待分析域名聚类至同一域名集至中,得到聚类后的域名集。
可选的,在一些实施例中,所述识别单元包括提取子单元、第二对比子单元和确定子单元;
所述提取子单元,用于提取目标域名的特征;
所述第二对比子单元,用于将所述目标域名的特征与所述聚类后的域名集中的域名特征进行对比;
所述确定子单元,用于若所述聚类后的域名集中存在与所述目标域名特征一致的域名,则确定所述聚类后的域名集中的域名为目标域名。
可选的,在一些实施例中,所述装置还包括确定单元和发送单元;
所述确定单元,用于若识别所述域名集中的域名为目标域名,则确定所述域名集中域名的访问客户端;
所述发送单元,用于向所述访问客户端发送告警信息。
可选的,在一些实施例中,所述获取单元还包括显示子单元和第二获取子单元;
所述显示子单元,用于显示域名检测页面,所述页面包括域名识别控件;
所述第二获取子单元,用于基于用户针对所述域名识别控件的触发操作,获取多个客户端针对待分析域名的访问记录。
可选的,在一些实施例中,所述装置还包括显示单元;
所述显示单元,用于在所述域名检测页面中显示域名识别结果。
此外,本发明实施例还提供一种存储介质,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本发明实施例提供的任一种域名识别方法中的步骤。
本发明实施例通过接收域名识别指令;根据所述域名识别指令获取多个客户端针对待分析域名的访问记录;根据所述访问记录构建待分析域名对应的特征向量;对构建得到的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量;基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后域名集,即可根据所述聚类后的域名集对待分析域名进行识别;本方案根据相似度将域名聚类到域名集中,根据聚类后的各个类别的域名集再进行识别,由于同一域名集中的域名为相同或相似类别,识别过程中有效避免了出现识别类型错误的情况,提供了域名识别的准确性,并且域名集中的域名为相似或相同类型,不需要对比所有的域名特征即可获得域名的类型,减少了域名的识别时间,提高了域名识别效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本发明实施例提供的域名识别方法的一场景示意图;
图1b是本发明实施例提供的域名识别方法的另一场景示意图;
图2是本发明实施例提供的域名识别方法的流程图;
图3是本发明实施例提供的域名识别方法的域名检测页面的示意图;
图4是本发明实施例提供的域名识别方法的另一流程图;
图5a是本发明实施例提供的服务集群的示意图;
图5b是本发明实施例提供的域名识别方法的架构图;
图6a是本发明实施例提供的域名识别装置的一结构示意图;
图6b是本发明实施例提供的域名识别装置的另一结构示意图;
图6c是本发明实施例提供的域名识别装置的再一结构示意图;
图7是本发明实施例提供的服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种域名识别方法、装置和存储介质。以下分别进行详细说明。
该域名识别装置可以集成在网络设备中,该网络设备可以是服务器,比如云服务器,也可以是终端等设备。
例如,参见图1a,以该域名识别装置具体集成在服务器中为例,首先,客户端中具有域名检测页面,用户可通过点击域名检测页面中的域名识别控件触发域名识别指令,域名识别即可接收用户触发的域名识别指令,然后基于域名识别指令获取客户端对待分析域名的访问记录,具体地,可以获取服务器中所有的客户端对待分析域名的访问记录,也可以获取一定范围内的客户端对待分析域名的访问记录,比如获取客户端对待分析域名的访问记录等,在此不做限定,具体可以根据用户输入的范围进行获取,在用户没有限定时,可以默认获取服务器中的所有客户端对待分析域名的访问记录。然后根据所述访问记录构建待分析域名对应的特征向量,具体首先遍历多个客户端针对待分析域名的访问记录;若客户端对所述待分析域名存在访问记录,则记录为第一元素,比如为1,若不存在,则记录为第二元素,比如为0;然后将记录得到的第一元素以及第二元素根据遍历的顺序进行排列,即可构建得到待分析域名对应的特征向量。然后对构建得到的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量,从而减少待分析域名的数量;然后基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;基于待分析域名之间的相似度对所述待分析域名进行聚类,将相似度高的待分析域名聚类到同一域名集中,得到聚类后域名集,具体聚类过程以及结果如图1b所示,即可根据所述聚类后的域名集对待分析域名进行分类识别,由于本方案是将相似度高的域名聚类在域名集中再进行识别,不需要对每个域名进行识别即可获知域名的类型,从而大大减少了域名识别的数量跟时间,提高了域名识别的效率。并且先域名进行聚类再进行识别,由于聚类在同一域名集中的域名的相似度较高,一般为同类型域名,因此也减少了域名类型识别错误的情况,从而提高了域名识别的准确性。
以下分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
在本实施例中,将从域名识别装置的角度进行描述,该域名识别装置具体可以集成在网络设备如终端或服务器等设备中。
一种域名识别方法,包括:接收域名识别指令;根据所述域名识别指令获取多个客户端针对待分析域名的访问记录;并根据所述访问记录构建待分析域名对应的特征向量;对所述待分析域名对应的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量;基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后域名集,根据所述聚类后的域名集对待分析域名进行识别。
如图2所示,该域名识别装置的具体流程可以如下:
S201,接收域名识别指令;
首先,服务器中具有域名检测页面,域名是由一串用点分隔的名字组成的因特网上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。网域名称***(DNS,Domain Name System,有时也简称为域名)是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网,而不用去记住能够被机器直接读取的IP地址数串,用户可通过点击域名检测页面中的域名识别控件触发域名识别指令,以便服务器接收。
其中,用户也可以设置定时进行域名识别,当用户设置了定时进行域名识别时,在到达用户设置域名识别的时间,即可自动触发域名识别指令,服务器即可接收域名识别指令,不需要用户每次手动进行触发。用户在设置定时进行域名识别之后,也可以手动触发域名识别指令,比如,当存在突发情况,需要进行域名识别,而当前时间不处于用户设置的域名识别时间时,用户可通过手动触发域名识别指令,以便服务器接收,从而进行域名识别。
S202,根据所述域名识别指令获取多个客户端针对待分析域名的访问记录;并根据所述访问记录构建待分析域名对应的特征向量;
服务器接收到域名识别指令之后,即可基于域名识别指令获取客户端对待分析域名的访问记录,客户端即为用户端,是与服务器相对应,为客户提供本地服务的程序。除了一些只在本地运行的应用程序之外,一般安装在普通的客户机上,需要与服务端互相配合运行,较常用的用户端包括了如万维网使用的网页浏览器,收寄电子邮件时的电子邮件客户端,以及即时通讯的客户端软件等。对于这一类应用程序,需要网络中有相应的服务器和服务程序来提供相应的服务,如数据库服务,电子邮件服务等等,这样在客户机和服务器端,需要建立特定的通信连接,来保证应用程序的正常运行。具体地,可以获取服务器中所有的客户端对待分析域名的访问记录,也可以获取一定范围内的客户端对待分析域名的访问记录,比如获取客户端对待分析域名的访问记录等,在此不做限定,具体可以根据用户输入的范围进行获取,在用户没有限定时,可以默认获取服务器中的所有客户端对待分析域名的访问记录。具体地,服务器中的客户端对待分析域名的访问记录,具体可通过待分析域名对访问记录进行提取分析获得,若待分析域名的访问记录中包含服务器中的客户端,则确定被包含的客户端对待分析域名存在访问记录。不被包含的客户端则对待分析域名不存在访问记录。
因此,所述步骤获取多个客户端针对待分析域名的访问记录,包括:
显示域名检测页面,所述页面包括域名识别控件;
基于用户针对所述域名识别控件的触发操作,获取多个客户端针对待分析域名的访问记录。
服务器中设置有域名检测页面,用户可通过固定的接口或者网址查找域名检测页面,用户在触发查找域名检测页面之后,服务器即可根据用户触发的查找域名检测页面指令进行域名检测页面查找,并将查找到的域名检测页面进行显示,其中,如图3所示,所述页面包括域名识别控件,可供用户进行点击或滑动等操作,用户通过点击或触摸域名识别控件即可触发域名识别指令,服务器即可基于用户针对所述域名识别控件触发的触发操作,获取多个客户端针对待分析域名的访问记录。
然后根据所述访问记录构建待分析域名对应的特征向量,具体地,根据排序轨迹对多个客户端进行排序;检测排序后客户端对待分析域名是否存在访问记录,得到排序后客户端对应的检测结果;基于排序后客户端对应的检测结果、客户端的排列顺序,构建待分析域名对应的特征向量。
因此,进一步地,参照图4,所述步骤S202包括:
S401,根据排序轨迹对多个客户端进行排序;
S402,检测排序后客户端对所述待分析域名是否存在访问记录,得到排序后客户端对应的检测结果;
S403,基于排序后客户端对应的检测结果、客户端的排列顺序,构建待分析域名对应的特征向量。
具体地,根据排序轨迹对多个客户端进行排序,具体排序方式为随机排序,只要保证获取客户端对所述待分析域名是否存在访问记录的顺序一致即可,检测排序后客户端对所述待分析域名是否存在访问记录,得到排序后客户端对应的检测结果,具体地,可以通过具体的元素,记录客户端的访问记录,比如,若客户端对所述待分析域名存在访问记录,则记录为第一元素,若不存在,则记录为第二元素,具体地,所述第一元素可以定义为1,第二元素可以定义为0,然后将记录得到的第一元素以及第二元素根据客户端的排列顺序进行排列,构建得到待分析域名对应的特征向量,比如多个客户端中第一个获取到的客户端对待分析域名存在访问记录,则定义为1,第二个获取到的客户端对待分析域名存在访问记录,则定义为1,第三个获取到的客户端对待分析域名不存在访问记录,则定义为0,则待分析域名的特征向量为(1,1,0);若在另一待分析域名中,多个客户端中第一个获取到的客户端对待分析域名不存在访问记录,则定义为0,第二个获取到的客户端对待分析域名不存在访问记录,则定义为0,第三个获取到的客户端对待分析域名存在访问记录,则定义为1,则待分析域名的特征向量为(0,0,1),因此可以理解的是,客户端具有多个,同时待分析域名也具有多个,因此可具体根据多个客户端对各个待分析域名的访问记录,一一进行定义,构建得到各个待分析域名的特征向量。
S203,对所述待分析域名对应的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量;
进一步地,在获得待分析域名对应的特征向量之后,可以首先对待分析域名对应的特征向量进行特征降维处理,以便减少待分析域名的计算量。
具体地,对所述待分析域名对应的特征向量进行特征降维处理可以包括:
确定所述待分析域名对应的特征向量所需的哈希函数;
基于所述哈希函数对所述待分析域名对应的特征向量进行哈希变化,得到降维后特征向量。
具体地,由于需要对待分析域名对应的特征向量进行多次行打乱,则为了模拟进行行打乱的效果,确定选用n个随机哈希函数h1,h2,h3…hn,基于所述哈希函数对所述待分析域名对应的特征向量进行哈希变化,得到降维后特征向量,具体哈希变化过程包括:
根据哈希函数向所述特征向量添加相应的哈希子特征向量;
将所述哈希子特征向量中的特征值进行初始化,得到初始化哈希特征子向量;
将所述初始化哈希特征子向量与所述待分析域名对应的子特征向量进行对比,得到对比结果;
根据所述对比结果对所述待分析域名对应的子特征向量进行降维,得到降维后特征向量。
即根据哈希函数向所述特征向量添加相应的哈希子特征向量,例如,假设待分析域名的特征向量各行为a,b,c,d,e,a(1,0,0,1),b(0,0,1,0),c(0,1,0,1),d(1,0,1,1),e(0,0,1,0),将abcde换成对应的行号,在后面加上两个哈希函数,其中h1(x)=(x+1)mod 5,h2(x)=(3*x+1)mod 5,注意这里x指的是行号。
S1 | S2 | S3 | S4 | h1 | h2 | |
0 | 1 | 0 | 0 | 1 | 1 | 1 |
1 | 0 | 0 | 1 | 0 | 2 | 4 |
2 | 0 | 1 | 0 | 1 | 3 | 2 |
3 | 1 | 0 | 1 | 1 | 4 | 0 |
4 | 0 | 0 | 1 | 0 | 0 | 3 |
将所述哈希子特征向量中的特征值进行初始化,得到初始化哈希特征子向量,具体处理过程为令SIG(i,c)表示第i个哈希函数在第c列上的元素。开始时,将所有的SIG(i,c)初始化为Inf(无穷大),即全部初始化为Inf:
S1 | S2 | S3 | S4 | |
h1 | Inf | Inf | Inf | Inf |
h2 | Inf | Inf | Inf | Inf |
进一步地,根据所述对比结果对所述待分析域名对应的子特征向量进行降维,得到降维后特征向量,包括:
若所述初始化哈希特征子向量的特征值大于所述待分析域名对应的子特征向量特征值,且所述待分析域名对应的子特征向量特征值大于预设值,则将所述初始化哈希特征子向量的特征值进行替换;
若所述初始化哈希特征子向量的特征值大于所述待分析域名对应的子特征向量特征值,且所述待分析域名对应的子特征向量特征值等于预设值,则所述初始化哈希特征子向量的特征值保持不变;
将替换后的哈希特征子向量的特征值与保持不变的哈希特征子向量的特征值进行组合,得到组合哈希特征子向量;
根据组合哈希特征子向量对所述待分析域名对应的子特征向量进行降维,得到降维后特征向量。
将所述初始化哈希特征子向量与所述待分析域名对应的子特征向量进行对比,得到对比结果,计算h1(r),h2(r)…hn(r);对于每一列c,如果c所在的第r行为0,则不进行处理;如果c所在的第r行为1,则对于每个i=1,2…n,将SIG(i,c)置为原来的SIG(i,c)和hi(r)之间的最小值。接下来计算签名矩阵,接着看特征向量中的第0行;这时S2和S3的值为0,所以无需改动;S1和S4的值为1,需改动。h1=1,h2=1。1比Inf小,所以需把S1和S4这两个位置对应的值替换掉,即将所述初始化哈希特征子向量的特征值与所述待分析域名对应的子特征向量特征值进行大小对比,得到对比结果,替换后效果如下:
S1 | S2 | S3 | S4 | |
h1 | 1 | Inf | Inf | 1 |
h2 | 1 | Inf | Inf | 1 |
接着看特征向量中的第1行;只有S3的值为1;此时h1=2,h2=4;对S3那一列进行替换,得到:
S1 | S2 | S3 | S4 | |
h1 | 1 | Inf | 2 | 1 |
h2 | 1 | Inf | 4 | 1 |
接着看特征向量中的第2行;S2和S4的值为1;h1=3,h2=2;因为特征向量中S4那一列的两个值都为1,比3和2小,所以只需替换S2那一列:
S1 | S2 | S3 | S4 | |
h1 | 1 | 3 | 2 | 1 |
h2 | 1 | 2 | 4 | 1 |
接着看特征向量中的第3行;S1,S3和S4的值都为1,h1=4,h2=0;替换后效果如下:
S1 | S2 | S3 | S4 | |
h1 | 1 | 3 | 2 | 1 |
h2 | 0 | 2 | 0 | 0 |
接着看特征向量中的第4行;S3值为1,h1=0,h2=3,最终效果如下:
S1 | S2 | S3 | S4 | |
h1 | 1 | 3 | 0 | 1 |
h2 | 0 | 2 | 0 | 0 |
这样,所有的行都被遍历一次了,最终得到的签名矩阵如下:
S1 | S2 | S3 | S4 | |
h1 | 1 | 3 | 0 | 1 |
h2 | 0 | 2 | 0 | 0 |
根据对比结果对所述待分析域名对应的子特征向量进行降维,最后S1的签名矩阵为(1,0),原本特征向量为(1,0,0,1,0),缩短了长度,S2为(3,2),S3为(0,0),S4为(1,0),得到降维后特征向量,明显可以看出,待分析域名的特征向量都缩短了长度,从而减少了计算待分析域名之间的相似度的计算量,因此将最后进行哈希变换之后的签名矩阵作为待分析域名对应的降维后特征向量。
在对待分析域名进行降维处理之前,为了减少待分析域名的分析数量,可以先对待分析域名进行过滤,具体地:
对所述待分析域名对应的特征向量进行过滤处理,获得过滤后特征向量;
将过滤后的特征向量作为待分析域名对应的特征向量。
对所述待分析域名对应的特征向量进行过滤处理,获得过滤处理后的待分析域名对应的特征向量。
具体实施过程中,过滤处理可以包括对待分析域名中的通用域名、内部使用的域名等进行过滤,以及对已确定的恶意团伙的域名进行过滤,具体可以包括:
(1)首先获取已确定的通用域名,即基本上每个客户端都会访问的域名,比如Alexa排名前10000的域名,比如Google.com(谷歌,搜索引擎)的域名等,以及通用的CDN(Content Delivery Network,内容分发网络)域名,然后将待分析域名与获取到的已确定的通用域名,以及通用的CDN进行对比,若存在与已确定的通用域名,或者通用的CDN一致的域名,则将与已确定的通用域名,或者通用的CDN一致的域名以及对应的特征向量从待分析域名列表中移除,即确定与已确定的通用域名,或者通用的CDN一致的域名为正常或通用的域名,不需要再进行分析,从而减少待分析域名的计算量。
(2)在移除待分析域名中的通用域名或者通用的CDN之后,进一步获取白名单以及黑名单中的域名。首先获取白名单中的域名,其中,白名单中的域名可以包括内部通用的域名,用于测试的域名等,然后将待分析域名与白名单中的域名进行对比,若存在与白名单中的域名一直的待分析域名,则说明一致的待分析域名为已确定的内部域名,或者进行测试的域名,则同样将与白名单中的域名一致的待分析域名以及对应的特征向量从待分析域名列表中移除,从而进一步减少待分析域名的计算量。进一步地,获取黑名单中的域名,其中黑名单中的域名包括已确定的恶意域名,比如恶意团伙的域名等,然后将待分析域名与黑名单中的域名进行对比,若存在与黑名单中的域名一致的域名,则确定一致的待分析域名为恶意域名,则首先将与黑名单中的域名一致的待分析域名从待分析域名列表中移除,从而进一步减少待分析域名的计算量。然后获取与黑名单中的域名一致的待分析域名的客户端访问记录,并提取存在访问与黑名单中的域名一致的待分析域名的客户端,然后提取预设的警告信息,并将所述警告信息发送至存在访问与黑名单中的域名一致的待分析域名的客户端,从而提醒用户,提醒其可能遭受攻击或被入侵,以便用户及时进行防范。
然后将移除与已确定的通用域名,或者通用的CDN一致的域名、白名单中的域名以及黑名单中的域名之后的待分析域名中的域名,以及对应的特征向量,作为过滤后的待分析域名对应的特征向量。
S404,基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;
在将待分析域名的特征向量进行降维之后,即可根据待分析域名对应的降维后的特征向量计算待分析域名之间的相似度。
进一步地,所述步骤S404包括:
获取待分析域名之间的相似度计算系数;
获取所述待分析域名对应的降维后特征向量的向量行数;
根据所述相似度计算系数以及向量行数计算待分析域名之间的相似度。
具体地,将待分析域名对应的降维后特征向量划分成预设个行条(band),每个行条由对应的行组成。对于每个行条,存在一个哈希函数能够将行条中的对应的行数量个整数组成的列向量(行条中的每一列)映射到某个域名集中。可以对所有行条使用相同的哈希函数,但是对于每个行条都使用一个独立的域名集数组,因此即便是不同行条中的相同列向量,也不会被哈希到同一个域名集中。这样,只要两个特征向量在某个行条中有落在相同域名集的两列,这两个特征向量就被认为可能相似度比较高,作为后续计算的候选对;然后获取待分析域名之间的相似度计算系数;其中待分析域名之间的相似度计算系数为固定预设值的Jaccard(杰卡德系数),比如0.4;获取所述待分析域名对应的降维后特征向量的向量行数;即划分成预设个行条(band)的行数,即可根据所述相似度计算系数以及向量行数计算待分析域名之间的相似度。具体计算公式为P=1-(1-rC)B,其中P代表待分析域名之间的相似度,C即为行数量,r为相似度计算系数,B为选取的域名集的数量,将获取到的值代入公式中,比如假设相似度计算系数为0.3,C为3,域名集B为100,则P=1-(1-0.43)100=0.998,即待分析域名之间的相似度为0.998。
S405,基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后域名集,根据所述聚类后的域名集对待分析域名进行识别。
在计算得到待分析域名之间的相似度之后,将相似度大于预设值的待分析域名划分到同一个域名集中,即划分至同一域名集中,得到聚类后域名集。
具体地,基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后域名集,包括:
将待分析域名之间的相似度与预设值进行对比;
将相似度大于预设值的待分析域名聚类至同一域名集中,得到聚类后的域名集。
具体可以将待分析域名之间的相似度与预设值进行对比,若待分析域名之间的相似度大于预设值,则将待分析域名聚类至同一域名集中,依次进行聚类,直至将所有的待分析域名聚类完成,即可得到聚类后域名集。需要说明的是,为了减少后续域名识别的数量,以及提高域名识别的准确性,设置的相似度对比的预设值为较大的值,比如大于0.9小于等于1等。
然后根据所述聚类后的域名集对待分析域名进行识别,由于聚类后的域名集中的域名相似度较高,进行部分识别域名集中的待分析域名,即可获知剩下的待分析域名的类型。因此具体的识别过程为,部分识别域名集中的待分析域名,获得部分待分析域名的类型,若识别的部分待分析域名的类型一致,则可将部分待分析域名的类型作为剩下的未识别的待分析域名的类型。若识别的部分待分析域名的类型不一致,则可提高识别的待分析域名的数量,从而提高识别的准确性,并将识别的待分析域名中,占比超过预设比例的待分析域名的类型作为剩下未识别的待分析域名的类型。
具体地,根据所述聚类后的域名集对待分析域名进行识别,可以包括:
提取目标域名的特征;
将所述目标域名的特征与所述聚类后的域名集中的域名特征进行对比;
若所述聚类后的域名集中存在与所述目标域名特征一致的域名,则确定所述聚类后的域名集中的域名为目标域名。
具体域名识别过程中,可以提取目标域名的特征,并将所述目标域名的特征与所述聚类后域名集中的域名进行对比,由于同一域名集中的域名的类型的相似度较高,或者为类型一致,因此,将域名集中的部分域名与目标域名的特征进行对比即可,从而减少了对比的数量,缩短对比时间,从而提高对比效率。需要说明的说,提取的目标域名的特征,可以为恶意团伙的域名的特征,若所述聚类后域名集中的域名存在与所述目标域名的特征一致的域名,则确定所述聚类后域名集中的域名为目标域名,比如恶意团伙的域名。进一步地,由于部分恶意的域名爆发的时间较短,可能存在还没获得域名特征的情况,此时可以通过人工进行筛选,判断域名集中是否存在恶意域名。
更进一步地,在基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后域名集,根据所述聚类后的域名集对待分析域名进行识别的步骤之后,还包括:
若识别所述域名集中的域名为目标域名,则确定所述域名集中域名的访问客户端;
向所述访问客户端发送告警信息。
若确定某一域名集中的域名为目标域名,为了防止访问过域名集中的域名的客户端受到攻击,则需要确定所述域名集中域名的访问客户端,向所述访问客户端发送告警信息,具体可以提取预设的告警信息,并将所述告警信息发送至存在访问所述域名集中的域名的客户端,或者实时生成告警信息,并将生成的告警信息发送至访问客户端,从而提醒用户,提醒其可能遭受攻击或被入侵,以便用户及时进行防范。
本实施例提出的域名识别方法,通过接收域名识别指令;根据所述域名识别指令获取多个客户端针对待分析域名的访问记录;根据所述访问记录构建待分析域名对应的特征向量;对构建得到的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量;基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后域名集,即可根据所述聚类后的域名集对待分析域名进行识别;本方案根据相似度将域名聚类到域名集中,根据聚类后的各个类别的域名集再进行识别,由于同一域名集中的域名为相同或相似类别,识别过程中有效避免了出现识别类型错误的情况,提供了域名识别的准确性,并且域名集中的域名为相似或相同类型,不需要对比所有的域名特征即可获得域名的类型,减少了域名的识别时间,提高了域名识别效率。
根据前面实施例所描述的方法,以下将举例作进一步详细说明。
在本实施例中,将以该域名识别装置具体集成在云服务器中为例进行说明。其中,该云服务器可以包括多种类型的服务器,每种类型的服务器的数量可以根据具体应用场景而定,而且,这些服务器可以部署在不同的地域或机房,或使用不同的网络供应商。服务器包括用户输入层以及域名识别层。不同的层次可以采用不同类型的服务器来实现。例如,如图5a所示,以包括至少一个输入服务器、至少一个域名识别服务器为例,其中,各种类型的服务器的功能可以如下:
(1)输入服务器;
输入服务器主要承担“接入层”功能,用于连通客户端与服务器集群之间的通信,比如参照图5a。
例如,如图5a所示,输入服务器(即接入层)具体可以接收客户端发送的各类请求,如域名识别请求等,并将接收到的各类请求传送给域名识别服务器(即域名识别层),比如,将域名识别请求发送给域名识别服务器,在接收到域名识别服务器返回的告警信息时,将告警信息发送给客户端。
(2)域名识别服务器;
域名识别服务器主要承担域名识别功能,用于连通客户端与服务器集群之间的通信,例如,域名识别服务器具体可以接收输入服务器发送的各类请求,如域名识别请求等,并根据接收到的请求进行执行对应的操作,比如若接收到的请求为域名识别请求时,根据域名识别请求进行域名识别。并在识别出目标域名时,发送告警信息给输入服务器。
如图5b所示,一种域名识别方法,具体流程可以如下:
S501,输入服务器输入域名识别指令,并向域名识别服务器发送域名识别指令;
输入服务器中具有域名检测页面,用户可通过固定的接口或者网址查找域名检测页面,用户在触发查找域名检测页面之后,服务器即可根据用户触发的查找域名检测页面指令进行域名检测页面查找,并将查找到的域名检测页面进行显示,其中,如图3所示,所述页面包括域名识别控件,可供用户点击,用户通过点击域名识别控件即可触发域名识别指令,输入服务器即可获得用户输入的域名识别指令,然后将接收到的域名识别指令,向域名识别服务器发送。其中,用户也可以设置定时进行域名识别,当用户设置了定时进行域名识别时,在到达用户设置域名识别的时间,即可自动触发域名识别指令,输入服务器即可接收域名识别指令,不需要用户每次手动进行触发。用户在设置定时进行域名识别之后,也可以手动触发域名识别指令,比如,当存在突发情况,需要进行域名识别,而当前时间不处于用户设置的域名识别时间时,用户可通过手动触发域名识别指令,以便输入服务器接收。
S502,域名识别服务器接收输入服务器发送的域名识别指令;
在输入服务器发送域名识别指令之后,域名识别服务器接收输入服务器发送的域名识别指令。进一步地,也可以在域名识别服务器中设置定时进行域名识别,当用户设置了定时进行域名识别时,在到达用户设置域名识别的时间,即可自动触发域名识别指令,域名识别服务器即可接收域名识别指令,不需要用户每次手动进行触发。用户在设置定时进行域名识别之后,也可以手动触发域名识别指令,比如,当存在突发情况,需要进行域名识别,而当前时间不处于用户设置的域名识别时间时,用户可通过手动触发域名识别指令,以便域名识别服务器接收,从而不需要接收输入服务器发送的域名识别指令。
S503,域名识别服务器根据所述域名识别指令获取多个客户端针对待分析域名的访问记录;并根据所述访问记录构建待分析域名对应的特征向量;
域名识别服务器接收到域名识别指令之后,即可基于域名识别指令获取客户端对待分析域名的访问记录,客户端即为用户端,是与服务器相对应,为客户提供本地服务的程序。除了一些只在本地运行的应用程序之外,一般安装在普通的客户机上,需要与服务端互相配合运行,较常用的用户端包括了如万维网使用的网页浏览器,收寄电子邮件时的电子邮件客户端,以及即时通讯的客户端软件等。对于这一类应用程序,需要网络中有相应的服务器和服务程序来提供相应的服务,如数据库服务,电子邮件服务等等,这样在客户机和服务器端,需要建立特定的通信连接,来保证应用程序的正常运行。具体地,可以获取服务器中所有的客户端对待分析域名的访问记录,也可以获取一定范围内的客户端对待分析域名的访问记录,比如获取客户端对待分析域名的访问记录等,在此不做限定,具体可以根据用户输入的范围进行获取,在用户没有限定时,可以默认获取服务器中的所有客户端对待分析域名的访问记录。具体地,服务器中的客户端对待分析域名的访问记录,具体可通过待分析域名对访问记录进行提取分析获得,若待分析域名的访问记录中包含服务器中的客户端,则确定被包含的客户端对待分析域名存在访问记录。不被包含的客户端则对待分析域名不存在访问记录。
然后根据所述访问记录构建待分析域名对应的特征向量,具体地,可以根据客户端是否存在访问记录,若存在访问记录,则定义为第一元素,若不存在访问记录,则定义为第二元素,然后按照获取的客户端的访问记录的顺序,将各个定义的元素进行排列,作为待分析域名的特征向量的元素,即可获得待分析域名对应的特征向量。
S504,域名识别服务器对所述待分析域名对应的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量;
进一步地,在获得待分析域名对应的特征向量之后,可以首先对待分析域名对应的特征向量进行特征降维处理,以便减少待分析域名的计算量。
具体地,对所述待分析域名对应的特征向量进行特征降维处理可以包括:
确定所述待分析域名对应的特征向量所需的哈希函数;
基于所述哈希函数对所述待分析域名对应的特征向量进行哈希变化,得到降维后特征向量。
具体地,由于需要对待分析域名对应的特征向量进行多次行打乱,则为了模拟进行行打乱的效果,确定选用n个随机哈希函数h1,h2,h3…hn,基于所述哈希函数对所述待分析域名对应的特征向量进行哈希变化,得到降维后特征向量,具体哈希变化过程包括:
根据哈希函数向所述特征向量添加相应的哈希子特征向量;
将所述哈希子特征向量中的特征值进行初始化,得到初始化哈希特征子向量;
将所述初始化哈希特征子向量与所述待分析域名对应的子特征向量进行对比,得到对比结果;
根据所述对比结果对所述待分析域名对应的子特征向量进行降维,得到降维后特征向量。
即根据哈希函数向所述特征向量添加相应的哈希子特征向量,例如,假设待分析域名的特征向量各行为a,b,c,d,e,a(1,0,0,1),b(0,0,1,0),c(0,1,0,1),d(1,0,1,1),e(0,0,1,0),将abcde换成对应的行号,在后面加上两个哈希函数,其中h1(x)=(x+1)mod 5,h2(x)=(3*x+1)mod 5,注意这里x指的是行号。
S1 | S2 | S3 | S4 | h1 | h2 | |
0 | 1 | 0 | 0 | 1 | 1 | 1 |
1 | 0 | 0 | 1 | 0 | 2 | 4 |
2 | 0 | 1 | 0 | 1 | 3 | 2 |
3 | 1 | 0 | 1 | 1 | 4 | 0 |
4 | 0 | 0 | 1 | 0 | 0 | 3 |
将所述哈希子特征向量中的特征值进行初始化,得到初始化哈希特征子向量,具体处理过程为令SIG(i,c)表示第i个哈希函数在第c列上的元素。开始时,将所有的SIG(i,c)初始化为Inf(无穷大),即全部初始化为Inf:
S1 | S2 | S3 | S4 | |
h1 | Inf | Inf | Inf | Inf |
h2 | Inf | Inf | Inf | Inf |
进一步地,根据所述对比结果对所述待分析域名对应的子特征向量进行降维,得到降维后特征向量,包括:
若所述初始化哈希特征子向量的特征值大于所述待分析域名对应的子特征向量特征值,且所述待分析域名对应的子特征向量特征值大于预设值,则将所述初始化哈希特征子向量的特征值进行替换;
若所述初始化哈希特征子向量的特征值大于所述待分析域名对应的子特征向量特征值,且所述待分析域名对应的子特征向量特征值等于预设值,则所述初始化哈希特征子向量的特征值保持不变;
将替换后的哈希特征子向量的特征值与保持不变的哈希特征子向量的特征值进行组合,得到组合哈希特征子向量;
根据组合哈希特征子向量对所述待分析域名对应的子特征向量进行降维,得到降维后特征向量。
将所述初始化哈希特征子向量与所述待分析域名对应的子特征向量进行对比,得到对比结果,计算h1(r),h2(r)…hn(r);对于每一列c,如果c所在的第r行为0,则不进行处理;如果c所在的第r行为1,则对于每个i=1,2…n,将SIG(i,c)置为原来的SIG(i,c)和hi(r)之间的最小值。接下来计算签名矩阵,接着看特征向量中的第0行;这时S2和S3的值为0,所以无需改动;S1和S4的值为1,需改动。h1=1,h2=1。1比Inf小,所以需把S1和S4这两个位置对应的值替换掉,即将所述初始化哈希特征子向量的特征值与所述待分析域名对应的子特征向量特征值进行大小对比,得到对比结果,替换后效果如下:
S1 | S2 | S3 | S4 | |
h1 | 1 | Inf | Inf | 1 |
h2 | 1 | Inf | Inf | 1 |
接着看特征向量中的第1行;只有S3的值为1;此时h1=2,h2=4;对S3那一列进行替换,得到:
S1 | S2 | S3 | S4 | |
h1 | 1 | Inf | 2 | 1 |
h2 | 1 | Inf | 4 | 1 |
接着看特征向量中的第2行;S2和S4的值为1;h1=3,h2=2;因为特征向量中S4那一列的两个值都为1,比3和2小,所以只需替换S2那一列:
S1 | S2 | S3 | S4 | |
h1 | 1 | 3 | 2 | 1 |
h2 | 1 | 2 | 4 | 1 |
接着看特征向量中的第3行;S1,S3和S4的值都为1,h1=4,h2=0;替换后效果如下:
S1 | S2 | S3 | S4 | |
h1 | 1 | 3 | 2 | 1 |
h2 | 0 | 2 | 0 | 0 |
接着看特征向量中的第4行;S3值为1,h1=0,h2=3,最终效果如下:
S1 | S2 | S3 | S4 | |
h1 | 1 | 3 | 0 | 1 |
h2 | 0 | 2 | 0 | 0 |
这样,所有的行都被遍历一次了,最终得到的签名矩阵如下:
S1 | S2 | S3 | S4 | |
h1 | 1 | 3 | 0 | 1 |
h2 | 0 | 2 | 0 | 0 |
根据对比结果对所述待分析域名对应的子特征向量进行降维,最后S1的签名矩阵为(1,0),原本特征向量为(1,0,0,1,0),缩短了长度,S2为(3,2),S3为(0,0),S4为(1,0),得到降维后特征向量,明显可以看出,待分析域名的特征向量都缩短了长度,从而减少了计算待分析域名之间的相似度的计算量,因此将最后进行哈希变换之后的签名矩阵作为待分析域名对应的降维后特征向量。
在对待分析域名进行降维处理之前,为了减少待分析域名的分析数量,可以先对待分析域名进行过滤,具体地:
对所述待分析域名对应的特征向量进行过滤处理,获得过滤后特征向量;
将过滤后的特征向量作为待分析域名对应的特征向量。
对所述待分析域名对应的特征向量进行过滤处理,获得过滤处理后的待分析域名对应的特征向量。
具体实施过程中,过滤处理可以包括对待分析域名中的通用域名、内部使用的域名等进行过滤,以及对已确定的恶意团伙的域名进行过滤,具体可以包括:
(1)首先获取已确定的通用域名,即基本上每个客户端都会访问的域名,比如Alexa排名前10000的域名,比如Google.com(谷歌,搜索引擎)的域名等,以及通用的CDN(Content Delivery Network,内容分发网络)域名,然后将待分析域名与获取到的已确定的通用域名,以及通用的CDN进行对比,若存在与已确定的通用域名,或者通用的CDN一致的域名,则将与已确定的通用域名,或者通用的CDN一致的域名以及对应的特征向量从待分析域名列表中移除,即确定与已确定的通用域名,或者通用的CDN一致的域名为正常或通用的域名,不需要再进行分析,从而减少待分析域名的计算量。
(2)在移除待分析域名中的通用域名或者通用的CDN之后,进一步获取白名单以及黑名单中的域名。首先获取白名单中的域名,其中,白名单中的域名可以包括内部通用的域名,用于测试的域名等,然后将待分析域名与白名单中的域名进行对比,若存在与白名单中的域名一直的待分析域名,则说明一致的待分析域名为已确定的内部域名,或者进行测试的域名,则同样将与白名单中的域名一致的待分析域名以及对应的特征向量从待分析域名列表中移除,从而进一步减少待分析域名的计算量。进一步地,获取黑名单中的域名,其中黑名单中的域名包括已确定的恶意域名,比如恶意团伙的域名等,然后将待分析域名与黑名单中的域名进行对比,若存在与黑名单中的域名一致的域名,则确定一致的待分析域名为恶意域名,则首先将与黑名单中的域名一致的待分析域名从待分析域名列表中移除,从而进一步减少待分析域名的计算量。然后获取与黑名单中的域名一致的待分析域名的客户端访问记录,并提取存在访问与黑名单中的域名一致的待分析域名的客户端,然后提取预设的警告信息,并将所述警告信息发送至存在访问与黑名单中的域名一致的待分析域名的客户端,从而提醒用户,提醒其可能遭受攻击或被入侵,以便用户及时进行防范。
然后将移除与已确定的通用域名,或者通用的CDN一致的域名、白名单中的域名以及黑名单中的域名之后的待分析域名中的域名,以及对应的特征向量,作为过滤后的待分析域名对应的特征向量。
S505,域名识别服务器基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;
在将待分析域名的特征向量进行降维之后,即可根据待分析域名对应的降维后的特征向量计算待分析域名之间的相似度。
具体计算过程包括:
获取待分析域名之间的相似度计算系数;
获取所述待分析域名对应的降维后特征向量的向量行数;
根据所述相似度计算系数以及向量行数计算待分析域名之间的相似度。
具体地,将待分析域名对应的降维后特征向量划分成预设个行条(band),每个行条由对应的行组成。对于每个行条,存在一个哈希函数能够将行条中的对应的行数量个整数组成的列向量(行条中的每一列)映射到某个域名集中。可以对所有行条使用相同的哈希函数,但是对于每个行条都使用一个独立的域名集数组,因此即便是不同行条中的相同列向量,也不会被哈希到同一个域名集中。这样,只要两个特征向量在某个行条中有落在相同域名集的两列,这两个特征向量就被认为可能相似度比较高,作为后续计算的候选对;然后获取待分析域名之间的相似度计算系数;其中待分析域名之间的相似度计算系数为固定预设值的Jaccard(杰卡德系数),比如0.4;获取所述待分析域名对应的降维后特征向量的向量行数;即划分成预设个行条(band)的行数,即可根据所述相似度计算系数以及向量行数计算待分析域名之间的相似度。具体计算公式为P=1-(1-rC)B,其中P代表待分析域名之间的相似度,C即为行数量,r为相似度计算系数,B为选取的域名集的数量,将获取到的值代入公式中,比如假设相似度计算系数为0.3,C为3,域名集B为100,则P=1-(1-0.43)100=0.998,即待分析域名之间的相似度为0.998。
S506,域名识别服务器基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后的域名集;
S507,根据所述聚类后的域名集对待分析域名进行识别。
在计算得到待分析域名之间的相似度之后,将相似度大于预设值的待分析域名划分到同一个域名集中,即划分至同一域名集中,得到聚类后域名集。
具体地,基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后域名集,包括:
将待分析域名之间的相似度与预设值进行对比;
将相似度大于预设值的待分析域名聚类至同一域名集中,得到聚类后的域名集。
具体可以将待分析域名之间的相似度与预设值进行对比,若待分析域名之间的相似度大于预设值,则将待分析域名聚类至同一域名集中,依次进行聚类,直至将所有的待分析域名聚类完成,即可得到聚类后域名集。需要说明的是,为了减少后续域名识别的数量,以及提高域名识别的准确性,设置的相似度对比的预设值为较大的值,比如大于0.9小于等于1等。
然后根据所述聚类后的域名集对待分析域名进行识别,由于聚类后的域名集中的域名相似度较高,进行部分识别域名集中的待分析域名,即可获知剩下的待分析域名的类型。因此具体的识别过程为,部分识别域名集中的待分析域名,获得部分待分析域名的类型,若识别的部分待分析域名的类型一致,则可将部分待分析域名的类型作为剩下的未识别的待分析域名的类型。若识别的部分待分析域名的类型不一致,则可提高识别的待分析域名的数量,从而提高识别的准确性,并将识别的待分析域名中,占比超过预设比例的待分析域名的类型作为剩下未识别的待分析域名的类型。
具体地,根据所述聚类后的域名集对待分析域名进行识别,可以包括:
提取目标域名的特征;
将所述目标域名的特征与所述聚类后的域名集中的域名特征进行对比;
若所述聚类后的域名集中存在与所述目标域名特征一致的域名,则确定所述聚类后的域名集中的域名为目标域名。
具体域名识别过程中,可以提取目标域名的特征,并将所述目标域名的特征与所述聚类后域名集中的域名进行对比,由于同一域名集中的域名的类型的相似度较高,或者为类型一致,因此,将域名集中的部分域名与目标域名的特征进行对比即可,从而减少了对比的数量,缩短对比时间,从而提高对比效率。需要说明的说,提取的目标域名的特征,可以为恶意团伙的域名的特征,若所述聚类后域名集中的域名存在与所述目标域名的特征一致的域名,则确定所述聚类后域名集中的域名为目标域名,比如恶意团伙的域名。进一步地,由于部分恶意的域名爆发的时间较短,可能存在还没获得域名特征的情况,此时可以通过人工进行筛选,判断域名集中是否存在恶意域名。
S508,若域名识别服务器识别所述域名集中的域名为目标域名,则确定所述域名集中域名的访问客户端;
S509,域名识别服务器向所述访问客户端发送告警信息。
若确定某一域名集中的域名为目标域名,为了防止访问过域名集中的域名的客户端受到攻击,则需要确定所述域名集中域名的访问客户端,向所述访问客户端发送告警信息,具体可以提取预设的告警信息,并将所述告警信息发送至存在访问所述域名集中的域名的客户端,或者实时生成告警信息,并将生成的告警信息发送至访问客户端,从而提醒用户,提醒其可能遭受攻击或被入侵,以便用户及时进行防范。
由上可知,本实施例通过接收域名识别指令;根据所述域名识别指令获取多个客户端针对待分析域名的访问记录;根据所述访问记录构建待分析域名对应的特征向量;对构建得到的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量;基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后域名集,即可根据所述聚类后的域名集对待分析域名进行识别;本方案根据相似度将域名聚类到域名集中,根据聚类后的各个类别的域名集再进行识别,由于同一域名集中的域名为相同或相似类别,识别过程中有效避免了出现识别类型错误的情况,提供了域名识别的准确性,并且域名集中的域名为相似或相同类型,不需要对比所有的域名特征即可获得域名的类型,减少了域名的识别时间,提高了域名识别效率。
为了更好地实施以上方法,本发明实施例还可以提供一种域名识别装置,该域名识别装置具体可以集成在网络设备中,该网络设备可以是终端或服务器等设备。
例如,如图6a所示,该域名识别装置可以包括接收单元601、获取单元602、降维单元603、计算单元604、聚类单元605和识别单元606,如下:
(1)接收单元601;
接收单元601,用于接收域名识别指令。
比如接收输入服务器发送的域名识别指令。或者也可以在域名识别服务器中设置定时进行域名识别,当用户设置了定时进行域名识别时,在到达用户设置域名识别的时间,即可自动触发域名识别指令,域名识别服务器即可接收域名识别指令,不需要用户每次手动进行触发。用户在设置定时进行域名识别之后,也可以手动触发域名识别指令,比如,当存在突发情况,需要进行域名识别,而当前时间不处于用户设置的域名识别时间时,用户可通过手动触发域名识别指令,以便域名识别服务器接收,从而不需要接收输入服务器发送的域名识别指令。
(2)获取单元602;
获取单元602,用于根据所述域名识别指令获取多个客户端针对待分析域名的访问记录;并根据所述访问记录构建待分析域名对应的特征向量。
域名识别服务器接收到域名识别指令之后,即可基于域名识别指令获取客户端对待分析域名的访问记录。具体地,可以获取服务器中所有的客户端对待分析域名的访问记录,也可以获取一定范围内的客户端对待分析域名的访问记录,比如获取客户端对待分析域名的访问记录等,在此不做限定,具体可以根据用户输入的范围进行获取,在用户没有限定时,可以默认获取服务器中的所有客户端对待分析域名的访问记录。具体地,服务器中的客户端对待分析域名的访问记录,具体可通过待分析域名对访问记录进行提取分析获得,若待分析域名的访问记录中包含服务器中的客户端,则确定被包含的客户端对待分析域名存在访问记录。不被包含的客户端则对待分析域名不存在访问记录。
然后根据所述访问记录构建待分析域名对应的特征向量,具体地,可以根据客户端是否存在访问记录,若存在访问记录,则定义为第一元素,若不存在访问记录,则定义为第二元素,然后按照获取的客户端的访问记录的顺序,将各个定义的元素进行排列,作为待分析域名的特征向量的元素,即可获得待分析域名对应的特征向量。
(3)降维单元603;
降维单元603,用于对所述待分析域名对应的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量。
获得待分析域名对应的特征向量之后,可以首先对待分析域名对应的特征向量进行特征降维处理,以便减少待分析域名的计算量。
(4)计算单元604;
计算单元604,用于基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度。
在将待分析域名的特征向量进行降维之后,即可根据待分析域名对应的降维后的特征向量计算待分析域名之间的相似度。然后将待分析域名对应的降维后特征向量划分成预设个行条(band),每个行条由对应的行组成。对于每个行条,存在一个哈希函数能够将行条中的对应的行数量个整数组成的列向量(行条中的每一列)映射到某个域名集中,即映射到某一域名集中。可以对所有行条使用相同的哈希函数,但是对于每个行条都使用一个独立的域名集数组,因此即便是不同行条中的相同列向量,也不会被哈希到同一个域名集中。这样,只要两个特征向量在某个行条中有落在相同域名集的两列,这两个特征向量就被认为可能相似度比较高,作为后续计算的候选对;然后选取为固定预设值的Jaccard(杰卡德系数),比如0.4,计算候选对落在同一个域名集的概率,具体计算公式为P=1-(1-rC)B,其中P代表概率,r即为行数量,C为固定值3,B为选取的域名集的数量,将对应的值代入公式中,即可计算待分析域名的特征向量中的候选对之间的相似度。
(5)聚类单元605;
聚类单元605,用于基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后的域名集;
(6)识别单元606;
根据所述聚类后的域名集对待分析域名进行识别。
在计算得到待分析域名之间的相似度之后,将相似度大于预设值的待分析域名划分到同一个域名集中,即划分至同一域名集中,得到聚类后域名集。
具体地,如图6b所示,聚类单元605可以包括:
第一对比子单元607,用于将待分析域名之间的相似度与预设值进行对比;
聚类子单元608,用于将相似度大于预设值的待分析域名聚类至同一域名集中,得到聚类后的域名集。
具体可以将待分析域名之间的相似度与预设值进行对比,若待分析域名之间的相似度大于预设值,则将待分析域名聚类至同一域名集中,依次进行聚类,直至将所有的待分析域名聚类完成,即可得到聚类后域名集。需要说明的是,为了减少后续域名识别的数量,以及提高域名识别的准确性,设置的相似度对比的预设值为较大的值,比如大于0.9小于等于1等。
然后根据所述聚类后的域名集对待分析域名进行识别,由于聚类后的域名集中的域名相似度较高,进行部分识别域名集中的待分析域名,即可获知剩下的待分析域名的类型。因此具体的识别过程为,部分识别域名集中的待分析域名,获得部分待分析域名的类型,若识别的部分待分析域名的类型一致,则可将部分待分析域名的类型作为剩下的未识别的待分析域名的类型。若识别的部分待分析域名的类型不一致,则可提高识别的待分析域名的数量,从而提高识别的准确性,并将识别的待分析域名中,占比超过预设比例的待分析域名的类型作为剩下未识别的待分析域名的类型。
具体地,如图6c所示,聚类单元605还可以包括提取子单元609、第二对比子单元610和确定子单元611:
提取子单元609,用于提取目标域名的特征;
第二对比子单元610,用于将所述目标域名的特征与所述聚类后的域名集中的域名特征进行对比;
确定子单元611,用于若所述聚类后的域名集中存在与所述目标域名特征一致的域名,则确定所述聚类后的域名集中的域名为目标域名。
具体域名识别过程中,可以提取目标域名的特征,并将所述目标域名的特征与所述聚类后域名集中的域名进行对比,由于同一域名集中的域名的类型的相似度较高,或者为类型一致,因此,将域名集中的部分域名与目标域名的特征进行对比即可,从而减少了对比的数量,缩短对比时间,从而提高对比效率。需要说明的说,提取的目标域名的特征,可以为恶意团伙的域名的特征,若所述聚类后域名集中的域名存在与所述目标域名的特征一致的域名,则确定所述聚类后域名集中的域名为目标域名,比如恶意团伙的域名。进一步地,由于部分恶意的域名爆发的时间较短,可能存在还没获得域名特征的情况,此时可以通过人工进行筛选,判断域名集中是否存在恶意域名。
进一步地,若确定某一域名集中的域名为目标域名,为了防止访问过域名集中的域名的客户端受到攻击,则需要确定所述域名集中域名的访问客户端,向所述访问客户端发送告警信息,具体可以提取预设的告警信息,并将所述告警信息发送至存在访问所述域名集中的域名的客户端,或者实时生成告警信息,并将生成的告警信息发送至访问客户端,从而提醒用户,提醒其可能遭受攻击或被入侵,以便用户及时进行防范。
由上可知,本实施例的域名识别装置的接收单元601通过接收域名识别指令;然后获取单元602根据所述域名识别指令获取多个客户端针对待分析域名的访问记录;并根据所述访问记录构建待分析域名对应的特征向量;然后降维单元603对构建得到的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量;计算单元604基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;聚类单元再基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后的域名集,即可根据所述聚类后的域名集对待分析域名进行识别;实现了根据相似度将域名聚类到域名集中,然后根据域名集对域名进行识别即可,大大减少了域名的识别时间,并且提高了域名识别的准确性。
本发明实施例还提供一种服务器,如图7所示,其示出了本发明实施例所涉及的服务器的结构示意图,具体来讲:
该服务器可以包括一个或者一个以上处理核心的处理器701、一个或一个以上计算机可读存储介质的存储器702、电源703和输入单元704等部件。本领域技术人员可以理解,图7中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器701是该服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器702内的软件程序和/或模块,以及调用存储在存储器702内的数据,执行服务器的各种功能和处理数据,从而对服务器进行整体监控。可选的,处理器701可包括一个或多个处理核心;优选的,处理器701可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
存储器702可用于存储软件程序以及模块,处理器701通过运行存储在存储器702的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器702可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器702还可以包括存储器控制器,以提供处理器701对存储器702的访问。
服务器还包括给各个部件供电的电源703,优选的,电源703可以通过电源管理***与处理器701逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源703还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该服务器还可包括输入单元704,该输入单元704可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,服务器还可以包括显示单元等,在此不再赘述。具体在本实施例中,服务器中的处理器701会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器702中,并由处理器701来运行存储在存储器702中的应用程序,从而实现各种功能,如下:
接收域名识别指令;
根据所述域名识别指令获取多个客户端针对待分析域名的访问记录;并根据所述访问记录构建待分析域名对应的特征向量;
对所述待分析域名对应的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量;
基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;
基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后的域名集;
根据所述聚类后的域名集对待分析域名进行识别。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本发明实施例提供一种存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本发明实施例所提供的任一种域名识别方法中的步骤。例如,该指令可以执行如下步骤:
接收域名识别指令;
根据所述域名识别指令获取多个客户端针对待分析域名的访问记录;并根据所述访问记录构建待分析域名对应的特征向量;
对所述待分析域名对应的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量;
基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;
基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后的域名集;
根据所述聚类后的域名集对待分析域名进行识别。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的指令,可以执行本发明实施例所提供的任一种域名识别方法中的步骤,因此,可以实现本发明实施例所提供的任一种域名识别方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本发明实施例所提供的一种域名识别方法、装置和***进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (15)
1.一种域名识别方法,其特征在于,包括:
接收域名识别指令;
根据所述域名识别指令获取多个客户端针对待分析域名的访问记录,并根据所述访问记录构建待分析域名对应的特征向量;
对所述待分析域名对应的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量;
基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;
基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后的域名集;
根据所述聚类后的域名集对待分析域名进行识别,得到识别结果。
2.如权利要求1所述的域名识别方法,其特征在于,所述对所述待分析域名对应的特征向量进行特征降维处理,包括:
确定所述待分析域名对应的特征向量所需的哈希函数;
基于所述哈希函数对所述待分析域名对应的特征向量进行哈希变化,得到降维后特征向量。
3.如权利要求2所述的域名识别方法,其特征在于,所述特征向量包括待分析域名对应的子特征向量,所述基于所述哈希函数对所述待分析域名对应的特征向量进行哈希变化,得到降维后特征向量,包括:
根据哈希函数向所述特征向量添加相应的哈希子特征向量;
将所述哈希子特征向量中的特征值进行初始化,得到初始化哈希特征子向量;
将所述初始化哈希特征子向量与所述待分析域名对应的子特征向量进行对比,得到对比结果;
根据所述对比结果对所述待分析域名对应的子特征向量进行降维,得到降维后特征向量。
4.如权利要求3所述的域名识别方法,其特征在于,所述将所述初始化哈希特征子向量与所述待分析域名对应的子特征向量进行对比,得到对比结果,包括:
将所述初始化哈希特征子向量的特征值与所述待分析域名对应的子特征向量特征值进行大小对比,得到对比结果。
5.如权利要求3所述的域名识别方法,其特征在于,所述根据所述对比结果对所述待分析域名对应的子特征向量进行降维,得到降维后特征向量,包括:
若所述初始化哈希特征子向量的特征值大于所述待分析域名对应的子特征向量特征值,且所述待分析域名对应的子特征向量特征值大于预设值,则将所述初始化哈希特征子向量的特征值进行替换;
若所述初始化哈希特征子向量的特征值大于所述待分析域名对应的子特征向量特征值,且所述待分析域名对应的子特征向量特征值等于预设值,则所述初始化哈希特征子向量的特征值保持不变;
将替换后的哈希特征子向量的特征值与保持不变的哈希特征子向量的特征值进行组合,得到组合哈希特征子向量;
根据组合哈希特征子向量对所述待分析域名对应的子特征向量进行降维,得到降维后特征向量。
6.如权利要求2所述的域名识别方法,其特征在于,所述确定所述待分析域名对应的特征向量所需的哈希函数之前,还包括:
对所述待分析域名对应的特征向量进行过滤处理,获得过滤后特征向量;
将过滤后的特征向量作为待分析域名对应的特征向量。
7.如权利要求1所述的域名识别方法,其特征在于,所述基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度,包括:
获取待分析域名之间的相似度计算系数;
获取所述待分析域名对应的降维后特征向量的向量行数;
根据所述相似度计算系数以及向量行数计算待分析域名之间的相似度。
8.如权利要求1所述的域名识别方法,其特征在于,所述根据所述访问记录构建待分析域名对应的特征向量,包括:
根据排序轨迹对多个客户端进行排序;
检测排序后客户端对所述待分析域名是否存在访问记录,得到排序后客户端对应的检测结果;
基于排序后客户端对应的检测结果、客户端的排列顺序,构建待分析域名对应的特征向量。
9.如权利要求1所述的域名识别方法,其特征在于,所述基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后域名集,包括:
将待分析域名之间的相似度与预设值进行对比;
将相似度大于预设值的待分析域名聚类至同一域名集至中,得到聚类后的域名集。
10.如权利要求1所述的恶意域名的识别方法,其特征在于,所述根据所述聚类后的域名集对待分析域名进行识别,包括:
提取目标域名的特征;
将所述目标域名的特征与所述聚类后的域名集中的域名特征进行对比;
若所述聚类后的域名集中存在与所述目标域名特征一致的域名,则确定所述聚类后的域名集中的域名为目标域名。
11.如权利要求1-10任一项所述的域名识别方法,其特征在于,所述根据所述聚类后的域名集对待分析域名进行识别的步骤之后,还包括:
若识别所述域名集中的域名为目标域名,则确定所述域名集中域名的访问客户端;
向所述访问客户端发送告警信息。
12.如权利要求1所述的域名识别方法,其特征在于,所述获取多个客户端针对待分析域名的访问记录,包括:
显示域名检测页面,所述页面包括域名识别控件;
基于用户针对所述域名识别控件的触发操作,获取多个客户端针对待分析域名的访问记录。
13.如权利要求12所述的域名识别方法,其特征在于,所述根据所述聚类后的域名集对待分析域名进行识别的步骤之后,还包括:
在所述域名检测页面中显示域名识别结果。
14.一种域名识别装置,其特征在于,包括:
接收单元,用于接收域名识别指令;
获取单元,用于根据所述域名识别指令获取多个客户端针对待分析域名的访问记录,并根据所述访问记录构建待分析域名对应的特征向量;
降维单元,用于对所述待分析域名对应的特征向量进行特征降维处理,得到待分析域名对应的降维后特征向量;
计算单元,用于基于所述待分析域名对应的降维后特征向量计算待分析域名之间的相似度;
聚类单元,用于基于待分析域名之间的相似度对所述待分析域名进行聚类,得到聚类后的域名集;
识别单元,用于根据所述聚类后的域名集对待分析域名进行识别。
15.一种存储介质,其特征在于,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至13任一项所述的域名识别方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910373033.3A CN110099059B (zh) | 2019-05-06 | 2019-05-06 | 一种域名识别方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910373033.3A CN110099059B (zh) | 2019-05-06 | 2019-05-06 | 一种域名识别方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110099059A true CN110099059A (zh) | 2019-08-06 |
CN110099059B CN110099059B (zh) | 2021-08-31 |
Family
ID=67446989
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910373033.3A Active CN110099059B (zh) | 2019-05-06 | 2019-05-06 | 一种域名识别方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110099059B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110826067A (zh) * | 2019-10-31 | 2020-02-21 | 深信服科技股份有限公司 | 一种病毒检测方法、装置、电子设备及存储介质 |
CN111049949A (zh) * | 2019-12-31 | 2020-04-21 | 奇安信科技集团股份有限公司 | 域名识别方法、装置、电子设备和介质 |
CN112367338A (zh) * | 2020-11-27 | 2021-02-12 | 腾讯科技(深圳)有限公司 | 恶意请求检测方法及装置 |
CN112565283A (zh) * | 2020-12-15 | 2021-03-26 | 厦门服云信息科技有限公司 | 一种apt攻击检测方法、终端设备及存储介质 |
CN112583738A (zh) * | 2020-12-29 | 2021-03-30 | 北京浩瀚深度信息技术股份有限公司 | 一种分析归类网络流量的方法、设备及存储介质 |
CN112615861A (zh) * | 2020-12-17 | 2021-04-06 | 赛尔网络有限公司 | 恶意域名识别方法、装置、电子设备及存储介质 |
CN112910832A (zh) * | 2019-12-03 | 2021-06-04 | 国家计算机网络与信息安全管理中心 | 国际化域名欺骗攻击识别分析方法及*** |
WO2021169730A1 (zh) * | 2020-02-25 | 2021-09-02 | 深信服科技股份有限公司 | 一种数据处理方法、装置和存储介质 |
CN113381963A (zh) * | 2020-02-25 | 2021-09-10 | 深信服科技股份有限公司 | 一种域名检测方法、装置和存储介质 |
CN113542202A (zh) * | 2020-04-21 | 2021-10-22 | 深信服科技股份有限公司 | 一种域名识别方法、装置、设备及计算机可读存储介质 |
CN113556308A (zh) * | 2020-04-23 | 2021-10-26 | 深信服科技股份有限公司 | 一种流量安全性检测方法、***、设备及计算机存储介质 |
CN115361358B (zh) * | 2022-08-19 | 2024-02-06 | 山石网科通信技术股份有限公司 | Ip的提取方法、装置、存储介质及电子装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104112018A (zh) * | 2014-07-21 | 2014-10-22 | 南京大学 | 一种大规模图像检索方法 |
CN104486461A (zh) * | 2014-12-29 | 2015-04-01 | 北京奇虎科技有限公司 | 域名分类方法和装置、域名识别方法和*** |
CN108282450A (zh) * | 2017-01-06 | 2018-07-13 | 阿里巴巴集团控股有限公司 | 异常域名的检测方法及装置 |
CN109698820A (zh) * | 2018-09-03 | 2019-04-30 | 长安通信科技有限责任公司 | 一种域名相似性计算及分类方法和*** |
-
2019
- 2019-05-06 CN CN201910373033.3A patent/CN110099059B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104112018A (zh) * | 2014-07-21 | 2014-10-22 | 南京大学 | 一种大规模图像检索方法 |
CN104486461A (zh) * | 2014-12-29 | 2015-04-01 | 北京奇虎科技有限公司 | 域名分类方法和装置、域名识别方法和*** |
CN108282450A (zh) * | 2017-01-06 | 2018-07-13 | 阿里巴巴集团控股有限公司 | 异常域名的检测方法及装置 |
CN109698820A (zh) * | 2018-09-03 | 2019-04-30 | 长安通信科技有限责任公司 | 一种域名相似性计算及分类方法和*** |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110826067B (zh) * | 2019-10-31 | 2022-08-09 | 深信服科技股份有限公司 | 一种病毒检测方法、装置、电子设备及存储介质 |
CN110826067A (zh) * | 2019-10-31 | 2020-02-21 | 深信服科技股份有限公司 | 一种病毒检测方法、装置、电子设备及存储介质 |
CN112910832A (zh) * | 2019-12-03 | 2021-06-04 | 国家计算机网络与信息安全管理中心 | 国际化域名欺骗攻击识别分析方法及*** |
CN111049949A (zh) * | 2019-12-31 | 2020-04-21 | 奇安信科技集团股份有限公司 | 域名识别方法、装置、电子设备和介质 |
CN113381962A (zh) * | 2020-02-25 | 2021-09-10 | 深信服科技股份有限公司 | 一种数据处理方法、装置和存储介质 |
WO2021169730A1 (zh) * | 2020-02-25 | 2021-09-02 | 深信服科技股份有限公司 | 一种数据处理方法、装置和存储介质 |
CN113381963A (zh) * | 2020-02-25 | 2021-09-10 | 深信服科技股份有限公司 | 一种域名检测方法、装置和存储介质 |
CN113381962B (zh) * | 2020-02-25 | 2023-02-03 | 深信服科技股份有限公司 | 一种数据处理方法、装置和存储介质 |
CN113381963B (zh) * | 2020-02-25 | 2024-01-02 | 深信服科技股份有限公司 | 一种域名检测方法、装置和存储介质 |
CN113542202A (zh) * | 2020-04-21 | 2021-10-22 | 深信服科技股份有限公司 | 一种域名识别方法、装置、设备及计算机可读存储介质 |
CN113542202B (zh) * | 2020-04-21 | 2022-09-30 | 深信服科技股份有限公司 | 一种域名识别方法、装置、设备及计算机可读存储介质 |
CN113556308A (zh) * | 2020-04-23 | 2021-10-26 | 深信服科技股份有限公司 | 一种流量安全性检测方法、***、设备及计算机存储介质 |
CN112367338A (zh) * | 2020-11-27 | 2021-02-12 | 腾讯科技(深圳)有限公司 | 恶意请求检测方法及装置 |
CN112565283A (zh) * | 2020-12-15 | 2021-03-26 | 厦门服云信息科技有限公司 | 一种apt攻击检测方法、终端设备及存储介质 |
CN112615861A (zh) * | 2020-12-17 | 2021-04-06 | 赛尔网络有限公司 | 恶意域名识别方法、装置、电子设备及存储介质 |
CN112583738A (zh) * | 2020-12-29 | 2021-03-30 | 北京浩瀚深度信息技术股份有限公司 | 一种分析归类网络流量的方法、设备及存储介质 |
CN115361358B (zh) * | 2022-08-19 | 2024-02-06 | 山石网科通信技术股份有限公司 | Ip的提取方法、装置、存储介质及电子装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110099059B (zh) | 2021-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110099059A (zh) | 一种域名识别方法、装置及存储介质 | |
Rao et al. | Jail-Phish: An improved search engine based phishing detection system | |
CN108600200B (zh) | 域名检测方法、装置、计算机设备及存储介质 | |
Zhu et al. | OFS-NN: an effective phishing websites detection model based on optimal feature selection and neural network | |
CN105590055B (zh) | 用于在网络交互***中识别用户可信行为的方法及装置 | |
CN112866023B (zh) | 网络检测、模型训练方法、装置、设备及存储介质 | |
CN111949803B (zh) | 一种基于知识图谱的网络异常用户检测方法、装置和设备 | |
CN108092962A (zh) | 一种恶意url检测方法及装置 | |
CN111355697B (zh) | 僵尸网络域名家族的检测方法、装置、设备及存储介质 | |
US20170078310A1 (en) | Identifying phishing websites using dom characteristics | |
CN104899508B (zh) | 一种多阶段钓鱼网站检测方法与*** | |
CN111565171B (zh) | 异常数据的检测方法、装置、电子设备及存储介质 | |
CN104579773B (zh) | 域名***分析方法及装置 | |
RU2722693C1 (ru) | Способ и система выявления инфраструктуры вредоносной программы или киберзлоумышленника | |
CN108573146A (zh) | 一种恶意url检测方法及装置 | |
CN108023868B (zh) | 恶意资源地址检测方法和装置 | |
CN106209488A (zh) | 用于检测网站攻击的方法和设备 | |
CN107888606B (zh) | 一种域名信誉度评估方法及*** | |
CN107612911B (zh) | 基于dns流量检测受感染主机和c&c服务器的方法 | |
CN113132311A (zh) | 异常访问检测方法、装置和设备 | |
CN106453320A (zh) | 恶意样本的识别方法及装置 | |
Kozik et al. | Modelling HTTP requests with regular expressions for detection of cyber attacks targeted at web applications | |
Eldos et al. | On the KDD'99 Dataset: Statistical Analysis for Feature Selection | |
US12026232B2 (en) | System and method for digitally fingerprinting phishing actors | |
Platzer et al. | A synopsis of critical aspects for darknet research |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |