[发明专利]一种在HTTP协议还原中实现自定义输出的方法及系统有效
申请号: | 201410571897.3 | 申请日: | 2014-10-23 |
公开(公告)号: | CN104320454B | 公开(公告)日: | 2018-01-09 |
发明(设计)人: | 邢壮 | 申请(专利权)人: | 北京锐安科技有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;G06F17/30 |
代理公司: | 北京君尚知识产权代理事务所(普通合伙)11200 | 代理人: | 余功勋 |
地址: | 100044 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 http 协议 还原 实现 自定义 输出 方法 系统 | ||
技术领域
本发明属于网络监控技术领域,具体涉及一种在HTTP协议还原中实现自定义输出的方法及系统。
背景技术
随着网络的普及和发展,协议还原技术在当今网络监控中的作用变得日益重要,基于HTTP协议的WEB应用种类繁多,为此将HTTP协议内容还原,对当今网络安全行业意义重大。
中国专利CN102098331A即“一种还原WEB类应用内容的方法及其系统”提供了一种高效还原HTTP协议内容的方法,此方法根据WEB类应用数据包特征写成模板文件,读取模板文件并解析,形成模板链表,将HTTP数据包头部解析,并取得URL、HOST等头部内容,将解析出的URL、HOST等字段与模板描述的URL、HOST等字段进行比对,找出匹配的模板,用匹配成功的模板中定义的关键字在HTTP内容部分提取出相应的内容。该技术可高效还原WEB类应用内容,并且可简单地通过增加模板来增加协议。
专利CN102098331A中提供的方法中通过模板文件设定协议类型,例如WDSL_TYPE=WEBBBS用来设定该模板为WebBBS类型的模板,传统的HTTP协议还原技术就是根据匹配模板的WDSL_TYPE类型然后进入HTTP模块中相应的子模块,如上述例子中进入WebBBS的解码模块,然后经过解码模块提取内容,最后输出。这种方法存在的缺陷是HTTP中每个解码模块都是事前定义好的,硬编码到程序中,每个解码模块都对应一个处理函数,函数内部除了完成解码功能以外,还要控制模块的输出类型,例如BBS模块输出到BBS类中,Blog模块输出到Blog类中等等。这样的方式处理数据,使得系统失去灵活性,如果系统接口修改或者HTTP协议子模块分类修改的话,程序中代码也需要随之修改。其实对于HTTP协议来讲,协议内部子模块划分输出是根据用户要求或者开发人员根据web站点类型主观上的划分,没有标准依据性。当输出分类重新划分或者子模块输出接口变更时,代码变动较大,造成后期维护成本增加,不利于系统整体的稳定性和输出高质量数据的准确性。
发明内容
本发明针对上述问题,通过利用控制输出配置文件中设定规则,并结合模板提取web内容,实现了一种在HTTP协议还原中实现自定义输出的方法及系统。
本发明采用的技术方案如下:
一种在HTTP协议还原中实现自定义输出的方法,其步骤包括:
1)添加输出控制的配置文件,所述输出控制的配置文件中包含HTTP模块划分子模块类型的配置项,以及子模块支持的解码对象的名称;
2)添加模板文件,所述模板文件中包含模板类型、解码对象名称和对应HTTP协议的三元组,其中模板类型和步骤1)所述输出控制的配置文件中子模块的名称一致,解码对象名称和步骤1)所述输出控制的配置文件中的解码对象的名称一致;
3)加载所述模板文件和所述输出控制的配置文件,并在模板文件的解码对象的结构体中添加一Index索引值,表示该解码对象对应所述输出控制的配置文件中的索引,即输出接口的索引位置;
4)获取需要解析的HTTP协议数据包,并解析HTTP协议,得到三元组;
5)将步骤4)所得三元组与所述模板文件中设置的三元组信息进行匹配,如果匹配,则按照模板文件中设置的字段规则在数据包中精确提取内容;如果不匹配,则直接忽略处理;
6)根据匹配的模板类型生成相应的输出结构体,输出结构体的元素数量与所述输出控制的配置文件中的解码对象数量一致,且步骤5)提取内容时将模板中解码对象的Index值保存到输出结构体数组中对应的index位置;
7)按照输出结构体的数组顺序输出记录。
一种采用上述方法的在HTTP协议还原中实现自定义输出的系统,其包括:
配置文件模块,用于添加输出控制的配置文件;
模板文件模块,用于添加模板文件;
文件加载模块,用于加载所述模板文件和所述输出控制的配置文件;
HTTP协议数据包获取及解析模块,用于获取需要解析的HTTP协议数据包,并解析HTTP协议,得到三元组;
匹配模块,用于将解析HTTP协议所得的三元组与所述模板文件中设置的三元组信息进行匹配;
内容提取模块,根据匹配模块的输出结果,按照模板文件中设置的字段规则在数据包中精确提取内容;
输出结构体生成模块,用于根据匹配的模板类型生成相应的输出结构体;
输出模块,用于按照输出结构体的数组顺序输出记录。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京锐安科技有限公司,未经北京锐安科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410571897.3/2.html,转载请声明来源钻瓜专利网。