掌桥专利:专业的专利平台
掌桥专利
首页

篡改网页混合检测技术

文献发布时间:2023-06-19 12:07:15


篡改网页混合检测技术

技术领域

本发明涉及信息技术安全领域,特别地涉及一种篡改网页混合检测技术。

背景技术

互联网技术自发明以来已经走过了60多个年头,全球互联网用户接近40亿,以超过全球人口总数的50%。很显然,互联网在我们生活中占据了越来越重的地位,而网站则是互联网中的重中之重。由于越来越多的用户加入,网站的社会影响力越来越大,随着这些Web应用及服务在功能和性能上不断的完善和提高,Web越来越多地承载了核心业务,如电子政务、电子商务、运营商的增值业务等。而在其安全性上却还存在响应的安全问题。近年来,国内外各种非法组织的不法企图,商业竞争对手的恶意攻击,不满情绪离职员工的泄愤等等各种原因都将导致网页被“变脸”。网页篡改攻击事件具有以下特点:篡改网站页面传播速度快、阅读人群多,复制容易,事后消除影响难,预先检查和实时防范较难,网络环境复杂难以追查责任。另外,攻击工具泛滥且向智能自动化趋势发展,据不完全统计,我国98%以上的站点都受到过不同程度的黑客攻击,攻击形式繁多,网站的安全防范日益成为大家关注的焦点,尤其是政府、金融类网站最易成为攻击目标。

针对这一情况,注重网页文件内容防护与用户动态交互的网站应用安全防护系统应运而生。目前比较流行的技术方案有事件触发技术,核心内嵌技术,和内核驱动技术。

事件触发技术作为一种篡改网页检测技术方式,是对文件入口和状态的一种监控技术,最早由Windows系统事件中记录关于文件的操作并针对文件操作进行对比恢复,后期由整个系统事件监控升级为针对文件操作的事件进行监控,事件触发技术II主要针对于Linux系统事件触发技术III主要针对于Windows系统。相对来说事件触发技术在监控进程存在的情况下能阻止篡改行为。

核心内嵌技术作为另一种篡改网页检测技术方式,是对于文件出口的检测,是嵌入在web应用中间件中的一种回执限制技术,需要与web应用中间件密切结合,适用环境和发布平台发布方式存在一定的限制要求。对一些小众化的web应用中间件可能存在兼容问题。

内核驱动技术作为篡改网页阻断技术,其技术核心就是模拟驱动程序监测文件系统的变化,把文件操作事件独立出来进行限制和阻断。针对的目标为文件入口,优点是独立于系统之外,更难以绕过。内核驱动技术因嵌入到系统内核中技术,系统内核接口信息不同会导致兼容性较差。

发明内容

针对以上技术问题,本发明公开了一种篡改网页混合检测技术,至少包括对文件操作数据的检测方法和对访问数据的检测方法,所述对文件操作数据检测方法包括修改操作检测步骤,具体包括以下步骤:

从文件监控接口读取文件操作数据;

解析所述文件操作数据中的文件路径及文件名称并计算合并文件数字水印;

将所述合并文件数字水印与预存的文件数字水印对比,若所述合并文件数字水印与预存的所述文件数字水印不同则对所述文件操作数据中的文件路径指向的文件执行修复操作;

返回所述文件监控接口并重复以上步骤,直到所述合并文件数字水印与预存的所述文件数字水印相同。

优选地,所述对文件操作数据检测方法还包括写入操作检测步骤,具体包括以下步骤:

从文件驱动接口接收所述文件操作数据;

将所述文件操作数据中的人员信息、进程信息、目录信息分别与配置中加载的人员信息、进程信息、目录信息进行轮询对比;

若所述人员信息、所述进程信息的对比结果均符合精确匹配规则且所述目录信息的对比结果符合模糊匹配规则,则允许写入操作。

优选地,所述精确匹配规则为第一精确匹配规则或第二精确匹配规则,所述第一精确匹配规则为:所述文件操作数据中的人员信息和进程信息分别与所述配置中加载的人员信息和进程信息完全一致;所述第二精确匹配规则为:所述文件操作数据中的人员信息和/或进程信息不被包含在所述配置中加载的人员信息和/或进程信息内。

优选地,所述模糊匹配规则包括:所述文件操作数据中的目录信息包含以所述配置中加载的目录信息起始的值。

优选地,所述合并数字水印包括由所述文件操作数据中的文件路径、文件内容、权限和时间属性生成的数字水印。

优选地,所述对访问数据的检测方法包括以下步骤:

从web中间件嵌入模块接口接收所述访问数据;

将所述访问数据转换为原始文件路径并解析其指向的被访问文件;

根据所述被访问文件计算所述被访问文件数字水印;

将所述被访问文件数字水印与预存的所述文件数字水印对比,若所述被访问文件数字水印与预存的所述文件数字水印相同,则允许所述web中间嵌入模块读取所述被访问文件,否则对所述被访问的文件执行所述修复操作。

优选地,所述对文件操作数据的检测方法中的步骤与所述对访问数据的检测方法中的步骤可以同时进行。

优选地,所述修复操作包括以下步骤:通过调用管理端接口向管理端发送信息;由所述管理端对被所述文件路径指向的文件或所述被访问的文件进行恢复。

本发明还公开了一种篡改网页混合检测计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现篡改网页混合检测技术中各模块的检测步骤。

本发明的有益效果在于,同时监控文件在整个发布访问流程中的状态,通过网页文件的上传,存储,访问三个状态中实时监控文件的正确性。在文件被使用的整个周期内监控文件的内容属性等信息,及时发现文件的变化,杜绝篡改页面被访问到。

附图说明

下面结合附图和实施方式具体解释本发明。

图1、一些实施方式涉及的篡改网页混合检测模块示意图;

图2、一些更为具体的实施方式中的篡改网页混合检测技术流程图。

具体实施方式

一些实施方式涉及的篡改网页混合检测技术,通过在WEB服务器系统中嵌入如图1的篡改网页混合检测模块,包括对文件操作数据的检测方法和对访问数据的检测方法,对文件操作数据检测方法包括修改操作检测步骤,具体包括以下步骤:

从文件监控接口读取文件操作数据;

解析所述文件操作数据中的文件路径及文件名称并计算合并文件数字水印;

将合并文件数字水印与预存的文件数字水印对比,若合并文件数字水印与预存的文件数字水印不同则对文件操作数据中的文件路径指向的文件执行修复操作;

返回文件监控接口并重复以上步骤,直到合并文件数字水印与预存的所述文件数字水印相同。

其中,术语“数字水印”包括一种基于内容的、非密码机制的计算机信息隐藏技术,通过将一些标识信息(即数字水印)直接嵌入数字载体中(包括多媒体、文档、软件等)或是间接表示(修改特定区域的结构),不影响原载体的使用价值,不容易被探知和再次修改,可以被生产方识别和辨认。包括通过计算Hash值作为数字水印。

使用的文件格式包括:Jason,txt,xml,等;不同格式的文件解析规则不同。

一些实施方式对文件操作数据检测方法还包括写入操作检测步骤,具体包括以下步骤:

从文件驱动接口接收所述文件操作数据;

将所述文件操作数据中的人员信息、进程信息、目录信息分别与配置中加载的人员信息、进程信息、目录信息进行轮询对比;

若所述人员信息、所述进程信息的对比结果均符合精确匹配规则且所述目录信息的对比结果符合模糊匹配规则,则允许写入操作。

其中,术语“轮询对比”包括以轮询方式读出要监控的网页并与真实网页相比较,用来判断网页内容的完整性,对于被篡改的网页进行报警和恢复。

一些实施方式,精确匹配规则为第一精确匹配规则或第二精确匹配规则,所述第一精确匹配规则为:所述文件操作数据中的人员信息和进程信息分别与所述配置中加载的人员信息和进程信息完全一致;所述第二精确匹配规则为:所述文件操作数据中的人员信息和/或进程信息不被包含在所述配置中加载的人员信息和/或进程信息内。

一些实施方式,模糊匹配规则包括:所述文件操作数据中的目录信息包含以所述配置中加载的目录信息起始的值。

一些实施方式,合并数字水印包括由所述文件操作数据中的文件路径、文件内容、权限和时间属性生成的数字水印。

一些实施方式,所述对访问数据的检测方法包括以下步骤:

从web中间件嵌入模块接口接收所述访问数据;

将所述访问数据转换为原始文件路径并解析其指向的被访问文件;

根据所述被访问文件计算所述被访问文件数字水印;

将所述被访问文件数字水印与预存的所述文件数字水印对比,若所述被访问文件数字水印与预存的所述文件数字水印相同,则允许所述web中间嵌入模块读取所述被访问文件,否则对所述被访问的文件执行所述修复操作。

其中,web中间件嵌入检测模块可采用(但不限于)以下技术手段实现:ISAPI,JAVA-filter,Apache-module。

一些实施方式中对文件操作数据的检测方法中的步骤与对访问数据的检测方法中的步骤同时进行。

一些实施方式中网页修复操作包括以下步骤:通过调用管理端接口向管理端发送信息;由管理端对被所述文件路径指向的文件或所述被访问的文件进行恢复。

一些更具体的实施方式,首先是通过系统内核加载文件驱动,通过文件驱动接口ieguard(write)监控文件的写入(或上传),调用文件权限对比接口判断写入文件的程序和用户是否有写入的权限,通过操作系统文件监控接口读取文件变更操作OS(change)读取文件修改动作匹配的文件,计算文件的数字水印与存储的数据水印,对比一致允许修改对比不一致恢复修改的文件,通过web中间件嵌入模块读取的访问文件接口,读取访问的文件,计算文件的数字水印与存储的数据水印,对比一致允许访问对比不一致恢复被访问的文件。解决了文件在整个网站存活周期内的准确性。

一些更具体的实施方式,采用如图2所示的实现方法,具体步骤如下:

步骤(S101):从系统内核中加载的文件驱动接口接收文件操作数据ieguardk:=make(map[string]interface{kernel,user,porce})。对比操作数据中操作的人员、进程、目录信息与配置中加载的人员、进程、目录信息进行轮询比对。采用模糊匹配法匹配目录下的全部文件Strfilename:=strings.Contains(ieguardkernel,ieguardkrulefile),

采用精确对比法对比人员和进程名称:

Struser:=fmt.Println("ieguardkuser"=="ieguardkruleuser"),

Strproce:=fmt.Println("ieguardkproce"=="ieguardkruleproce")

具体对比方式为目录匹配接收到的文件操作数据中是否以配置规则中目录开头的信息,对比接收到的文件操作进程及操作人员判断是否包含在匹配规则中。比对结果为true着允许写入文件内容及属性,比对结果为false则禁止文件写入操作。

步骤(S102):从文件操作接口读取文件操作数据

ieguardw:=make(map[string]interface{user,porce})。

步骤(S103):解析文件操作数据中的文件路径及文件名称,计算文件包含文件路径、内容、权限、时间属性合并计算出文件数字水印(计算方法类似MD5):func Encode(dataauthority string)string{h:=ieguradmd.New()h.Write([]byte(data))returnhex.EncodeToString(h.Sum(nil))},计算出的数字水印与预存的数字水印进行对比fmt.Println("d.Sum"=="h.Sum(nil)"),对比结果为false调用管理端接口向管理端发送信息,由管理端恢复文件,回归S112。直到对比结果为true。

步骤(S104):从web中间件嵌入模块接口接收访问数据,对数据进行转换,转换为原始文件路径并解析出被访问的文件。

步骤(S105):依据文件的内容计算出解析文件的数字水印

func Encode(data string)string{w:=i eguradmd.New()w.Write([]byte(data))return hex.EncodeToString(w.Sum(nil))},,计算出的数字水印与预存的数字水印进行对比:fmt.Println("d.Sum"=="w.Sum(nil)"),对比结果为false调用管理端接口向管理端发送信息,由管理端恢复文件。对比结果为true着告知web中间件模块可以读取文件内容。

本发明还提出一种篡改网页混合检测计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现本发明的方法中的步骤。

本说明书中描述的主题的实施方式和功能性操作可以在以下中实施:数字电子电路,有形实施的计算机软件或者固件,计算机硬件,包括本说明书中公开的结构及其结构等同体,或者上述中的一者以上的组合。本说明书中描述的主题的实施方式可以被实施为一个或多个计算机程序,即,一个或多个有形非暂时性程序载体上编码的计算机程序指令的一个或多个模块,用以被数据处理设备执行或者控制数据处理设备的操作。

作为替代或者附加,程序指令可以被编码在人工生成的传播信号上,例如,机器生成的电信号、光信号或者电磁信号,上述信号被生成为编码信息以传递到用数据处理设备执行的适当的接收器设备。计算机存储介质可以是机器可读存储装置、机器可读的存储基片、随机或者串行存取存储器装置或者上述装置中的一种或多种的组合。

计算机程序(还可以被称为或者描述为程序、软件、软件应用、模块、软件模块、脚本或者代码)可以以任意形式的编程语言而被写出,包括编译语言或者解释语言或者声明性语言或过程式语言,并且计算机程序可以以任意形式展开,包括作为独立程序或者作为模块、组件、子程序或者适于在计算环境中使用的其他单元。计算机程序可以但不必须对应于文件系统中的文件。程序可以被存储在保存其他程序或者数据的文件的一部分中,例如,存储在如下中的一个或多个脚本:在标记语言文档中;在专用于相关程序的单个文件中;或者在多个协同文件中,例如,存储一个或多个模块、子程序或者代码部分的文件。计算机程序可以被展开为执行在一个计算机或者多个计算机上,所述计算机位于一处,或者分布至多个场所并且通过通信网络而互相连接。

在本说明书中描述的处理和逻辑流程可以由一个或多个可编程计算机执行,该计算机通过运算输入数据并且生成输出而执行一个或多个的计算机程序,以运行函数。

适于实行计算机程序的计算机包括并且示例性地可以基于通用微处理器或者专用微处理器或者上述处理器两者,或者任意其他种类的中央处理单元。通常地,中央处理单元将接收来自只读存储器或者随机存取存储器或者这两者的指令和数据。计算机的主要元件是用于运行或者执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器装置。通常地,计算机还将包括或者是可操作性地耦合,以从用于存储数据的一个或多个大容量存储装置接收数据或者传递数据到大容量存储装置,或者接收和传递两者,该大容量存储器例如为磁盘、磁光盘或者光盘。

计算机可以通过将文档发送至由用户使用的装置并且接收来自该装置的文档而与用户交互;例如,通过响应于接收到的来自网络浏览器的请求,而将网页发送到用户的客户端装置上的网络浏览器。

本说明书中描述的主题的实施方式可以在计算系统中实施,该计算系统包括例如数据服务器这样的后端组件,或者包括例如应用服务器这样的中间组件,或者包括例如客户端计算机这样的前端组件,该客户端计算机具有图形用户界面或者网络浏览器,用户可以通过图形用户界面或者网络浏览器而与本说明书中描述的主题的实施进行交互,或者该计算机系统包括一个或多个这种后端组件、中间组件或者前端组件的任意组合。系统中的组件可以通过例如通信网络的任意形式或介质的数字数据通信而互相连接。

虽然本说明书包含很多具体的实施细节,但是这些不应当被解释为对任何发明的范围或者对可以要求保护的内容的范围的限制,而是作为可以使特定发明的特定实施方式具体化的特征的说明。在独立的实施方式的语境中的本说明书中描述的特定特征还可以与单个实施方式组合地实施。相反地,在单个实施方式的语境中描述的各种特征还可以独立地在多个实施方式中实施,或者在任何合适的子组合中实施。此外,虽然以上可以将特征描述为组合作用并且甚至最初这样要求,但是来自要求的组合的一个或多个特征在一些情况下可以从该组合去掉,并且要求的组合可以转向子组合或者子组合的变形。

已经描述了主题的特定实施方式。其他实施方式在以下权利要求的范围内。例如,在权利要求中记载的活动可以以不同的顺序执行并且仍旧实现期望的结果。作为一个实例,为了实现期望的结果,附图中描述的处理不必须要求示出的特定顺序或者顺序次序。在特定实现中,多任务处理和并行处理可以是有优势的。

相关技术
  • 篡改网页混合检测技术
  • 一种基于网页对比的网页篡改监控方法及系统
技术分类

06120113177561