(12)发明专利申请
(10)申请公布号 CN 106685936 A(43)申请公布日 2017.05.17
(21)申请号 201611158763.4(22)申请日 2016.12.14
(71)申请人 深圳市深信服电子科技有限公司
地址 518052 广东省深圳市南山区学苑大
道1001号南山智园A1栋一层(72)发明人 王立明
(74)专利代理机构 深圳市世纪恒程知识产权代
理事务所 44287
代理人 胡海国(51)Int.Cl.
H04L 29/06(2006.01)G06F 17/30(2006.01)
权利要求书2页 说明书10页 附图4页
(54)发明名称
网页篡改的检测方法及装置(57)摘要
本发明公开了一种网页篡改的检测方法,该方法包括:获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量;根据获取到的所述待检测网页的文本特征向量和所述网站的文本特征向量计算所述待检测网页和所述网站之间的文本相似度;判断所述文本相似度是否小于预设阈值;若是,则判定所述待检测网页为被篡改的网页。本发明还公开了一种网页篡改的检测装置。本发明能够提高网页篡改检测的准确率和效率。
CN 106685936 ACN 106685936 A
权 利 要 求 书
1/2页
1.一种网页篡改的检测方法,其特征在于,所述方法包括如下步骤:
获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量;
根据获取到的所述待检测网页的文本特征向量和所述网站的文本特征向量计算所述待检测网页和所述网站之间的文本相似度;
判断所述文本相似度是否小于预设阈值;若是,则判定所述待检测网页为被篡改的网页。2.如权利要求1所述的方法,其特征在于,所述获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量的步骤包括:
获取待检测网页的文本特征集和所述待检测网页所属网站的文本特征集,其中,所述待检测网页的文本特征集和所述网站的文本特征集包含相同的关键词;
根据所述关键词在所述待检测网页的文本特征集中的词频和权重进行计算,得到所述待检测网页的文本特征向量;
根据所述关键词在所述网站的文本特征集中的词频和权重进行计算,得到所述网站的文本特征向量。
3.如权利要求2所述的方法,其特征在于,所述获取待检测网页的文本特征集和所述待检测网页所属网站的文本特征集的步骤包括:
获取所述待检测网页所属网站的文本;
对获取到的所述文本进行中文分词和去停用词处理;从处理结果中提取若干关键词,得到所述网站的文本特征集;将所述网站的文本特征集作为所述待检测网页的文本特征集。4.如权利要求1至3任一项所述的方法,其特征在于,所述根据获取到的所述待检测网页的文本特征向量和所述网站的文本特征向量计算所述待检测网页和所述网站之间的文本相似度的步骤包括:
计算所述待检测网页的文本特征向量和所述网站的文本特征向量夹角的余弦值;将计算结果作为所述待检测网页和所述网站之间的文本相似度。5.如权利要求4所述的方法,其特征在于,所述获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量的步骤之前,还包括:
通过爬虫程序定时爬取预设的待检测网页;或者,当侦测到网络访问请求时,将所述网络访问请求对应的网页作为待检测网页。6.一种网页篡改的检测装置,其特征在于,所述装置包括:获取模块,用于获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量;
计算模块,用于根据获取到的所述待检测网页的文本特征向量和所述网站的文本特征向量计算所述待检测网页和所述网站之间的文本相似度;
判断模块,用于判断所述文本相似度是否小于预设阈值;若是,则判定所述待检测网页为被篡改的网页。
7.如权利要求6所述的装置,其特征在于,所述获取模块包括:获取单元,用于获取待检测网页的文本特征集和所述待检测网页所属网站的文本特征集,其中,所述待检测网页的文本特征集和所述网站的文本特征集包含相同的关键词;
2
CN 106685936 A
权 利 要 求 书
2/2页
第一计算单元,用于根据所述关键词在所述待检测网页的文本特征集中的词频和权重进行计算,得到所述待检测网页的文本特征向量;
第二计算单元,根据所述关键词在所述网站的文本特征集中的词频和权重进行计算,得到所述网站的文本特征向量。
8.如权利要求7所述的装置,其特征在于,所述获取单元还用于:获取所述待检测网页所属网站的文本;
对获取到的所述文本进行中文分词和去停用词处理;从处理结果中提取若干关键词,得到所述网站的文本特征集;将所述网站的文本特征集作为所述待检测网页的文本特征集。9.如权利要求6至8任一项所述的装置,其特征在于,所述计算模块还用于:
计算所述待检测网页的文本特征向量和所述网站的文本特征向量夹角的余弦值;将计算结果作为所述待检测网页和所述网站之间的文本相似度。10.如权利要求9所述的装置,其特征在于,所述装置还包括:爬取模块,用于通过爬虫程序定时爬取预设的待检测网页;所述获取模块还用于当侦测到网络访问请求时,将所述网络访问请求对应的网页作为待检测网页。
3
CN 106685936 A
说 明 书
网页篡改的检测方法及装置
1/10页
技术领域[0001]本发明涉及网络安全技术领域,尤其涉及网页篡改的检测方法及装置。
背景技术[0002]网页篡改是网站被攻陷后攻击者进行的一种恶意行为,攻击者通常会创建新的网页并写入恶意内容,或把已经存在的网页部分或全部内容修改为恶意内容。网页篡改不仅影响了网站正常运行,而且向公众传播了大量非法信息,危害巨大。目前网页篡改检测有以下两种方法:[0003]1)黑名单关键词检测:建立恶意内容的关键词黑名单,通过检查网页中是否含有黑名单中的关键词来判定网页是否被篡改。这种方法可能会由于黑名单中包含的关键词不够全面而产生漏报,此外还可能产生误报,例如政府公安部门发布某公告打击非法行为,其中包含了非法关键词,若该非法关键词在黑名单中则会产生误报,因为这个网页实际上为正常网页。[0004]2)网页数字指纹比对:预先计算网站每个网页的数字指纹(如md5值),并建立指纹库,然后相隔一段时间重新计算每个网页的数字指纹,若前后同一网页的数字指纹不同,则说明该网页被篡改。这种方法需要网站未被篡改前事先建立指纹库,每次正常修改和增加网页文件也必须更新指纹库,操作繁琐且效率较低;此外这种检测系统需要网站管理者在网站服务器上进行本地部署,不能应用于互联网大规模检测。发明内容[0005]本发明的主要目的在于提出一种网页篡改的检测方法及装置,旨在提高网页篡改检测的准确率和效率。[0006]为实现上述目的,本发明提供一种网页篡改的检测方法,所述方法包括如下步骤:[0007]获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量;[0008]根据获取到的所述待检测网页的文本特征向量和所述网站的文本特征向量计算所述待检测网页和所述网站之间的文本相似度;[0009]判断所述文本相似度是否小于预设阈值;[0010]若是,则判定所述待检测网页为被篡改的网页。[0011]可选地,所述获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量的步骤包括:[0012]获取待检测网页的文本特征集和所述待检测网页所属网站的文本特征集,其中,所述待检测网页的文本特征集和所述网站的文本特征集包含相同的关键词;[0013]根据所述关键词在所述待检测网页的文本特征集中的词频和权重进行计算,得到所述待检测网页的文本特征向量;[0014]根据所述关键词在所述网站的文本特征集中的词频和权重进行计算,得到所述网站的文本特征向量。
4
CN 106685936 A[0015]
说 明 书
2/10页
可选地,所述获取待检测网页的文本特征集和所述待检测网页所属网站的文本特
征集的步骤包括:[0016]获取所述待检测网页所属网站的文本;[0017]对获取到的所述文本进行中文分词和去停用词处理;[0018]从处理结果中提取若干关键词,得到所述网站的文本特征集;[0019]将所述网站的文本特征集作为所述待检测网页的文本特征集。[0020]可选地,所述根据获取到的所述待检测网页的文本特征向量和所述网站的文本特征向量计算所述待检测网页和所述网站之间的文本相似度的步骤包括:[0021]计算所述待检测网页的文本特征向量和所述网站的文本特征向量夹角的余弦值;[0022]将计算结果作为所述待检测网页和所述网站之间的文本相似度。[0023]可选地,所述获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量的步骤之前,还包括:[0024]通过爬虫程序定时爬取预设的待检测网页;[0025]或者,当侦测到网络访问请求时,将所述网络访问请求对应的网页作为待检测网页。[0026]此外,为实现上述目的,本发明还提供一种网页篡改的检测装置,所述装置包括:[0027]获取模块,用于获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量;[0028]计算模块,用于根据获取到的所述待检测网页的文本特征向量和所述网站的文本特征向量计算所述待检测网页和所述网站之间的文本相似度;[0029]判断模块,用于判断所述文本相似度是否小于预设阈值;若是,则判定所述待检测网页为被篡改的网页。[0030]可选地,所述获取模块包括:[0031]获取单元,用于获取待检测网页的文本特征集和所述待检测网页所属网站的文本特征集,其中,所述待检测网页的文本特征集和所述网站的文本特征集包含相同的关键词;[0032]第一计算单元,用于根据所述关键词在所述待检测网页的文本特征集中的词频和权重进行计算,得到所述待检测网页的文本特征向量;[0033]第二计算单元,根据所述关键词在所述网站的文本特征集中的词频和权重进行计算,得到所述网站的文本特征向量。[0034]可选地,所述获取单元还用于:[0035]获取所述待检测网页所属网站的文本;[0036]对获取到的所述文本进行中文分词和去停用词处理;[0037]从处理结果中提取若干关键词,得到所述网站的文本特征集;[0038]将所述网站的文本特征集作为所述待检测网页的文本特征集。[0039]可选地,所述计算模块还用于:[0040]计算所述待检测网页的文本特征向量和所述网站的文本特征向量夹角的余弦值;[0041]将计算结果作为所述待检测网页和所述网站之间的文本相似度。[0042]可选地,所述装置还包括:[0043]爬取模块,用于通过爬虫程序定时爬取预设的待检测网页;
5
CN 106685936 A[0044]
说 明 书
3/10页
所述获取模块还用于当侦测到网络访问请求时,将所述网络访问请求对应的网页
作为待检测网页。[0045]本发明获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量;根据获取到的所述待检测网页的文本特征向量和所述网站的文本特征向量计算所述待检测网页和所述网站之间的文本相似度;判断所述文本相似度是否小于预设阈值;若是,则判定所述待检测网页为被篡改的网页。本发明通过文本相似度来检测网页是否被篡改,相对于现有的黑名单关键词检测,不需要进行黑名单关键词收集,对网页篡改检测的误报和漏报比较少,提高了网页篡改检测的准确率;相对于现有的网页数字指纹比对,无需进行本地部署,可以进行远程的大规模检测,提高了网页篡改检测的效率。附图说明[0046]图1为本发明网页篡改的检测方法第一实施例的流程示意图;[0047]图2为图1中步骤S100的细化步骤示意图;[0048]图3为图2中步骤S110的细化步骤示意图;[0049]图4为本发明网页篡改的检测方法第二实施例的流程示意图;[0050]图5为网页的文本特征向量Dk与网页所属网站的文本特征向量D0之间的夹角关系示意图;[0051]图6为本发明网页篡改的检测方法第三实施例的流程示意图;[0052]图7为本发明网页篡改的检测装置第一实施例的功能模块示意图;[0053]图8为图7中获取模块的细化功能模块示意图;[0054]图9为本发明网页篡改的检测装置第二实施例的功能模块示意图。[0055]本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式[0056]应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。[0057]本发明提供一种网页篡改的检测方法。[0058]参照图1,图1为本发明网页篡改的检测方法第一实施例的流程示意图。所述方法包括如下步骤:[0059]步骤S100,获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量;[0060]在本实施例中,可由设置在Web浏览器和Web服务器之间的应用防火墙进行网页篡改检测。应用防火墙获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量,从而建立向量空间模型。[0061]在向量空间模型中,文本(Document,用D表示)泛指各种机器可读的记录,特征项(Term,用t表示)是指出现在文本D中且能够代表该文本内容的基本语言单位,主要是由词或者短语构成。文本可以用特征项集表示为D(T1,T2,…,Tn),其中Tk是特征项,1<=k<=n,例如一篇文档中有a、b、c、d四个特征项,那么这篇文档就可以表示为D(a,b,c,d)。[0062]进一步地,参照图2,图2为图1中步骤S100的细化步骤示意图。作为一种实施方式,所述步骤S100可以包括:
6
CN 106685936 A[0063]
说 明 书
4/10页
步骤S110,获取待检测网页的文本特征集和所述待检测网页所属网站的文本特征
集,其中,所述待检测网页的文本特征集和所述网站的文本特征集包含相同的关键词;[0064]步骤S120,根据所述关键词在所述待检测网页的文本特征集中的词频和权重进行计算,得到所述待检测网页的文本特征向量;[0065]步骤S130,根据所述关键词在所述网站的文本特征集中的词频和权重进行计算,得到所述网站的文本特征向量。[0066]首先,应用防火墙获取待检测网页的文本特征集和待检测网页所属网站的文本特征集,为保证这两个文本特征集具有可比性,这两个文本特征集包含相同的关键词。比如,获取待检测网页所属网站的文本特征集为D(T1,T2,…,Tm),则获取待检测网页的文本特征集也应该为D(T1,T2,…,Tm),其中T1,T2,…,Tm为特征项,即关键词,m为关键词的数量。网络管理人员在熟悉网站内容的情况下,可以根据被访问网站的主要内容预先设置文本特征集中的关键词,在大多数情况下,应用防火墙通过对被访问的网站的网页文本进行处理来自动获取关键词。[0067]在获取到关键词后,应用防火墙再根据关键词的词频和权重分别进行计算,得到待检测网页的文本特征向量和待检测网页所属网站的文本特征向量。本实施例主要通过TF-IDF(term frequency–inverse document frequency,词频--逆向文本频率)技术来计算得到文本特征向量,其原理为:词频计算参照TF公式:TF=N/M,即在在一篇M个词的文章中有N个该关键词,则TF=N/M为该关键词在这篇文章中的词频;逆向文本频率是用于衡量关键词权重的指数,可由公式IDF=log(D/Dw)计算而得,其中D为语料库的文档总数,Dw为关键词出现过的文档数,Dw越大,说明该关键词在越多的文档中出现过,该关键词就越不足以成为本文档的区别特征项,因而其权重越小。计算基于IDF的加权词频,即用关键词Tx的词频乘以Tx的逆向文本频率(Wx=TF(Tx)*IDF(Tx)),即可得到文本特征集D(T1,T2,…,Tm)对应的文本特征向量D(W1,W2,…,Wm)。[0068]根据上述原理计算待检测网页的文本特征向量的过程为:获取待检测网页的文本Dk,根据关键词在Dk中出现的次数和Dk中词语总数计算各个关键词在Dk中的词频,再将计算得到的词频基于IDF进行加权,最终得到待检测网页的文本特征向量Dk(Wk1,Wk2,…,Wkm)。特别地,在待检测网页中没有出现的关键词Tx的加权词频Wkx为0。[0069]根据上述原理计算整个网站的文本特征向量的过程为:将网站的所有网页的文本合并,得到总文本D0,根据关键词在D0中出现的次数和D0中词语总数计算各个关键词在D0中的词频,再将计算得到的词频基于IDF进行加权,最终得到整个网站的文本特征向量D0(W01,W02,…,W0m)。[0070]步骤S200,根据获取到的所述待检测网页的文本特征向量和所述网站的文本特征向量计算所述待检测网页和所述网站之间的文本相似度;[0071]需要说明的是,被篡改过的网页可能是浏览器浏览访问明显可见的,也可能是不易发现的暗链,通常被篡改的网页占整个网站网页的一小部分,并且被篡改的的网页内容与整个网站的内容有比较大的差别,而文本之间的相似程度通常和文本的内容是高度相关的,因此可以通过上述向量空间模型来比较文本相似度。[0072]具体地,在获取到待检测网页的文本特征向量和所述网站的文本特征向量之后,应用防火墙根据这两个特征向量之间的关系计算待检测网页和网站之间的文本相似度,比
7
CN 106685936 A
说 明 书
5/10页
如计算两个特征向量之间的距离、夹角等,将计算结果作为待检测网页和网站之间的文本相似度。[0073]步骤S300,判断所述文本相似度是否小于预设阈值;[0074]步骤S400,若所述文本相似度小于预设阈值,则判定所述待检测网页为被篡改的网页。[0075]应用防火墙判断计算得到的文本相似度是否小于预设阈值,其中,预设的文本相似度阈值可以通过对大量已经发生网页篡改的网站的网页进行自学习分类得到,网络管理者也可以根据实际需要对其进行灵活设置。若文本相似度小于预设阈值,应用防火墙即可判定检测的网页为被篡改的网页,此时应用防火墙可将检测结果进行上报并阻止用户访问该网页;否则判定检测的网页为正常网页。[0076]在本实施例中,应用防火墙获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量;根据获取到的所述待检测网页的文本特征向量和所述网站的文本特征向量计算所述待检测网页和所述网站之间的文本相似度;判断所述文本相似度是否小于预设阈值;若是,则判定所述待检测网页为被篡改的网页。本实施例通过文本相似度来检测网页是否被篡改,相对于现有的黑名单关键词检测,不需要进行黑名单关键词收集,对网页篡改检测的误报和漏报比较少,提高了网页篡改检测的准确率;相对于现有的网页数字指纹比对,无需进行本地部署,可以进行远程的大规模检测,提高了网页篡改检测的效率。[0077]进一步地,参照图3,图3为图2中步骤S110的细化步骤示意图。基于上述的实施例,所述步骤S110可以包括:[0078]步骤S111,获取所述待检测网页所属网站的文本;[0079]步骤S112,对获取到的所述文本进行中文分词和去停用词处理;[0080]步骤S113,从处理结果中提取若干关键词,得到所述网站的文本特征集;[0081]步骤S114,将所述网站的文本特征集作为所述待检测网页的文本特征集。[0082]在本实施例中,为使关键词的提取结果更为准确,应用防火墙首先对网站的所有网页进行预处理,除去包括HTML(HyperText Markup Language,超文本标记语言)代码在内的所有代码,只保留网页的文字内容,形成文本D1,D2,…,Dn(其中n为网页数量),将这些文本合并,得到整个网站的文本D0;然后,对D0进行中文分词和去停用词处理,中文分词是将一个汉字序列切分成一个一个单独的词,去停用词是按照停用词表中的词语将语料中对文本内容识别意义不大但出现频率很高的词、符号、标点及乱码等去掉,如“的,和,要,是,这”等词几乎出现在任何一篇中文文本中,但是它们对文本所表达的意思几乎没有任何贡献,将这些词设置在停用词表中,就可以根据停用词表将文本中这些没有实际意义的词去掉。由此,得到了整个网站的文本D0的预处理结果。[0083]应用防火墙可以计算预处理结果中的词语的词频,若某词语的词频达到一预设值,则将该词语作为文本D0的关键词,由此提取文本D0的所有关键词,进而得到网站的文本特征集D(T1,T2,…,Tm),该文本特征集同时作为待检测网页的文本特征集。[0084]进一步地,参照图4,图4为本发明网页篡改的检测方法第二实施例的流程示意图。基于上述图1所示的实施例,所述步骤S200可以包括:[0085]步骤S210,计算所述待检测网页的文本特征向量和所述网站的文本特征向量夹角的余弦值;
8
CN 106685936 A[0086]
说 明 书
6/10页
步骤S220,将计算结果作为所述待检测网页和所述网站之间的文本相似度。
[0087]在本实施例中,应用防火墙计算待检测网页的文本特征向量和网站的文本特征向量夹角的余弦值,设网站的文本特征向量为D0(W01,W02,…,W0m),网页的文本特征向量为Dk(Wk1,Wk2,…,Wkm),其中k为第k个网页,则向量D0和向量Dk的夹角的余弦值计算公式为:
[0088]
将上述余弦值作为待检测网页和整个网站之间的文本相似度值,该值越大,则向量D0和向量Dk的夹角越小,表示待检测网页与网站的文本相似度越高;该值越小,则向量D0和向量Dk的夹角越大,表示待检测网页与网站的文本相似度越低。如图5所示,图5为网页的文本特征向量Dk与网页所属网站的文本特征向量D0之间的夹角关系示意图。[0090]本实施例通过计算网页的文本特征向量与网页所属网站的文本特征向量之间的夹角的余弦值,能够实现定量分析待检测网页和整个网站的文本相似度,分析方式较为合理可靠。[0091]进一步地,参照图6,图6为本发明网页篡改的检测方法第三实施例的流程示意图。基于上述的实施例,所述步骤S100之前,还可以包括:[0092]步骤S500,通过爬虫程序定时爬取预设的待检测网页;[0093]或者步骤S600,当侦测到网络访问请求时,将所述网络访问请求对应的网页作为待检测网页。[0094]在本实施例中,应用防火墙可进行网页篡改的主动检测。具体地,可在应用防火墙中设置一个爬虫程序,爬虫程序根据既定的抓取目标,定时访问万维网上的网页与相关的链接,并下载网页内容,其中,爬虫程序的抓取目标可以为与某一特定主题内容相关的网页,也可以根据需要扩大抓取范围,具体实施中可由网络管理人员预先进行设置。之后,应用防火墙将爬虫程序爬取到的网页作为待检测网页,并逐一判断这些网页是否被篡改。[0095]此外,应用防火墙也可进行网页篡改的被动检测。具体地,应用防火墙在侦测到网络访问请求时,将该网络访问请求对应的网页作为待检测网页,这样,用户访问网站的流量通过应用防火墙时,就可以实时检测出用户当前访问的网页是否被篡改。在更多的实施例中,为提高被动检测效率,被动检测也可以依赖于主动检测的检测结果,应用防火墙在进行主动检测时,将网站文本特征集、网站文本特征向量等信息存入预设的文本特征数据库中,当用户访问Web服务器时,HTTP(HyperText Transfer Protocol,超文本传输协议)流量通过应用防火墙,防火墙记录URL(Uniform Resoure Locator,统一资源定位符)和相应的HTTP响应内容,并获取HTTP响应内容对应的网页的文本特征向量,将获取到的网页的文本特征向量与文本特征数据库中对应网站的文本特征向量进行文本相似度比较,以判断该网页是否被篡改。[0096]在本实施例中,通过设置爬虫程序定时爬取既定的网页,进而进行网页篡改的主动检测,无需人工干预,且可以进行远程的大规模检测,提高了网页篡改检测的效率;通过将用户当前访问的网页作为待检测网页,实现了网页篡改检测的实时性。[0097]本发明还提供一种网页篡改的检测装置。[0098]参照图7,图7为本发明网页篡改的检测装置第一实施例的功能模块示意图。所述
9
[0089]
CN 106685936 A
说 明 书
7/10页
装置包括:[0099]获取模块10,用于获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量;[0100]在本实施例中,可由设置在Web浏览器和Web服务器之间的应用防火墙进行网页篡改检测。获取模块10获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量,从而建立向量空间模型。[0101]在向量空间模型中,文本(Document,用D表示)泛指各种机器可读的记录,特征项(Term,用t表示)是指出现在文本D中且能够代表该文本内容的基本语言单位,主要是由词或者短语构成。文本可以用特征项集表示为D(T1,T2,…,Tn),其中Tk是特征项,1<=k<=n,例如一篇文档中有a、b、c、d四个特征项,那么这篇文档就可以表示为D(a,b,c,d)。[0102]参照图8,图8为图7中获取模块的细化功能模块示意图。作为一种实施方式,所述获取模块10可以包括:[0103]获取单元11,用于获取待检测网页的文本特征集和所述待检测网页所属网站的文本特征集,其中,所述待检测网页的文本特征集和所述网站的文本特征集包含相同的关键词;[0104]第一计算单元12,用于根据所述关键词在所述待检测网页的文本特征集中的词频和权重进行计算,得到所述待检测网页的文本特征向量;[0105]第二计算单元13,根据所述关键词在所述网站的文本特征集中的词频和权重进行计算,得到所述网站的文本特征向量。[0106]首先,获取单元11获取待检测网页的文本特征集和待检测网页所属网站的文本特征集,为保证这两个文本特征集具有可比性,这两个文本特征集包含相同的关键词。比如,获取待检测网页所属网站的文本特征集为D(T1,T2,…,Tm),则获取待检测网页的文本特征集也应该为D(T1,T2,…,Tm),其中T1,T2,…,Tm为特征项,即关键词,m为关键词的数量。网络管理人员在熟悉网站内容的情况下,可以根据被访问网站的主要内容预先设置文本特征集中的关键词,在大多数情况下,应用防火墙通过对被访问的网站的网页文本进行处理来自动获取关键词。[0107]在获取到关键词后,第一计算单元12和第二计算单元13再根据关键词的词频和权重分别进行计算,得到待检测网页的文本特征向量和待检测网页所属网站的文本特征向量。本实施例主要通过TF-IDF(term frequency inverse document frequency,词频--逆向文本频率)技术来计算得到文本特征向量,其原理为:词频计算参照TF公式:TF=N/M,即在在一篇M个词的文章中有N个该关键词,则TF=N/M为该关键词在这篇文章中的词频;逆向文本频率是用于衡量关键词权重的指数,可由公式IDF=log(D/Dw)计算而得,其中D为语料库的文档总数,Dw为关键词出现过的文档数,Dw越大,说明该关键词在越多的文档中出现过,该关键词就越不足以成为本文档的区别特征项,因而其权重越小。计算基于IDF的加权词频,即用关键词Tx的词频乘以Tx的逆向文本频率(Wx=TF(Tx)*IDF(Tx)),即可得到文本特征集D(T1,T2,…,Tm)对应的文本特征向量D(W1,W2,…,Wm)。[0108]根据上述原理,第一计算单元12计算待检测网页的文本特征向量的过程为:获取待检测网页的文本Dk,根据关键词在Dk中出现的次数和Dk中词语总数计算各个关键词在Dk中的词频,再将计算得到的词频基于IDF进行加权,最终得到待检测网页的文本特征向量Dk
10
CN 106685936 A
说 明 书
8/10页
(Wk1,Wk2,…,Wkm)。特别地,在待检测网页中没有出现的关键词Tx的加权词频Wkx为0。[0109]根据上述原理,第二计算单元13计算整个网站的文本特征向量的过程为:将网站的所有网页的文本合并,得到总文本D0,根据关键词在D0中出现的次数和D0中词语总数计算各个关键词在D0中的词频,再将计算得到的词频基于IDF进行加权,最终得到整个网站的文本特征向量D0(W01,W02,…,W0m)。[0110]计算模块20,用于根据获取到的所述待检测网页的文本特征向量和所述网站的文本特征向量计算所述待检测网页和所述网站之间的文本相似度;[0111]需要说明的是,被篡改过的网页可能是浏览器浏览访问明显可见的,也可能是不易发现的暗链,通常被篡改的网页占整个网站网页的一小部分,并且被篡改的的网页内容与整个网站的内容有比较大的差别,而文本之间的相似程度通常和文本的内容是高度相关的,因此可以通过上述向量空间模型来比较文本相似度。[0112]具体地,在获取模块10获取到待检测网页的文本特征向量和所述网站的文本特征向量之后,计算模块20根据这两个特征向量之间的关系计算待检测网页和网站之间的文本相似度,比如计算两个特征向量之间的距离、夹角等,将计算结果作为待检测网页和网站之间的文本相似度。[0113]判断模块30,用于判断所述文本相似度是否小于预设阈值;若是,则判定所述待检测网页为被篡改的网页。[0114]判断模块30判断计算得到的文本相似度是否小于预设阈值,其中,预设的文本相似度阈值可以通过对大量已经发生网页篡改的网站的网页进行自学习分类得到,网络管理者也可以根据实际需要对其进行灵活设置。若文本相似度小于预设阈值,判断模块30即可判定检测的网页为被篡改的网页,此时应用防火墙可将检测结果进行上报并阻止用户访问该网页;否则判定检测的网页为正常网页。[0115]在本实施例中,获取模块10获取待检测网页的文本特征向量和所述待检测网页所属网站的文本特征向量;计算模块20根据获取到的所述待检测网页的文本特征向量和所述网站的文本特征向量计算所述待检测网页和所述网站之间的文本相似度;判断模块30判断所述文本相似度是否小于预设阈值;若是,则判定所述待检测网页为被篡改的网页。本实施例通过文本相似度来检测网页是否被篡改,相对于现有的黑名单关键词检测,不需要进行黑名单关键词收集,对网页篡改检测的误报和漏报比较少,提高了网页篡改检测的准确率;相对于现有的网页数字指纹比对,无需进行本地部署,可以进行远程的大规模检测,提高了网页篡改检测的效率。[0116]进一步地,继续参照图8,所述获取单元11还用于:获取所述待检测网页所属网站的文本;对获取到的所述文本进行中文分词和去停用词处理;从处理结果中提取若干关键词,得到所述网站的文本特征集;将所述网站的文本特征集作为所述待检测网页的文本特征集。[0117]在本实施例中,为使关键词的提取结果更为准确,获取单元11首先对网站的所有网页进行预处理,除去包括HTML(HyperText Markup Language,超文本标记语言)代码在内的所有代码,只保留网页的文字内容,形成文本D1,D2,…,Dn(其中n为网页数量),将这些文本合并,得到整个网站的文本D0;然后,对D0进行中文分词和去停用词处理,中文分词是将一个汉字序列切分成一个一个单独的词,去停用词是按照停用词表中的词语将语料中对文
11
CN 106685936 A
说 明 书
9/10页
本内容识别意义不大但出现频率很高的词、符号、标点及乱码等去掉,如“的,和,要,是,这”等词几乎出现在任何一篇中文文本中,但是它们对文本所表达的意思几乎没有任何贡献,将这些词设置在停用词表中,就可以根据停用词表将文本中这些没有实际意义的词去掉。由此,得到了整个网站的文本D0的预处理结果。[0118]获取单元11可以计算预处理结果中的词语的词频,若某词语的词频达到一预设值,则将该词语作为文本D0的关键词,由此提取文本D0的所有关键词,进而得到网站的文本特征集D(T1,T2,…,Tm),该文本特征集同时作为待检测网页的文本特征集。[0119]进一步地,继续参照图7,所述计算模块20还用于:计算所述待检测网页的文本特征向量和所述网站的文本特征向量夹角的余弦值;将计算结果作为所述待检测网页和所述网站之间的文本相似度。[0120]在本实施例中,计算模块20计算待检测网页的文本特征向量和网站的文本特征向量夹角的余弦值,设网站的文本特征向量为D0(W01,W02,…,W0m),网页的文本特征向量为Dk(Wk1,Wk2,…,Wkm),其中k为第k个网页,则向量D0和向量Dk的夹角的余弦值计算公式为:
[0121]
将上述余弦值作为待检测网页和整个网站之间的文本相似度值,该值越大,则向量D0和向量Dk的夹角越小,表示待检测网页与网站的文本相似度越高;该值越小,则向量D0和向量Dk的夹角越大,表示待检测网页与网站的文本相似度越低。如图5所示,图5为网页的文本特征向量Dk与网页所属网站的文本特征向量D0之间的夹角关系示意图。[0123]本实施例通过计算网页的文本特征向量与网页所属网站的文本特征向量之间的夹角的余弦值,能够实现定量分析待检测网页和整个网站的文本相似度,分析方式较为合理可靠。[0124]进一步地,参照图9,图9为本发明网页篡改的检测装置第二实施例的功能模块示意图。基于上述的实施例,所述装置还可以包括:[0125]爬取模块40,用于通过爬虫程序定时爬取预设的待检测网页;[0126]所述获取模块10还用于当侦测到网络访问请求时,将所述网络访问请求对应的网页作为待检测网页。[0127]在本实施例中,应用防火墙可进行网页篡改的主动检测。具体地,可在应用防火墙中设置一个爬虫程序,爬虫程序根据既定的抓取目标,定时访问万维网上的网页与相关的链接,并下载网页内容,其中,爬虫程序的抓取目标可以为与某一特定主题内容相关的网页,也可以根据需要扩大抓取范围,具体实施中可由网络管理人员预先进行设置。之后,应用防火墙将爬虫程序爬取到的网页作为待检测网页,并逐一判断这些网页是否被篡改。[0128]此外,应用防火墙也可进行网页篡改的被动检测。具体地,获取模块10在侦测到网络访问请求时,将该网络访问请求对应的网页作为待检测网页,这样,用户访问网站的流量通过应用防火墙时,就可以实时检测出用户当前访问的网页是否被篡改。在更多的实施例中,为提高被动检测效率,该被动检测也可以依赖于主动检测的检测结果,应用防火墙在进行主动检测时,将网站文本特征集、网站文本特征向量等信息存入预设的文本特征数据库中,当用户访问Web服务器时,HTTP(HyperText Transfer Protocol,超文本传输协议)流量
12
[0122]
CN 106685936 A
说 明 书
10/10页
通过应用防火墙,防火墙记录URL(Uniform Resoure Locator,统一资源定位符)和相应的HTTP响应内容,并获取HTTP响应内容对应的网页的文本特征向量,将获取到的网页的文本特征向量与文本特征数据库中对应网站的文本特征向量进行文本相似度比较,以判断该网页是否被篡改。[0129]在本实施例中,通过设置爬虫程序定时爬取既定的网页,进而进行网页篡改的主动检测,无需人工干预,且可以进行远程的大规模检测,提高了网页篡改检测的效率;通过将用户当前访问的网页作为待检测网页,实现了网页篡改检测的实时性。[0130]以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
13
CN 106685936 A
说 明 书 附 图
1/4页
图1
图2
14
CN 106685936 A
说 明 书 附 图
2/4页
图3
图4
15
CN 106685936 A
说 明 书 附 图
3/4页
图5
图6
16
CN 106685936 A
说 明 书 附 图
4/4页
图7
图8
图9
17
因篇幅问题不能全部显示,请点此查看更多更全内容