陈纲
摘要:当今社会人们通过互联网获取大量信息,不法分子趁机利用网页篡改技术发布虚假、反动等信息,对国家和人民的利益造成了严重的损害,国家单位代表着国家形象,更成为了不法分子的头号目标。在政府推出信息安全等级保护工作后,很多国家单位应要求进行了备案,但在资金吃紧无法一步到位满足等级保护的要求情况下,就急需一种高效、快捷、低成本的方法来进行过渡,保护网站不被篡改。而笔者在研究过目前主流的网页防篡改技术后,选择了开发快,成本低的时间轮询方式,并结合散列算法进行改良,以此来针对性的解决上述问题,具体方法会在正文中详细说明。
关键词:网页防篡改;网站保护;低成本;时间轮询;散列算法
中图分类号:TP393 文献标识码:A 文章编号:1007-9416(2017)05-0193-01
随着信息时代发展至今,人们已经习惯通过互联网查询和获取所需信息,大量不法分子趁机利用网页篡改技术散布虚假、反动等信息,而他们的首要目标正是各类国字头单位的网站,因为这类网站都具有一定的知名度和公信力,被篡改后影响更为严重。尤其在国家重大政治活动时期,此类现象更是猖獗,对国家形象和人民利益造成了不小的损害。
为此,国家近两年开始开展了信息安全等级保护工作,不同单位根据重要性和规模大小,建立一个符合信息安全等级保护要求的机房,加上各类防御硬件设施,预算将达到几十万乃至上千万,但各个单位的财政情况不同,很多单位在预算吃紧的情况下,很难一步到位,慢慢投入建设需要时间,而由于这些单位已进行了等级保护备案,在这段时间内网站一旦出现篡改现象,除了之前所说的危害,还易受到调查处分。在这种情况下,就急需一种高效、快捷、成本低的方法来保护网站。笔者所在的单位,之前就处在这样的一个过渡时期,经过笔者的研究,总结出如下机制以供参考。
目前,网页防篡改方式主要采用的有文件系统监测、核心内嵌技术、时间轮询三种。文件系统监测存在致命弱点,即容易被绕开检测机制,比如它无法监测到直接写磁盘或利用操作系统漏洞等方式来篡改网站文件;核心内嵌技术比较全面,但服务器资源占用巨大,开发复杂度和成本较高,对于本身预算吃紧的单位并不适用;时间轮询方式开发最为简单、成本最低,时间最短,适合解决本文提出的问题,其最大的缺点是服务器资源占用较大(仍小于核心内嵌技术),但如笔者单位所上线的宣传型企业官网,没有庞大的网页数量和用户访问量,对服务器的压力本身较小,可以选择此种方式,另外本文后面还将重点介绍减少服务器资源消耗的改良方法。
1 具体实施方法
传统的时间轮询方式一般采取文件对比或者快照对比的方式,因为这些方式都是以字节流的形式进行对比为基础,所以对服务器资源的占用很严重,而我们将采取散列算法的方式(如MD5、SHA1等)进行对比,可以大幅减少服务器的压力。这里推荐使用MD5,MD5的运算速度比SHA1要快20%。需要提及的是,SHA1、SHA256和SHA512这三种算法碰撞率递减,安全性递增,但运算时间也是成倍增加。考虑到要解决服务器压力的首要课题,仍然建议使用MD5算法。
首先,将网站源程序建立一个备份,计算出其中每个文件的MD5值,将文件名和值保存在一个表中。然后创建一个循环程序,在单位时间周期内(如五分钟),计算发布网站程序中每个文件的MD5值,与表中对应文件名的值做比较,如果相同,则说明网站未被篡改;如果不同,则启动恢复模块,将备份网站程序中的该文件替换掉原发布网站中的;如果在表中未找到对应的文件名,说明该文件是被非法添加的,将其删除。
其中,单位时间周期的设置可根据实际情况,如网站程序的大小、服务器的配置以及网站访问人数等来设定。时间周期越长,服务器压力越小,但网页发生篡改后被用户访问到的风险越大;反之则相反。
另外要注意的是,在计算超大文件的MD5值时,没有必要将整个文件一次性读到内存里,因為MD5是每512位作为一个CHUNK进行计算的,所以可以每次读取一部分内容(最少512位),进行CHUNK部分的计算,之后再读取下一部分内容继续计算,最后进行汇总计算生成MD5值。
2 一些可选的扩展
可添加恢复文件日志以获得被攻击频率、攻击时间等信息,便于日后整改利用,也可以添加报警模块,发现文件被篡改及时向管理员以邮件、短信等形式进行通知。
防止网站备份文件或存放MD5值的表被恶意篡改,可将其打包成压缩文件,再改掉其文件名和后缀名,最后只需在程序中按原后缀名打开并实行解压读取即可。
现在主流语言中大多已包含计算MD5值的包与方法,直接导入调用即可,所以采取此机制可以很快开发出防篡改程序,且基本为“零”成本投入。在如今的网络大环境下,“红”与“黑”的斗争愈演愈烈,我们在不断探索新技术革新的同时,也要同时注意成本的控制与压缩,往往低成本及性价比高的方法要比“高精尖”更能够满足大众的需求,也更适合向社会推广。
参考文献
[1]杨雷.网页防篡改安全技术的研究与应用[J].西安电子科技大学,2010,06:25-32.
[2]丁胜.网站安全防篡改系统的研究与实现[J].上海交通大学,2009,10:4-7.
[3]张瑜.网页防篡改系统的应用分析[J].内蒙古电力技术,2010,02:23-25.endprint