网页恶意篡改检测的研究与设计

2016-01-09 12:30张琦张洪玲张文华朱旭梅
电脑知识与技术 2015年30期

张琦+张洪玲+张文华+朱旭梅

摘要: 随着互联网的普及,网络平台已经广泛应用到各行各业,网站不仅成为向公众发布信息的媒体载体,也成为公众了解各行业的窗口。但是,网站正面临着一个非常严重的问题:黑客攻击篡改。网页恶意篡改会造成公众得到虚假的信息,从而造成很严重的后果。网页恶意篡改检测利用爬虫获取网页代码,利用正则表达式对文本进行分类,并且利用中文分词,汉明距离,感知哈希算法等先进的检测技术,对网页的内容进行篡改检测,以便管理员及时发现问题,确保网站的安全性。

关键词:恶意篡改;正则表达式;中文分词;汉明距离;感知哈希算法

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2015)30-0039-02

Research and Design of Malicious Tamper Detection

ZHANG Qi1,ZHANG Hong-ling2,ZHANG Wen-hua1,ZHU Xu-mei1

(1.Shandong Xiehe University,Jinan 250107,China;2.Qingdao Qiushi College,Qingdao 266108,China)

Abstract: With the popularity of the Internet, the network platform has been widely applied to all walks of life, not only be released to the public media of information carrier, has become the window of the public understanding of various industries. But, the website is facing a very serious problem: the hacker attacks tampered with. Web malicious tampering will cause the public to get false information, resulting in serious consequences. Malicious tampering detection using web crawler access web page code, using regular expressions to text classification, and the use of Chinese word segmentation, the hamming distance, advanced testing technology such as perception of hash algorithm, tamper detection of web content, so that the administrator found the problem in time, ensure the security of the site.

Key words : malicious tampering; regular expression; Chinese words segmentation; hamming distance ; perception of hash algorithm

1 概述

中国互联网信息中心(CNNIC)发布《第35次中国互联网络发展状况统计报告》[1],报告中显示,截止2014年12月,我国网民规模达6.49亿,2014年共计新增网民3117万人。互联网的普及率为47.9%,较2013年底提升了2.1个百分点。

随着互联网的普及,网络平台已应用到各行各业。但是,随之出现的问题就是网站恶意篡改。360公司云事业部副总经理胡振勇在2015中国互联网产业峰会表示:2014年全年,360网站安全检测平台共扫描各类网站164.2万个,其中被篡改的网站13.7万个,约占扫描网站总数的10.8%。

针对网站的现状,本文提出网页恶意篡改检测的一种方法。针对政府教育类等网站发布恶意信息、传播病毒等问题进行检测,以免发现不及时对公众造成危害。

2 核心技术

2.1 正则表达式

正则表达式[2]是一种对字符串进行操作的逻辑公式。把不规则的字符串,按照一定的过滤逻辑进行过滤后变为规则字符串。正则表达式都能提取出任何一个字符串的特定的部分。不仅对字符串过滤,并且对文本也可以进行操作,比如智能方式替换文本,还可以重新设置文本的格式,正则表达式所提供的方法是简单而有效的。由于正则表达式可以在很多工具中使用,所以很多编辑器都可以使用它来处理文本内容。

2.2 汉明距离

汉明距离[3-5]表示两个(相同长度)字对应位不同的数量,我们以d(x,y)表示两个字x,y之间的汉明距离。对两个字符串进行异或运算,并统计结果为1的个数,那么这个数就是汉明距离。

比较两个比特串有多少个位不一样,简洁的操作时就是两个比特串进行异或之后包含1的个数。汉明距在图像处理领域也有这广泛的应用,是比较二进制图像非常有效的手段。

3 系统架构图

互联网用户和黑客可同时通过网络访问网站,如果网站服务器遭到攻击,则网页被篡改,网页篡改检测系统会根据网站服务器中的网页内容和数据库中的内容比对判断是否被更改。系统架构如图1所示。

图1 系统结构图

4 检测流程图

恶意篡改检测流程如图2所示,首先通过网络爬虫程序对网站源码进行提取,然后将获取的网页源代码通过正则表达式分类,针对网页中的文本通过分词,hash,加权,合并,降维,将文本都转换为simhash 代码,再通过汉明距离计算文本的相似程度,来判断网页中的文本是否被篡改。如果网页中存在图片,通过感知哈希算法,把每张图片生成一个“指纹”字符串,然后比较不同图片的指纹,如果越接近,图片越相似。

图2 检测流程图

4.1中文分词

中文分词[6](Chinese Word Segmentation) 指的是将一个汉字序列按照一定的规则重新组合成一个一个的单独的词序列的过程。在本文选用SharpICTCLAS, ICTCLAS是有中科院计算机研究所研制的,当前世界上最好的汉语词法分析器,SharpICTCLAS是对ICTCLAS进行了调整和提升。

4.2汉明距离的文本相似度计算

通过第二步分词[7-8],运用hash算法把每个词变成hash值,然后按照单词的权重形成加权数字串,把上面各个单词算出来的序列值累加,变成只有一个序列串,把序列串变成0 1串,形成simhash签名,然后通过汉明距离计算机是否相似。

汉明距离的文本相似度计算,和向量空间模型的计算相比,避开了在欧氏空间中求相似度的大量乘法运算,并且没有采用传统的借用空间的理念,用码字的方法来表征文本信息的特征,提高了计算机速度,有一定的优越性。

4.3感知哈希算法

针对图片是否相同,利用感知哈希算法[9-11]的实现步骤:第一步,缩小图片尺寸;第二步,简化色彩;第三步,计算机平均值;第四步,比较像素的灰度;第五步,计算机哈希值,得到指纹以后,就可以对比不同的图片,看看64位中有多少位是不一样的。如果不相同的数据位不超过5,就说明两张图片很相似;如果大于10,就说明这是两张不同的图片。

5 总结与展望

随着互联网的迅速发展,网络安全问题愈加凸显,网页遭受异常攻击并篡改,已经严重影响到网络的健康发展,中国互联网安全的治理和规范是一个急需解决的问题,网页恶意篡改检测的研究是一个不断更新、不断完善的课题,虽然可以对网页中文本、链接以及图片进行篡改检测,但是在检测方法上有待进一步改进和扩展。

参考文献:

[1] CNNIC, 第33次中国互联网络发展状况统计报告[R].中国互联网信息中心, 2014.

[2] Friedl J E F,余晟.精通正则表达式[M]. 北京:电子工业出版社,2007:1-20.

[3] 张启宇,朱玲,孙爱娥.文本相似度的计算[J]. 电脑知识与技术,2008(34).

[4] 金博,史彦军,滕弘飞.基于语义理解的文本相似度算法[J]. 大连理工大学学报,2005(2).

[5] 张焕炯,王国胜,钟义信.基于汉明距离的文本相似度计算[J].计算机工程与应用, 2001(19).

[6] 黄昌宁,赵海.中文分词十年回顾[J].中文信息学报, 2007, 21(3): 8-19.

[7] 朱小娟,陈特放. 词频统计中文分词技术的研究[J]. 仪器仪表用户,2007(3).

[8] 张旭.一个基于词典与统计的中文分词算法[D]. 成都:电子科技大学, 2007.

[9] 牛夏牧,焦玉华.感知哈希综述[J]. 电子学报,2008(7).

[10] 张慧. 图像感知哈希测评基准及算法研究[D].哈尔滨:哈尔滨工业大学, 2009.

[11] 李志敏.哈希函数设计与分析[D]. 北京:北京邮电大学 2009.