一种防止网页劫持的方法及网关与流程

文档序号:11960103阅读:263来源:国知局
一种防止网页劫持的方法及网关与流程

本发明涉及网络技术领域,具体涉及一种防止网页劫持的方法及网关。



背景技术:

随着网络技术的发展,智能设备(例如智能手机、平板电脑、笔记本电脑等具有处理功能的设备)的普及,通过智能设备浏览网页获取信息已经成为人们日常生活的一部分。

现有技术中智能设备浏览网页的场景如图1所示,浏览网页的流程如下步骤1至5:

1、智能设备与网站服务器通过“三次握手”过程建立通信连接。

2、智能设备发起超文本传输协议(HyperText Transfer Protocol,HTTP)的获取(GET)请求,GET请求报文中包含要查看的网页信息。

3、网关(例如家庭网关、企业网关)获取到GET请求报文并转发到运营商设备(例如运营商网关),运营商设备将GET请求报文发送到网站服务器。

4、网站服务器收到GET请求报文后,发送应答报文,应答报文中携带有网页信息对应的页面。

5、运营商设备获取应答报文并转发给网关,网关将应答报文发送到智能设备,智能设备通过浏览器展现页面。

但是部分恶意运营商在运营商设备处旁路部署了劫持服务器,劫持服务器对用户请求的网页进行了劫持,劫持原理是劫持服务器对穿过运营商设备的流量进行修改,当运营商设备获取到GET请求报文后,劫持服务器向运营商设备发送修改过的网页,如修改网页源码,插入恶意广告,或者修HTTP报头的响应码,通过重定向特征码将流量重定向到广告页面。运营商设备向智能设备回复修改过的网页,由于劫持服务器与运营商设备为旁路部署,这样含有恶意广告的网页会先于正常的网页到达智能设备,结果是智能设备打开的是被窜改的含有恶意广告的网页,正常网页的报文到达后被丢弃。

可见,由于存在网页劫持的现象,在浏览网页时,用户经常会发现打开的网页有广告弹窗,或者网页的内容被替换为其它无关内容,给用户带来安全隐患,例如隐私泄露等。



技术实现要素:

鉴于上述问题,本发明提出了克服上述问题的一种防止网页劫持的方法及网关。

第一方面,本发明提出一种防止网页劫持的方法,包括:

获取用户终端发送的超文本传输协议HTTP报文;

判断所述HTTP报文是否为获取GET请求报文;

若是,则对所述GET请求报文进行分段,得到至少两个分段报文;

将各分段报文发送到运营商设备,以防止所述GET请求报文请求的网页在所述运营商设备被劫持。

可选的,所述对所述GET请求报文进行分段,得到至少两个分段报文,包括:

对所述GET请求报文进行分段,得到至少两个分段报文,并在各分段报文设置第一分段标识信息以及第二分段标识信息;

其中,所述第一分段标识信息用于标识报文为分段报文;所述第二分段标识信息用于标识分段报文在所述GET请求报文的分段次序。

可选的,所述对所述GET请求报文进行分段,得到至少两个分段报文,包括:

对所述GET请求报文的数据区进行分段,得到至少两个分段数据区,所述GET请求报文的数据区携带有所述请求的网页的信息;

将所述GET请求报文的非数据区与各分段数据区组合,得到与各分段数据区一一对应的分段报文。

可选的,所述对所述GET请求报文进行分段,得到至少两个分段报文,包括:

对所述GET请求报文的数据区和非数据区进行分段,得到至少两个分段报文。

可选的,所述判断所述HTTP报文是否为获取GET请求报文,包括:

检测所述HTTP报文的第54字节、第55字节和第56字节的值;

若第54字节的值为01000111、第55字节的值为01000101以及第56字节的值为01010100,则判定所述HTTP报文为获取GET请求报文。

第二方面,本发明还提出一种网关,包括:

获取单元,用于获取用户终端发送的超文本传输协议HTTP报文;

判断单元,用于判断所述HTTP报文是否为获取GET请求报文;

分段单元,用于在所述判断单元判定所述HTTP报文为获取GET请求报文后,对所述GET请求报文进行分段,得到至少两个分段报文;

发送单元,用于将各分段报文发送到运营商设备,以防止所述GET请求报文请求的网页在所述运营商设备被劫持。

可选的,所述分段单元,用于对所述GET请求报文进行分段,得到至少两个分段报文,并在各分段报文设置第一分段标识信息以及第二分段标识信息;其中,所述第一分段标识信息用于标识报文为分段报文;所述第二分段标识信息用于标识分段报文在所述GET请求报文的分段次序。

可选的,所述分段单元,用于对所述GET请求报文的数据区进行分段,得到至少两个分段数据区,所述GET请求报文的数据区携带有所述请求的网页的信息;将所述GET请求报文的非数据区与各分段数据区组合,得到与各分段数据区一一对应的分段报文。

可选的,所述分段单元,用于对所述GET请求报文的数据区和非数据区进行分段,得到至少两个分段报文。

可选的,所述判断单元,用于检测所述HTTP报文的第54字节、第55字节和第56字节的值;若第54字节的值为01000111、第55字节的值为01000101以及第56字节的值为01010100,则判定所述HTTP报文为获取GET请求报文。

相比于现有技术,本发明提出的防止网页劫持的方法及网关,通过将用户终端发送的HTTP的GET请求报文进行分段,使劫持服务器无法识别GET请求报文,从而防止网页被劫持,提高了用户浏览网页的安全性。

附图说明

图1为现有技术中一种智能设备浏览网页的场景示意图;

图2为本发明第一实施例提供的一种防止网页劫持的方法流程图;

图3为本发明第二实施例提供的一种网关结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。

需要说明的是,本文中提及的用户终端可以包括任何类型的智能设备,诸如手持式计算机、个人数字助理PDA、网络家电、智能电视、智能手机、平板电脑、笔记本电脑、掌上游戏机、智能手表、媒体播放器或者这些数据处理设备或其他数据处理设备中的任何两个或多个的组合。

需要说明的是,本文中,“第一”和“第二”仅仅用来将相同的名称区分开来,而不是暗示这些名称之间的关系或者顺序。

如图2所示,本实施例公开一种防止网页劫持的方法,该方法的执行主体为网关,网关包括家庭网关,企业网关等非运营商网关。所述方法可包括以下步骤201至204:

201、获取用户终端发送的超文本传输协议HTTP报文。

本实施例中,获取HTTP报文的方式可以是接收用户终端发送的HTTP报文。

202、判断所述HTTP报文是否为获取GET请求报文。

203、若是,则对所述GET请求报文进行分段,得到至少两个分段报文。

本实施例中,若步骤202中判定所述HTTP报文不是获取GET请求报文,则正常转发该HTTP报文。

204、将各分段报文发送到运营商设备,以防止所述GET请求报文请求的网页在所述运营商设备被劫持。

本实施例中,运营商设备接收到的不是GET请求报文,因此,劫持服务器无法劫持用户请求的网页,从而可防止网页劫持。

本实施例中,运营商设备接收到各分段报文后,将各分段报文发送到网站服务器,网站服务器将各分段报文合并为GET请求报文,并将携带有GET请求报文请求的网页的应答报文发送到运营商设备,运营商设备再将应答报文发送到本实施例的执行主体,本实施例的执行主体将应答报文发送到用户终端,用户终端通过浏览器展示网页。

相比于现有技术,本实施例公开的防止网页劫持的方法,通过将用户终端发送的HTTP的GET请求报文进行分段,使劫持服务器无法识别GET请求报文,从而防止网页被劫持,提高了用户浏览网页的安全性。

在一个具体的例子一中,给出图2所示的步骤203中“对所述GET请求报文进行分段,得到至少两个分段报文”的一种优选实施方式,具体为:对所述GET请求报文进行分段,得到至少两个分段报文,并在各分段报文设置第一分段标识信息以及第二分段标识信息;其中,所述第一分段标识信息用于标识报文为分段报文;所述第二分段标识信息用于标识分段报文在所述GET请求报文的分段次序。

本实施例中,增加两个分段标识的目的在于:当运营商设备将各分段报文发送到网站服务器后,网站服务器可基于两个分段标识,将各分段报文进行合并,从而恢复出GET请求报文。

在一个具体的例子二中,给出图2所示的步骤203中“对所述GET请求报文进行分段,得到至少两个分段报文”的一种优选实施方式,具体为:对所述GET请求报文的数据区进行分段,得到至少两个分段数据区,所述GET请求报文的数据区携带有所述请求的网页的信息;将所述GET请求报文的非数据区与各分段数据区组合,得到与各分段数据区一一对应的分段报文。

本实施例中,在对GET请求报文进行分段时,是针对GET请求报文的数据区进行分段,而不对GET请求报文的非数据区进行分段。

本实施例中,将GET请求报文的非数据区与各分段数据区组合,可得到与各分段数据区一一对应的分段报文。例如,若对GET请求报文的数据区进行分段,得到两个分段数据区,则GET请求报文的非数据区与各分段数据区组合,得到两个分段报文。这两个分段报文的非数据区相同,均为GET请求报文的非数据区。这两个分段报文的非数据区分别为上述分段数据区。这两个分段报文的非数据区合并为GET请求报文的数据区。

本实施例中,可采用具体的例子一中的增加两个分段标识的方式,在各分段报文的非数据区增加两个分段标识,以使网站服务器可基于两个分段标识,将各分段报文的数据区进行合并,从而恢复出GET请求报文的数据区,得到用户请求的网页信息。

本实施例中,由于各分段报文的非数据区与GET请求报文的非数据区相同,因此,劫持服务器可以识别出分段报文为GET请求报文,但是由于分段报文的数据区不是GET请求报文的数据区,即用户请求的网页信息不完整,因此,劫持服务器也无法劫持用户请求的网页。

在一个具体的例子三中,给出图2所示的步骤203中“对所述GET请求报文进行分段,得到至少两个分段报文”的一种优选实施方式,具体为:对所述GET请求报文的数据区和非数据区进行分段,得到至少两个分段报文。

本实施例中,可采用具体的例子一中的增加两个分段标识的方式,在各分段报文增加两个分段标识,运营商设备获取到各分段报文后,由于可检测到两个分段标识,并将各分段报文发送到网站服务器,即只要检测到报文具有两个分段标识,运营商设备就将该报文发送到网站服务器,以使网站服务器基于两个分段标识,将各分段报文进行合并,从而恢复出GET请求报文,得到用户请求的网页信息。

本实施例,与具体的例子二不同,是对GET请求报文的数据区和非数据区进行分段,即对整个GET请求报文进行分段。这样,劫持服务器就完全无法识别出分段报文为GET请求报文,从而防止网页被劫持,提高了用户浏览网页的安全性。

在一个具体的例子四中,给出图2所示的步骤202:“判断所述HTTP报文是否为获取GET请求报文”的一种优选实施方式,具体为:检测所述HTTP报文的第54字节、第55字节和第56字节的值;若第54字节的值为01000111、第55字节的值为01000101以及第56字节的值为01010100,则判定所述HTTP报文为获取GET请求报文。

如图3所示,本实施例公开一种网关,包括家庭网关,企业网关等非运营商网关,可包括以下单元:获取单元31、判断单元32、分段单元33以及发送单元34。各单元具体说明如下:

获取单元31,用于获取用户终端发送的超文本传输协议HTTP报文;

判断单元32,用于判断所述HTTP报文是否为获取GET请求报文;

分段单元33,用于在所述判断单元32判定所述HTTP报文为获取GET请求报文后,对所述GET请求报文进行分段,得到至少两个分段报文;

发送单元34,用于将各分段报文发送到运营商设备,以防止所述GET请求报文请求的网页在所述运营商设备被劫持。

本实施例公开的网关,可实现图2所示的防止网页劫持的方法流程,因此,本实施例中的网关的效果及说明可参见图2所示的方法实施例,在此不再赘述。

在一个具体的例子中,所述分段单元33,用于对所述GET请求报文进行分段,得到至少两个分段报文,并在各分段报文设置第一分段标识信息以及第二分段标识信息;其中,所述第一分段标识信息用于标识报文为分段报文;所述第二分段标识信息用于标识分段报文在所述GET请求报文的分段次序。

在一个具体的例子中,所述分段单元33,用于对所述GET请求报文的数据区进行分段,得到至少两个分段数据区,所述GET请求报文的数据区携带有所述请求的网页的信息;将所述GET请求报文的非数据区与各分段数据区组合,得到与各分段数据区一一对应的分段报文。

在一个具体的例子中,所述分段单元33,用于对所述GET请求报文的数据区和非数据区进行分段,得到至少两个分段报文。

在一个具体的例子中,所述判断单元32,用于检测所述HTTP报文的第54字节、第55字节和第56字节的值;若第54字节的值为01000111、第55字节的值为01000101以及第56字节的值为01010100,则判定所述HTTP报文为获取GET请求报文。

本领域技术人员可以理解,可以把实施例中的各单元组合成一个单元,以及此外可以把它们分成多个子单元。除了这样的特征和/或过程或者单元中的至少一些是互相排斥之处,可以采用任何组合对本说明书中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。

本领域技术人员可以理解,实施例中的各单元可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。

虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1