一种网址安全性检测方法、装置及服务器的制造方法

文档序号:7805536阅读:127来源:国知局
一种网址安全性检测方法、装置及服务器的制造方法
【专利摘要】本发明实施例公开了一种网址安全性检测方法、装置及服务器,其中的方法可包括:根据客户端上报的网址,从所述网址对应的网页文件中获取JS代码文本;采用预设的编码算法将所述JS代码文本转换为待检测编码;分析所述待检测编码以确定所述网址的安全性。采用本发明,可对网址安全性进行快速检测,保护客户端的网络安全。
【专利说明】—种网址安全性检测方法、装置及服务器

【技术领域】
[0001]本发明涉及互联网【技术领域】,具体涉及网络安全【技术领域】,尤其涉及一种网址安全性检测方法、装置及服务器。

【背景技术】
[0002]网址指网页(或网站)地址,可以为URL(Uniform Resourse Locator,统一资源定位符)。根据网址的安全性划分,网址可分为安全网址和恶意网址;安全网址指正规网站的地址,例如:各大银行的官方网址、各购物网站的官方网址等等;恶意网址指各类欺诈、仿冒、钓鱼和挂马等网页地址,例如:仿冒各类正规网站的恶意网址等等,客户端访问恶意网址可能造成客户端隐私信息泄漏、木马病毒感染等危害。随着互联网技术的发展,如何对网址安全性进行检测,以保护客户端的网络安全,成为亟待解决的问题。


【发明内容】

[0003]本发明实施例所要解决的技术问题在于,提供一种网址安全性检测方法、装置及服务器,可对网址安全性进行快速检测,保护客户端的网络安全。
[0004]为了解决上述技术问题,本发明实施例第一方面提供了一种网址安全性检测方法,可包括:
[0005]根据客户端上报的网址,从所述网址对应的网页文件中获取JS (JavaScript,一种客户端脚本语言)代码文本;
[0006]采用预设的编码算法将所述JS代码文本转换为待检测编码;
[0007]分析所述待检测编码以确定所述网址的安全性。
[0008]基于第一方面,在第一种实施方式中,所述根据客户端上报的网址,从所述网址对应的网页文件中获取JS代码文本,可包括:
[0009]根据客户端上报的网址,下载所述网址对应的网页文件;
[0010]解析所述网页文件,获取所述网页文件的源代码文本;
[0011]从所述网页文件的源代码文本中提取JS代码文本。
[0012]基于第一方面或第一方面的第一种实施方式,在第二种实施方式中,所述预设的编码算法为Simhash (—种局部敏感哈希算法)算法;所述采用预设的编码算法将所述JS代码文本转换为待检测编码,包括:
[0013]对所述JS代码文本进行分词处理,获得至少一个特征代码;
[0014]采用Hash算法对各特征代码进行编码计算,获得各特征代码的Hash编码;
[0015]对各特征代码的Hash编码进行加权处理,获得各特征代码的权值序列;
[0016]将所述各特征代码的权值序列进行合并处理,获得所述JS代码文本对应的权值序列串;
[0017]对所述JS代码文本对应的权值序列串进行降维处理,生成所述JS代码文本对应的Simhash编码;
[0018]将所述JS代码文本对应的Simhash编码确定为待检测编码。
[0019]基于第一方面的第二种实施方式,在第三种实施方式中,所述分析所述待检测编码以确定所述网址的安全性,包括:
[0020]判断恶意样本编码库中是否存在与所述待检测编码相似的恶意样本编码,所述恶意样本编码库中包括至少一个恶意样本编码,所述恶意样本编码为Simhash编码;
[0021]若判断所述恶意样本编码库中存在与所述待检测编码相似的恶意样本编码,则确定所述网址为恶意网址。
[0022]基于第一方面的第三种实施方式,在第四种实施方式中,所述判断恶意样本编码库中是否存在与所述待检测编码相似的恶意样本编码,包括:
[0023]将所述待检测编码与所述恶意样本编码库中的各恶意样本编码进行二进制位比较;
[0024]若所述恶意样本编码库中任一恶意样本编码与所述待检测编码具有差异二进制位,且差异二进制位的数量小于预设阈值,则判断所述恶意样本编码库中存在与所述待检测编码相似的恶意样本编码。
[0025]本发明第二方面提供了一种网址安全性检测装置,可包括:
[0026]文本获取模块,用于根据客户端上报的网址,从所述网址对应的网页文件中获取JS代码文本;
[0027]编码模块,用于采用预设的编码算法将所述JS代码文本转换为待检测编码;
[0028]安全检测模块,用于分析所述待检测编码以确定所述网址的安全性。
[0029]基于第二方面,在第一种实施方式中,所述文本获取模块包括:
[0030]下载单元,用于根据客户端上报的网址,下载所述网址对应的网页文件;
[0031]解析单元,用于解析所述网页文件,获取所述网页文件的源代码文本;
[0032]文本提取单元,用于从所述网页文件的源代码文本中提取JS代码文本。
[0033]基于第二方面或第二方面的第一种实施方式,在第二种实施方式中,所述编码模块包括:
[0034]分词处理单元,用于对所述JS代码文本进行分词处理,获得至少一个特征代码;
[0035]编码计算单元,用于采用Hash算法对各特征代码进行编码计算,获得各特征代码的Hash编码;
[0036]加权单元,用于对各特征代码的Hash编码进行加权处理,获得各特征代码的权值序列;
[0037]合并单元,用于将所述各特征代码的权值序列进行合并处理,获得所述JS代码文本对应的权值序列串;
[0038]降维处理单元,用于对所述JS代码文本的权值序列串进行降维处理,生成所述JS代码文本对应的Simhash编码;
[0039]编码确定单元,用于将所述JS代码文本对应的Simhash编码确定为待检测编码;
[0040]其中,所述预设的编码算法为Simhash算法。
[0041]基于第二方面的第二种实施方式,在第三种实施方式中,所述安全检测模块包括:
[0042]判断单元,用于判断恶意样本编码库中是否存在与所述待检测编码相似的恶意样本编码,所述恶意样本编码库中包括至少一个恶意样本编码,所述恶意样本编码为Simhash编码;
[0043]安全性确定单元,用于当判断所述恶意样本编码库中存在与所述待检测编码相似的恶意样本编码时,确定所述网址为恶意网址。
[0044]基于第二方面的第三种实施方式,在第四种实施方式中,所述判断单元包括:
[0045]比较子单元,用于将所述待检测编码与所述恶意样本编码库中的各恶意样本编码进行二进制位比较;
[0046]判断子单元,用于当所述恶意样本编码库中任一恶意样本编码与所述待检测编码具有差异二进制位,且差异二进制位的数量小于预设阈值时,判断所述恶意样本编码库中存在与所述待检测编码相似的恶意样本编码。
[0047]本发明第三方面还提供了一种服务器,可包括上述第二方面所述的网址安全性检测装置。
[0048]实施本发明实施例,具有如下有益效果:
[0049]通过对客户端上报的网址对应的网页文件中的JS代码文本进行编码及分析,既能够实现网址安全性的检测,又能够避免恶意网址通过JS代码加密封装所造成的检测失误,有效提升网址安全性检测的准确性,有效地保护客户端的网络安全。

【专利附图】

【附图说明】
[0050]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0051]图1为本发明实施例提供的一种网址安全性检测方法的流程图;
[0052]图2为本发明实施例提供的另一种网址安全性检测方法流程图;
[0053]图3为本发明实施例提供的一种网址安全性检测装置的结构示意图;
[0054]图4为本发明实施例提供的一种文本获取模块的结构示意图;
[0055]图5为本发明实施例提供的一种编码模块的结构示意图;
[0056]图6为本发明实施例提供的一种安全检测模块的结构示意图;
[0057]图7为本发明实施例提供的一种判断单元的结构示意图;
[0058]图8为本发明实施例提供的一种服务器的结构示意图。

【具体实施方式】
[0059]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0060]下面将结合附图1-附图2,对本发明实施例提供的网址安全性检测方法进行详细介绍。需要说明的是,附图1-附图2所示的网址安全性检测方法可以由本发明实施例提供的网址安全性检测装置所执行,该网址安全性检测装置可运行于服务器中。本发明实施例中,客户端可包括但不限于:PC (Personal Computer,个人计算机)、PAD (平板电脑)、手机、智能手机、笔记本电脑等终端设备,或者,客户端可以为上述终端设备中的应用客户端,例如:PC中的电脑管家客户端,手机中的安全管家客户端等等。
[0061]请参见图1,为本发明实施例提供的一种网址安全性检测方法的流程图;该方法可包括以下步骤SlOl-步骤S103。
[0062]S101,根据客户端上报的网址,从所述网址对应的网页文件中获取JS代码文本。
[0063]其中,网址指网页(或网站)地址,可以为URL。根据网址的安全性划分,网址可分为安全网址和恶意网址;安全网址指正规网站的地址,例如:各大银行的官方网址、各购物网站的官方网址等等;恶意网址指各类欺诈、仿冒、钓鱼和挂马等网页地址,例如:仿冒各类正规网站的恶意网址等等,客户端访问恶意网址可能造成客户端隐私信息泄漏、木马病毒感染等危害。目前,恶意网址对应的页面文本内容通常采用JS代码进行加密封装,以隐藏其恶意性,例如:恶意网址对应的页面文本内容采用JS.document, write加密后输出,以隐藏其恶意性;为了对抗恶意网址的JS封装特性,本步骤可以根据客户端上报的网址,从该网址对应的网页文件中获取JS代码文本以作后续的安全性检测分析。本发明实施例中,客户端上报的网址指客户端从浏览器地址栏采集到的当前正在访问的网址,以保证客户端当前访问的安全性,但可以理解的是,本发明实施例并不对此进行限定,客户端上报的网址还可以是客户端收集到的用户输入并请求查询的网址,等等。
[0064]S102,采用预设的编码算法将所述JS代码文本转换为待检测编码。
[0065]其中,所述预设的编码算法优选为Simhash算法。Simhash算法是LocalSensitive Hash (局部敏感哈希)算法的一种,其特点在于局部敏感,即当输入内容发生少量变化时,通过Simhash算法计算获得的Hash值不变或者仅发生轻微变化。可以理解的是,所述预设的编码算法还可以为其他类型的算法,本发明实施例并不对此进行限定,例如:预设的编码算法还可以采用PHA (Perceptual Hashing,感知哈希)算法等等。
[0066]S103,分析所述待检测编码以确定所述网址的安全性。
[0067]由于恶意网址对应的页面文本内容进行各种方式的JS加密封装一般变化不会发生很大变化,因此,本步骤可以将待检测编码与已知的恶意网址对应的JS代码文本的编码进行比对,如果二者相似,则可确定客户端上报的待检测的网址为恶意网址,从而快速确定出网址安全性。
[0068]本发明实施例通过对客户端上报的网址对应的网页文件中的JS代码文本进行编码及分析,既能够实现网址安全性的检测,又能够避免恶意网址通过JS代码加密封装所造成的检测失误,有效提升网址安全性检测的准确性,有效地保护客户端的网络安全。
[0069]请参见图2,为本发明实施例提供的另一种网址安全性检测方法流程图;本实施例中,所述预设的编码算法优选为Simhash算法。该方法可包括以下步骤S201-步骤S211。
[0070]S201,根据客户端上报的网址,下载所述网址对应的网页文件。
[0071]其中,网址指网页(或网站)地址,可以为URL。根据网址安全性划分,网址可分为安全网址和恶意网址;安全网址指正规网站的地址,例如:各大银行的官方网址、各购物网站的官方网址等等;恶意网址指各类欺诈、仿冒、钓鱼和挂马等网页地址,例如:仿冒各类正规网站的恶意网址等等,客户端访问恶意网址可能造成客户端的隐私信息泄漏、木马病毒感染等危害。本步骤中,根据客户端上报的网址,可以从网络服务器中下载该网址对应的网页文件,该网页文件包括但不限于:HTML(HyperText Markup Language,超文本标记语言)文件、JS文件、CSS (Cascading Style Sheet,级联样式表)文件等等,本发明实施例中,客户端上报的网址指客户端从浏览器地址栏采集到的当前正在访问的网址,以保证客户端当前访问的安全性,但可以理解的是,本发明实施例并不对此进行限定,客户端上报的网址还可以是客户端收集到的用户输入并请求查询的网址,等等。
[0072]S202,解析所述网页文件,获取所述网页文件的源代码文本。
[0073]其中,源代码文本包含了所述网页文件的页面文本内容及其展现方式,客户端通过运行源代码文本,可展现所述网页文件的页面文本内容。
[0074]S203,从所述网页文件的源代码文本中提取JS代码文本。
[0075]目前,恶意网址对应的页面文本内容通常采用JS代码进行加密封装,以隐藏其恶意性,例如:恶意网址对应的页面文本内容采用JS.document, write加密后输出,以隐藏其恶意性;为了对抗恶意网址的JS封装特性,本步骤可以从所述网页文件的源代码文本中提取出JS代码文本,以分析该JS代码文本是否为恶意封装的JS文本,从而确定网址安全性。
[0076]步骤S201-S203可以为图1所示实施例中的步骤SlOl的具体细化步骤。
[0077]S204,对所述JS代码文本进行分词处理,获得至少一个特征代码。
[0078]其中,可灵活采用各种分词方法,对所述JS代码文本进行分词处理的方法,该分词方法包括但不限于:基于空格的分词方法、基于统计的分词方法等等。分词处理的目的在于提取表征所述JS代码文本的特征的特征代码;例如:“中国的互联网技术的发展趋势”的页面内容文本经JS代码封装形成的JS代码文本,经过本步骤的分词处理后,可获得的特征代码如下:“中国”的JS码、“互联网”的JS码、“技术”的JS码、“发展”的JS码、“趋势”的JS码。
[0079]S205,采用Hash算法对各特征代码进行编码计算,获得各特征代码的Hash编码。
[0080]其中,一个特征代码对应一个Hash编码。本步骤中,将特征代码编码为Hash编码,即是将一个JS码转换为二进制数值的过程。
[0081 ] S206,对各特征代码的Hash编码进行加权处理,获得各特征代码的权值序列。
[0082]按照各特征代码在JS代码文本中的重要程度,可以为各特征代码分配权重;例如:按照步骤S204中的例子,可设置权重级别为1-5,权重值越大,表明该特征代码在JS代码文本中的重要程度越高,如“中国”的JS码对应的权重可为4,“互联网”的JS码对应的权重可为5,“技术”的JS码对应的权重可为3,“发展”的JS码对应的权重可为4,“趋势”的JS码对应的权重可为2。本步骤中,采用各特征代码各自的权重,对各特征代码的Hash编码进行加权处理,则可以形成各特征代码的加权数字串,该加权数字串即为该特征代码的权值序列;需要说明的是,在加权处理过程中,若二进制位为1,权重为正值,若二进制位为0,权重为负值;例如:假设“中国”的JS码对应的Hash编码为“ 100101”,通过将其采用权重4进行加权后,可得到“4-4-44-44”的加权数字串,则“4-4-44-44”即为“中国”的JS码这一特征代码的权值序列。
[0083]S207,将所述各特征代码的权值序列进行合并处理,获得所述JS代码文本对应的权值序列串。
[0084]经过步骤S206,每一个特征代码均对应一个权值序列,本步骤则将各特征代码的权值序列进行按位累加计算,合并为一个权值序列串,该权值序列串即可表征所述JS代码文本的特征。例如:假设“中国”的JS码对应的权值序列为“ 4-4-44-44 ”,“互联网”的JS码对应的权值序列为“5-55-555”,本步骤对二者进行合并处理过程为“4+5-4+-5-4+54+-5-4+54+5”,从而得到“9-91-119”的权值序列串;同理,本步骤可获得所述JS代码文本对应的权值序列串。
[0085]S208,对所述JS代码文本对应的权值序列串进行降维处理,生成所述JS代码文本对应的Simhash编码。
[0086]本步骤中,将所述JS代码文本对应的权值序列串进行降维处理的目的,即是将所述JS代码文本对应的权值序列串转换为二进制编码,从而生成所述JS代码文本对应的Simhash编码。需要说明的是,在降维处理过程中,将所述JS代码文本对应的权值序列串中大于O的位设置为1,小于O的位设置为O ;例如:“9-91-119”的权值序列串经降维处理后,可得到的Simhash编码为“101011”。
[0087]S209,将所述JS代码文本对应的Simhash编码确定为待检测编码。
[0088]步骤S204-S209可以为图1所示实施例中的步骤S102的具体细化步骤。S210,判断恶意样本编码库中是否存在与所述待检测编码相似的恶意样本编码;若判断结果为是,转入步骤S211 ;否则,结束。
[0089]其中,所述恶意样本编码库中包括至少一个恶意样本编码,一个恶意样本编码指采用预设的编码算法对一个恶意网址对应的JS代码文本进行编码计算获得的编码。所述预设的编码算法优选为Simhash算法,所述恶意样本编码优选为Simhash编码。本步骤中,如果恶意样本编码库中存在与所述待检测编码相似的恶意样本编码,利用Simhash算法的特点可知,该待检测编码即为一恶意样本编码,从而可转入步骤S211确定客户端上报的网址为一恶意网址。
[0090]本步骤S210的判断过程具体可以参见如下流程:
[0091]A、将所述待检测编码与所述恶意样本编码库中的各恶意样本编码进行二进制位比较。
[0092]例如:假设恶意样本编码库中包含a、b、c三个恶意样本编码,待检测编码为k,步骤A中需要分别将k与a进行二进制位比较,将k与b进行二进制位比较,将k与c进行二进制位比较。
[0093]B、若所述恶意样本编码库中任一恶意样本编码与所述待检测编码具有差异二进制位,且差异二进制位的数量小于预设阈值,则判断所述恶意样本编码库中存在与所述待检测编码相似的恶意样本编码。
[0094]参见步骤A中的例子,如果k与a、b、c三者之一具有差异二进制位(即不同的二进制位),且差异二进制位的数量小于预设阈值,则可判断恶意样本编码库中存在与k相似的恶意样本编码,例如:假设k、a、b、c均为6位二进制,预设阈值为2,如果k与a仅有I个差异二进制位,由此可判断k与a相似,即判断恶意样本编码库中存在与待检测编码相似的恶意样本编码。相反,如果k与a、b或c的差异二进制位的数量均大于或等于预设阈值,则可判断k与a、b、c均不相似,从而判断所述恶意样本编码库中没有与所述待检测编码相似的恶意样本编码。
[0095]S211,确定所述网址为恶意网址。
[0096]本实施例的步骤S210-步骤S211可以为图1所示实施例中的步骤S103的具体细化步骤。
[0097]本发明实施例通过对客户端上报的网址对应的网页文件中的JS代码文本进行编码及分析,既能够实现网址安全性的检测,又能够避免恶意网址通过JS代码加密封装所造成的检测失误,有效提升网址安全性检测的准确性,有效地保护客户端的网络安全。
[0098]下面将结合附图3-附图7,对本发明实施例提供的网址安全性检测装置进行详细介绍。需要说明的是,附图3-附图7所示的网址安全性检测装置可运行于服务器中,用于执行附图1-附图2所示的网址安全性检测方法。
[0099]请参见图3,为本发明实施例提供的一种网址安全性检测装置的结构示意图;该装置可包括:文本获取模块101、编码模块102和安全检测模块103。
[0100]文本获取模块101,用于根据客户端上报的网址,从所述网址对应的网页文件中获取JS代码文本。
[0101]其中,网址指网页(或网站)地址,可以为URL。根据网址的安全性划分,网址可分为安全网址和恶意网址;安全网址指正规网站的地址,例如:各大银行的官方网址、各购物网站的官方网址等等;恶意网址指各类欺诈、仿冒、钓鱼和挂马等网页地址,例如:仿冒各类正规网站的恶意网址等等,客户端访问恶意网址可能造成客户端隐私信息泄漏、木马病毒感染等危害。目前,恶意网址对应的页面文本内容通常采用JS代码进行加密封装,以隐藏其恶意性,例如:恶意网址对应的页面文本内容采用JS.document, write加密后输出,以隐藏其恶意性;为了对抗恶意网址的JS封装特性,所述文本获取模块101可以根据客户端上报的网址,从该网址对应的网页文件中获取JS代码文本以作后续的安全性检测分析。本发明实施例中,客户端上报的网址指客户端从浏览器地址栏采集到的当前正在访问的网址,以保证客户端当前访问的安全性,但可以理解的是,本发明实施例并不对此进行限定,客户端上报的网址还可以是客户端收集到的用户输入并请求查询的网址,等等。
[0102]编码模块102,用于采用预设的编码算法将所述JS代码文本转换为待检测编码。
[0103]其中,所述预设的编码算法优选为Simhash算法。Simhash算法是LocalSensitive Hash (局部敏感哈希)算法的一种,其特点在于局部敏感,即当输入内容发生少量变化时,通过Simhash算法计算获得的Hash值不变或者仅发生轻微变化。可以理解的是,所述预设的编码算法还可以为其他类型的算法,本发明实施例并不对此进行限定,例如:预设的编码算法还可以采用PHA (Perceptual Hashing,感知哈希)算法等等。
[0104]安全检测模块103,用于分析所述待检测编码以确定所述网址的安全性。
[0105]由于恶意网址对应的页面文本内容进行各种方式的JS加密封装一般变化不会发生很大变化,因此,所述安全检测模块103可以将待检测编码与已知的恶意网址对应的JS代码文本的编码进行比对,如果二者相似,则可确定客户端上报的待检测的网址为恶意网址,从而快速确定出网址安全性。
[0106]本发明实施例通过对客户端上报的网址对应的网页文件中的JS代码文本进行编码及分析,既能够实现网址安全性的检测,又能够避免恶意网址通过JS代码加密封装所造成的检测失误,有效提升网址安全性检测的准确性,有效地保护客户端的网络安全。
[0107]请参见图4,为本发明实施例提供的一种文本获取模块的结构示意图;该文本获取模块101可包括:下载单元1101、解析单元1102和文本提取单元1103。
[0108]下载单元1101,用于根据客户端上报的网址,下载所述网址对应的网页文件。
[0109]其中,网址指网页(或网站)地址,可以为URL。根据网址安全性划分,网址可分为安全网址和恶意网址;安全网址指正规网站的地址,例如:各大银行的官方网址、各购物网站的官方网址等等;恶意网址指各类欺诈、仿冒、钓鱼和挂马等网页地址,例如:仿冒各类正规网站的恶意网址等等,客户端访问恶意网址可能造成客户端的隐私信息泄漏、木马病毒感染等危害。所述下载单元1101根据客户端上报的网址,可以从网络服务器中下载该网址对应的网页文件,该网页文件包括但不限于:HTML文件、JS文件、CSS文件等等,本发明实施例中,客户端上报的网址指客户端从浏览器地址栏采集到的当前正在访问的网址,以保证客户端当前访问的安全性,但可以理解的是,本发明实施例并不对此进行限定,客户端上报的网址还可以是客户端收集到的用户输入并请求查询的网址,等等。
[0110]解析单元1102,用于解析所述网页文件,获取所述网页文件的源代码文本。
[0111]其中,源代码文本包含了所述网页文件的页面文本内容及其展现方式,客户端通过运行源代码文本,可展现所述网页文件的页面文本内容。
[0112]文本提取单元1103,用于从所述网页文件的源代码文本中提取JS代码文本。
[0113]目前,恶意网址对应的页面文本内容通常采用JS代码进行加密封装,以隐藏其恶意性,例如:恶意网址对应的页面文本内容采用JS.document, write加密后输出,以隐藏其恶意性;为了对抗恶意网址的JS封装特性,所述文本提取单元1103可以从所述网页文件的源代码文本中提取出JS代码文本,以分析该JS代码文本是否为恶意封装的JS文本,从而确定网址安全性。
[0114]本发明实施例通过对客户端上报的网址对应的网页文件中的JS代码文本进行编码及分析,既能够实现网址安全性的检测,又能够避免恶意网址通过JS代码加密封装所造成的检测失误,有效提升网址安全性检测的准确性,有效地保护客户端的网络安全。
[0115]请参见图5,为本发明实施例提供的一种编码模块的结构示意图;本实施例中,所述预设的编码算法为Simhash算法。该编码模块102可包括:分词处理单元1201、编码计算单元1202、加权单元1203、合并单元1204、降维处理单元1205和编码确定单元1206。
[0116]分词处理单元1201,用于对所述JS代码文本进行分词处理,获得至少一个特征代码。
[0117]其中,所述分词处理单元1201可灵活采用各种分词方法,对所述JS代码文本进行分词处理的方法,该分词方法包括但不限于:基于空格的分词方法、基于统计的分词方法等等。分词处理的目的在于提取表征所述JS代码文本的特征的特征代码;例如:“中国的互联网技术的发展趋势”的页面内容文本经JS代码封装形成的JS代码文本,经过所述分词处理单元1201的分词处理后,可获得的特征代码如下:“中国”的JS码、“互联网”的JS码、“技术”的JS码、“发展”的JS码、“趋势”的JS码。
[0118]编码计算单元1202,用于采用Hash算法对各特征代码进行编码计算,获得各特征代码的Hash编码。
[0119]其中,一个特征代码对应一个Hash编码。所述编码计算单元1202将特征代码编码为Hash编码,即是将一个JS码转换为二进制数值的过程。
[0120]加权单元1203,用于对各特征代码的Hash编码进行加权处理,获得各特征代码的权值序列。
[0121]按照各特征代码在JS代码文本中的重要程度,可以为各特征代码分配权重;例如:按照本实施例中的例子,可设置权重级别为1-5,权重值越大,表明该特征代码在JS代码文本中的重要程度越高,如“中国”的JS码对应的权重可为4,“互联网”的JS码对应的权重可为5,“技术”的JS码对应的权重可为3,“发展”的JS码对应的权重可为4,“趋势”的JS码对应的权重可为2。本步骤中,采用各特征代码各自的权重,对各特征代码的Hash编码进行加权处理,则可以形成各特征代码的加权数字串,该加权数字串即为该特征代码的权值序列;需要说明的是,在加权处理过程中,若二进制位为1,权重为正值,若二进制位为O,权重为负值;例如:假设“中国”的JS码对应的Hash编码为“ 100101”,通过将其采用权重4进行加权后,可得到“4-4-44-44”的加权数字串,则“4-4-44-44”即为“中国”的JS码这一特征代码的权值序列。
[0122]合并单元1204,用于将所述各特征代码的权值序列进行合并处理,获得所述JS代码文本对应的权值序列串。
[0123]每一个特征代码均对应一个权值序列,所述合并单元1204则将各特征代码的权值序列进行按位累加计算,合并为一个权值序列串,该权值序列串即可表征所述JS代码文本的特征。例如:假设“中国”的JS码对应的权值序列为“4-4-44-44”,“互联网”的JS码对应的权值序列为“5-55-555”,所述合并单元1204对二者进行合并处理过程为“4+5-4+-5-4+54+-5-4+54+5”,从而得到“9-91-119”的权值序列串;同理,所述合并单元1204可获得所述JS代码文本对应的权值序列串。
[0124]降维处理单元1205,用于对所述JS代码文本的权值序列串进行降维处理,生成所述JS代码文本对应的Simhash编码。
[0125]所述降维处理单元1205将所述JS代码文本对应的权值序列串进行降维处理的目的,即是将所述JS代码文本对应的权值序列串转换为二进制编码,从而生成所述JS代码文本对应的Simhash编码。需要说明的是,在降维处理过程中,将所述JS代码文本对应的权值序列串中大于O的位设置为1,小于O的位设置为O ;例如:“9-91-119”的权值序列串经降维处理后,可得到的Simhash编码为“101011”。
[0126]编码确定单元1206,用于将所述JS代码文本对应的Simhash编码确定为待检测编码。
[0127]本发明实施例通过对客户端上报的网址对应的网页文件中的JS代码文本进行编码及分析,既能够实现网址安全性的检测,又能够避免恶意网址通过JS代码加密封装所造成的检测失误,有效提升网址安全性检测的准确性,有效地保护客户端的网络安全。
[0128]请参见图6,为本发明实施例提供的一种安全检测模块的结构示意图;该安全检测模块103可包括:判断单元1301和安全性确定单元1302。
[0129]判断单元1301,用于判断恶意样本编码库中是否存在与所述待检测编码相似的恶意样本编码。
[0130]具体实现中,所述判断单元1301的结构可参见图7,为本发明实施例提供的一种判断单元的结构示意图;该判断单元1301可包括:比较子单元1311和判断子单元1312。[0131 ] 比较子单元1311,用于将所述待检测编码与所述恶意样本编码库中的各恶意样本编码进行二进制位比较。
[0132]例如:假设恶意样本编码库中包含a、b、c三个恶意样本编码,待检测编码为k,所述比较子单元1311需要分别将k与a进行二进制位比较,将k与b进行二进制位比较,将k与c进行二进制位比较。
[0133]判断子单元1312,用于当所述恶意样本编码库中任一恶意样本编码与所述待检测编码具有差异二进制位,且差异二进制位的数量小于预设阈值时,判断所述恶意样本编码库中存在与所述待检测编码相似的恶意样本编码。
[0134]参见上述例子,如果k与a、b、c三者之一具有差异二进制位(即不同的二进制位),且差异二进制位的数量小于预设阈值,则可判断恶意样本编码库中存在与k相似的恶意样本编码,例如:假设k、a、b、c均为6位二进制,预设阈值为2,如果k与a仅有I个差异二进制位,由此可判断k与a相似,即判断恶意样本编码库中存在与待检测编码相似的恶意样本编码。相反,如果k与a、b或c的差异二进制位的数量均大于或等于预设阈值,则可判断k与a、b、c均不相似,从而判断所述恶意样本编码库中没有与所述待检测编码相似的恶意样本编码。
[0135]安全性确定单元1302,用于当判断所述恶意样本编码库中存在与所述待检测编码相似的恶意样本编码时,确定所述网址为恶意网址。
[0136]其中,所述恶意样本编码库中包括至少一个恶意样本编码,一个恶意样本编码指采用预设的编码算法对一个恶意网址对应的JS代码文本进行编码计算获得的编码。所述预设的编码算法优选为Simhash算法,所述恶意样本编码优选为Simhash编码。如果所述判断单元1301判断恶意样本编码库中存在与所述待检测编码相似的恶意样本编码,利用Simhash算法的特点可知,所述安全性确定单元1302可确定该待检测编码即为一恶意样本编码,从而可确定客户端上报的网址为一恶意网址。
[0137]本发明实施例通过对客户端上报的网址对应的网页文件中的JS代码文本进行编码及分析,既能够实现网址安全性的检测,又能够避免恶意网址通过JS代码加密封装所造成的检测失误,有效提升网址安全性检测的准确性,有效地保护客户端的网络安全。
[0138]本发明实施例还公开了一种服务器,该服务器可包含一网址安全性检测装置,该网址安全性检测装置的结构和功能可参见上述图3-图7所示实施例的相关描述,在此不赘述。
[0139]本发明实施例通过对客户端上报的网址对应的网页文件中的JS代码文本进行编码及分析,既能够实现网址安全性的检测,又能够避免恶意网址通过JS代码加密封装所造成的检测失误,有效提升网址安全性检测的准确性,有效地保护客户端的网络安全。
[0140]本发明实施例还公开了另一种服务器,具体请参见图8,为本发明实施例提供的一种服务器的结构示意图;本发明实施例的服务器包括:至少一个处理器201,例如CPU,至少一个通信总线202,至少一个网络接口 203,存储器204。其中,通信总线202用于实现这些组件之间的连接通信。其中,所述网络接口 203可选的可以包括标准的有线接口、无线接口(如W1-F1、移动通信接口等)。所述存储器204可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。所述存储器204可选的还可以是至少一个位于远离前述处理器201的存储装置。如图8所示,作为一种计算机存储介质的存储器204中存储有操作系统、网络通信模块,并存储有用于进行网址安全性检测的程序以及其他程序。
[0141]其中具体的,所述处理器201可以用于调用所述存储器204中存储的用于进行网址安全性检测的程序,执行以下步骤:
[0142]根据客户端上报的网址,从所述网址对应的网页文件中获取JS代码文本;
[0143]采用预设的编码算法将所述JS代码文本转换为待检测编码;
[0144]分析所述待检测编码以确定所述网址的安全性。
[0145]进一步,所述处理器201在执行根据客户端上报的网址,从所述网址对应的网页文件中获取JS代码文本的步骤时,具体执行以下步骤:
[0146]根据客户端上报的网址,下载所述网址对应的网页文件;
[0147]解析所述网页文件,获取所述网页文件的源代码文本;
[0148]从所述网页文件的源代码文本中提取JS代码文本。
[0149]进一步,所述预设的编码算法为Simhash算法;所述处理器201在执行采用预设的编码算法将所述JS代码文本转换为待检测编码的步骤时,具体执行以下步骤:
[0150]对所述JS代码文本进行分词处理,获得至少一个特征代码;
[0151]采用Hash算法对各特征代码进行编码计算,获得各特征代码的Hash编码;
[0152]对各特征代码的Hash编码进行加权处理,获得各特征代码的权值序列;
[0153]将所述各特征代码的权值序列进行合并处理,获得所述JS代码文本对应的权值序列串;
[0154]对所述JS代码文本对应的权值序列串进行降维处理,生成所述JS代码文本对应的Simhash编码;
[0155]将所述JS代码文本对应的Simhash编码确定为待检测编码。
[0156]进一步,所述处理器201在执行分析所述待检测编码以确定所述网址的安全性的步骤时,具体执行以下步骤:
[0157]判断恶意样本编码库中是否存在与所述待检测编码相似的恶意样本编码,所述恶意样本编码库中包括至少一个恶意样本编码,所述恶意样本编码为Simhash编码;
[0158]若判断所述恶意样本编码库中存在与所述待检测编码相似的恶意样本编码,则确定所述网址为恶意网址。
[0159]进一步,所述处理器201在执行判断恶意样本编码库中是否存在与所述待检测编码相似的恶意样本编码的步骤时,具体执行以下步骤:
[0160]将所述待检测编码与所述恶意样本编码库中的各恶意样本编码进行二进制位比较;
[0161]若所述恶意样本编码库中任一恶意样本编码与所述待检测编码具有差异二进制位,且差异二进制位的数量小于预设阈值,则判断所述恶意样本编码库中存在与所述待检测编码相似的恶意样本编码。
[0162]本发明实施例通过对客户端上报的网址对应的网页文件中的JS代码文本进行编码及分析,既能够实现网址安全性的检测,又能够避免恶意网址通过JS代码加密封装所造成的检测失误,有效提升网址安全性检测的准确性,有效地保护客户端的网络安全。
[0163]本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random AccessMemory, RAM)等。
[0164]以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
【权利要求】
1.一种网址安全性检测方法,其特征在于,包括: 根据客户端上报的网址,从所述网址对应的网页文件中获取JS代码文本; 采用预设的编码算法将所述JS代码文本转换为待检测编码; 分析所述待检测编码以确定所述网址的安全性。
2.如权利要求1所述的方法,其特征在于,所述根据客户端上报的网址,从所述网址对应的网页文件中获取JS代码文本,包括: 根据客户端上报的网址,下载所述网址对应的网页文件; 解析所述网页文件,获取所述网页文件的源代码文本; 从所述网页文件的源代码文本中提取JS代码文本。
3.如权利要求1或2所述的方法,其特征在于,所述预设的编码算法为Simhash算法; 所述采用预设的编码算法将所述JS代码文本转换为待检测编码,包括: 对所述JS代码文本进行分词处理,获得至少一个特征代码; 采用Hash算法对各特征代码进行编码计算,获得各特征代码的Hash编码; 对各特征代码的Hash编码进行加权处理,获得各特征代码的权值序列; 将所述各特征代码的权值序列进行合并处理,获得所述JS代码文本对应的权值序列串; 对所述JS代码文本对应的权值序列串进行降维处理,生成所述JS代码文本对应的Simhash 编码; 将所述JS代码文本对应的Simhash编码确定为待检测编码。
4.如权利要求3所述的方法,其特征在于,所述分析所述待检测编码以确定所述网址的安全性,包括: 判断恶意样本编码库中是否存在与所述待检测编码相似的恶意样本编码,所述恶意样本编码库中包括至少一个恶意样本编码,所述恶意样本编码为Simhash编码; 若判断所述恶意样本编码库中存在与所述待检测编码相似的恶意样本编码,则确定所述网址为恶意网址。
5.如权利要求4所述的方法,其特征在于,所述判断恶意样本编码库中是否存在与所述待检测编码相似的恶意样本编码,包括: 将所述待检测编码与所述恶意样本编码库中的各恶意样本编码进行二进制位比较;若所述恶意样本编码库中任一恶意样本编码与所述待检测编码具有差异二进制位,且差异二进制位的数量小于预设阈值,则判断所述恶意样本编码库中存在与所述待检测编码相似的恶意样本编码。
6.一种网址安全性检测装置,其特征在于,包括: 文本获取模块,用于根据客户端上报的网址,从所述网址对应的网页文件中获取JS代码文本; 编码模块,用于采用预设的编码算法将所述JS代码文本转换为待检测编码; 安全检测模块,用于分析所述待检测编码以确定所述网址的安全性。
7.如权利要求6所述的装置,其特征在于,所述文本获取模块包括: 下载单元,用于根据客户端上报的网址,下载所述网址对应的网页文件; 解析单元,用于解析所述网页文件,获取所述网页文件的源代码文本;文本提取单元,用于从所述网页文件的源代码文本中提取JS代码文本。
8.如权利要求6或7所述的装置,其特征在于,所述编码模块包括: 分词处理单元,用于对所述JS代码文本进行分词处理,获得至少一个特征代码;编码计算单元,用于采用Hash算法对各特征代码进行编码计算,获得各特征代码的Hash编码; 加权单元,用于对各特征代码的Hash编码进行加权处理,获得各特征代码的权值序列; 合并单元,用于将所述各特征代码的权值序列进行合并处理,获得所述JS代码文本对应的权值序列串; 降维处理单元,用于对所述JS代码文本的权值序列串进行降维处理,生成所述JS代码文本对应的Simhash编码; 编码确定单元,用于将所述 JS代码文本对应的Simhash编码确定为待检测编码; 其中,所述预设的编码算法为Simhash算法。
9.如权利要求8所述的装置,其特征在于,所述安全检测模块包括: 判断单元,用于判断恶意样本编码库中是否存在与所述待检测编码相似的恶意样本编码,所述恶意样本编码库中包括至少一个恶意样本编码,所述恶意样本编码为Simhash编码; 安全性确定单元,用于当判断所述恶意样本编码库中存在与所述待检测编码相似的恶意样本编码时,确定所述网址为恶意网址。
10.如权利要求9所述的装置,其特征在于,所述判断单元包括: 比较子单元,用于将所述待检测编码与所述恶意样本编码库中的各恶意样本编码进行二进制位比较; 判断子单元,用于当所述恶意样本编码库中任一恶意样本编码与所述待检测编码具有差异二进制位,且差异二进制位的数量小于预设阈值时,判断所述恶意样本编码库中存在与所述待检测编码相似的恶意样本编码。
11.一种服务器,其特征在于,包括如权利要求7-12任一项所述的网址安全性检测装置。
【文档编号】H04L29/06GK104079560SQ201410248182
【公开日】2014年10月1日 申请日期:2014年6月5日 优先权日:2014年6月5日
【发明者】张辉 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1