发布网友 发布时间:2022-04-30 23:01
共1个回答
热心网友 时间:2022-06-20 00:29
随着越来越多的企事业单位高度重视WEB应用安全尤其是网站安全,对WEB应用安全产品尤其是网页防篡改产品的需求持续升温,各式各样的网页防篡改产品大量涌现。面对如此众多的网页防篡改产品,如何判定一个产品是否能够真正实现网页防篡改?成为一件令用户感到头疼的事情。 公众浏览到的Web网页可以分成静态网页和动态网页: — 静态网页是Web服务器上的网页文件(如html文件)直接反馈给公众; — 动态网页是Web服务器上的脚本文件(如jsp文件)经过执行后,将其执行的结果反馈给公众,脚本通常会读取数据库中的数据,因此最后生成的网页可以认为是脚本文件和数据库内容的综合。 因此从理论上讲,网页防篡改系统所需要保护的网页,按上述描述可以归结于保护文件(无论是静态网页文件还是脚本文件)和保护数据库。 目前主流的网页防篡改产品中,保护文件主要使用两种技术,一种是以核心内嵌为基础的数字水印技术,该技术在文件发布时生成数字水印(单向鉴别散列值),在文件每次被Web服务器访问(含执行)时检查数字水印,并对结果进行相应处理。数字水印技术有着密码学理论基础,使用的HMAC-MD5算法也是RFC标准。这个技术不去猜测和防范文件被篡改的原因和手段,而是在其对外产生作用时进行完整性检查。该技术在安全上非常可靠,也有着广泛的应用基础。 另一种是以事件触发技术,利用操作系统的文件系统或驱动程序接口,在网页文件的被修改时进行合法性检查,对于非法操作进行报警和恢复。事件触发技术具有报警实时化的优点,对一些操作系统上的常规攻击手段有着一定的防护效果。但由于事件触发技术将安全保障建立在“网页不可能被隐秘地篡改”这种假设上,因此也没有对网页流出进行任何检查,在一些情形下(具体情形见下文),公众是有可能访问到被篡改网页的。虽然事件触发方式无法作到每一个网页在访问时都进行实时检测,也无法针对所有的攻击手段和操作系统漏洞起作用,但仍可以作为对核心内嵌检测技术的一种有益补充。 保护数据库主要使用应用防护技术,该技术对每个来自于网络的Web请求进行检查,根据已有的特征库判断是否含有攻击特性(目前主要是注入式攻击),如有攻击特性则立即阻止和报警。目前,应用防护技术不仅被网页防篡改系统广泛采用,它还是其他应用安全产品(如:应用防火墙、漏洞扫描器)的核心技术之一。但是,应用防护技术需要预先搜集和分析黑客攻击Web的手段,有针对性的进行基于特征库或攻击行为的防范,是一种类似于防病毒软件的手段,目前就技术而言,更是一种实践的技术而非一种理论的技术,存在误判和漏判的可能。 因此,一个有效的网页防篡改系统必须达到以下两个方面的要求: 1. 实现对网页文件的完整性检查和保护,并达到100%的防护效果,即被篡改网页不可能被访问到。 2. 实现对已知的来自于Web的数据库攻击手段的防范。