CN107360187B - 一种网络劫持的处理方法、装置及系统 - Google Patents

一种网络劫持的处理方法、装置及系统 Download PDF

Info

Publication number
CN107360187B
CN107360187B CN201710717883.1A CN201710717883A CN107360187B CN 107360187 B CN107360187 B CN 107360187B CN 201710717883 A CN201710717883 A CN 201710717883A CN 107360187 B CN107360187 B CN 107360187B
Authority
CN
China
Prior art keywords
verification information
content
server
request message
client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710717883.1A
Other languages
English (en)
Other versions
CN107360187A (zh
Inventor
林水淼
李静
纪松山
王鹏飞
黄永进
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wangsu Science and Technology Co Ltd
Original Assignee
Wangsu Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wangsu Science and Technology Co Ltd filed Critical Wangsu Science and Technology Co Ltd
Priority to CN201710717883.1A priority Critical patent/CN107360187B/zh
Publication of CN107360187A publication Critical patent/CN107360187A/zh
Application granted granted Critical
Publication of CN107360187B publication Critical patent/CN107360187B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及计算机技术领域,尤其涉及一种网络劫持的处理方法、装置及系统。该方法包括:客户端设备生成初始校验信息后,向内容服务器发送携带该初始校验信息的内容请求消息,并接收与内容请求消息对应的响应消息,若确定该响应消息中存在服务端校验信息,则根据初始校验信息以及解析响应消息得到的第一响应头和第一实体内容生成客户端校验信息;进而,比对所述服务端校验信息和所述客户端校验信息判断是否监测到网络劫持。本申请实现了在数据传输过程实时发现网络劫持,便于后续采用合适的手段来防止网络劫持,从而有效保证了网络传输的正常进行。

Description

一种网络劫持的处理方法、装置及系统
技术领域
本发明涉及计算机技术领域,尤其涉及一种网络劫持的处理方法、装置及系统。
背景技术
随着信息技术的快速发展,目前互联网的应用范围越来越广,导致不少黑客或非法运营商在利益驱动下,对网络进行劫持。例如,在网络路由中架设旁支,对传输数据进行监听劫持,在实际服务器做出响应前,提前把与实际请求不对应的内容响应给客户端,造成终端用户获取错误数据或被广告插入,影响用户体验甚至造成经济损失。因此,网络数据传输的有效性和安全性显得越来越重要。
然而,现有技术对网络劫持问题尚不能准确的监测,而且大多是在劫持发生后,客户端已被植入广告或已获取错误数据,才会分析定位劫持问题,导致用户体验较差。且由于在数据传输过程不能实时发现网络劫持问题,因此只能在网络链路中全局使用用户数据报协议(User Datagram Protocol,UDP)等方式来防止网络劫持,这样既缺少针对性,又增加系统负担。
综上,目前亟需一种网络劫持的处理方法,用于解决现有技术中无法在数据传输过程发现网络劫持以及不能有效防止网络劫持的技术问题。
发明内容
本发明实施例提供一种网络劫持的处理方法、装置及系统,以解决现有技术中无法在数据传输过程发现网络劫持及无法有效防止网络劫持的技术问题。
本发明实施例提供的一种网络劫持的处理方法,包括:
客户端设备生成初始校验信息,并向内容服务器发送携带所述初始校验信息的内容请求消息;
所述客户端设备接收所述内容请求消息的响应消息,若确定所述响应消息中存在服务端校验信息,则根据所述初始校验信息以及解析所述响应消息得到的第一响应头和/或第一实体内容生成客户端校验信息;
所述客户端设备比对所述服务端校验信息和所述客户端校验信息判断是否监测到网络劫持。
可选地,所述方法还包括:
所述客户端设备若确定所述响应消息中不存在服务端校验信息或者所述服务端校验信息和所述客户端校验信息不相同,则确定监测到网络劫持。
可选地,所述客户端设备检测到网络劫持之后,还包括:
所述客户端设备向域名系统(Domain Name System,DNS)服务器发送域名请求消息,所述域名请求消息中包括所述客户端设备的互联网协议(Internet Protocol,IP)地址和待访问域名;
所述客户端设备接收所述DNS服务器返回的所述客户端设备的IP地址和所述待访问域名对应的集群IP地址。
可选地,还包括:所述DNS服务器查询域名解析数据库,得到所述待访问域名对应的集群IP地址,以及从所述待访问域名对应的集群IP地址中选择出所述客户端设备的IP地址对应的目标集群IP地址,并将所述目标集群IP地址发送给所述客户端设备。
可选地,所述初始校验信息位于所述内容请求消息中的预设位置。
可选地,所述客户端设备确定所述响应消息中存在服务端校验信息,包括:
所述客户端设备确定所述响应消息中的预设位置存在所述服务端校验信息。
可选地,所述客户端设备根据所述初始校验信息以及解析所述响应消息得到的第一响应头和第一实体内容生成客户端校验信息;
所述客户端设备采用约定算法对所述第一响应头和所述第一实体内容进行抽样,并将抽样结果和所述初始校验信息进行运算得到所述客户端校验信息。
本发明实施例提供的一种网络劫持的处理方法,包括:
内容服务器接收客户端设备发送的内容请求消息;
所述内容服务器生成内容请求消息对应的第二响应头和第二实体内容;
所述内容服务器若确定所述内容请求消息中存在初始校验信息,则根据所述初始校验信息以及所述内容请求消息对应的所述第二响应头和/或所述第二实体内容生成服务端校验信息;
所述内容服务器向所述客户端设备发送所述内容请求消息的响应消息,所述响应消息中包括所述服务端校验信息、所述第二响应头和所述第二实体内容。
可选地,所述内容服务器确定所述内容请求消息中存在初始校验信息,包括:
所述内容服务器确定所述内容请求消息中的预设位置存在所述初始校验信息。
可选地,所述服务端校验信息位于所述响应消息中的预设位置。
本发明实施例提供的一种客户端设备,包括:
处理单元,用于生成初始校验信息;
发送单元,用于向内容服务器发送携带所述初始校验信息的内容请求消息;
接收单元,用于接收所述内容请求消息的响应消息;
所述处理单元,还用于若确定所述响应消息中存在服务端校验信息,则根据所述初始校验信息以及解析所述响应消息得到的第一响应头和/或第一实体内容生成客户端校验信息;并比对所述服务端校验信息和所述客户端校验信息判断是否监测到网络劫持。
可选地,所述处理单元还用于:若确定所述响应消息中不存在服务端校验信息或者所述服务端校验信息和所述客户端校验信息不相同,则确定监测到网络劫持。
可选地,所述处理单元检测到网络劫持之后,所述发送单元,还用于向DNS服务器发送域名请求消息;所述域名请求消息中包括所述客户端设备的互联网协议IP地址和待访问域名;
所述接收单元,还用于接收所述DNS服务器返回的所述客户端设备的IP地址和所述待访问域名对应的集群IP地址。
可选地,所述初始校验信息位于所述内容请求消息中的预设位置。
可选地,所述处理单元具体用于:
确定所述响应消息中的预设位置存在所述服务端校验信息。
可选地,所述处理单元采用约定算法对所述第一响应头和所述第一实体内容进行抽样,并将抽样结果和所述初始校验信息进行运算得到所述客户端校验信息。
本发明实施例提供的一种内容服务器,其特征在于,包括:
接收单元,用于接收客户端设备发送的内容请求消息;
处理单元单元,用于生成所述内容请求消息对应的第二响应头和第二实体内容;以及,若确定所述内容请求消息中存在初始校验信息,则根据所述初始校验信息以及所述内容请求消息对应的所述第二响应头和/或所述第二实体内容生成服务端校验信息;
发送单元,用于向所述客户端设备发送所述内容请求消息的响应消息,所述响应消息中包括所述服务端校验信息、所述第二响应头和所述第二实体内容。
可选地,所述处理单元具体用于:
确定所述内容请求消息中的预设位置存在所述初始校验信息。
可选地,所述服务端校验信息位于所述响应消息中的预设位置。
本发明实施例提供一种系统,该系统包括:前述的客户端设备和前述的内容服务器。
本发明实施例中,客户端设备生成初始校验信息后,向内容服务器发送携带该初始校验信息的内容请求消息,并接收与内容请求消息对应的响应消息,若确定该响应消息中存在服务端校验信息,则根据初始校验信息以及解析响应消息得到的第一响应头和第一实体内容生成客户端校验信息;进而,通过判断服务端校验信息和客户端校验信息是否相同,来确定是否监测到网络劫持。本申请中,客户端设备在确定响应消息中存在服务端校验信息后,生成客户端校验信息,并判断客户端校验信息和服务端校验信息是否相同,来确定该响应消息是否发送网络劫持,实现了在数据传输过程实时发现网络劫持,有效避免现有技术中客户端已被植入广告或已获取错误数据才分析定位劫持问题而导致用户体验较差的问题;进一步地,由于客户端校验信息是根据初始校验信息、第一响应头和第一实体内容生成的,即本申请中对服务端校验信息进行校验的客户端校验信息不仅仅是初始校验信息,还会涉及响应消息中的实体内容,因此,针对于可能存在的对响应消息的响应头部或实体内容做篡改劫持的现象,本申请中的方法能够及时监测到这些网络劫持,便于后续采用合适的手段来防止网络劫持,从而有效保证了网络传输的正常进行。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种系统架构示意图;
图2为本发明实施例提供的网络劫持的处理方法所对应的流程示意图;
图3为本发明实施例提供的客户端设备确定响应消息这不存在服务端校验信息的流程示意图;
图4为本发明实施例提供的客户端设备确定客户端校验信息和服务端校验信息不相同的流程示意图;
图5为本发明实施例提供的一种网络防劫持的方法的结构示意图;
图6为本发明实施例提供的一种客户端设备的结构示意图;
图7为本发明实施例提供的一种内容服务器的结构示意图;
图8为本发明实施例提供的一种DNS服务器的结构示意图;
图9为本发明实施例提供的一种系统的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的实施例仅用于说明和解释本发明,并不用于限定本发明。
图1示例性示出了本发明实施例适用的一种系统架构示意图,如图1所示,本发明实施例适用的系统架构100包括内容服务器101、一个或多个客户端设备,例如图1中所示出的客户端设备102、客户端设备103和客户端设备104。内容服务器101可以与客户端设备102、客户端设备103、客户端设备104通过网络进行通信,例如,客户端设备102、客户端设备103、客户端设备104中的任一客户端设备可以向内容服务器101发送内容请求消息,内容服务器101可以根据内容请求消息返回响应消息。
需要说明的是,本申请中的客户端设备可以为多种类型的设备,例如,网页浏览器,相应地,与客户端设备进行通信的内容服务器可以为用于提供网页内容的服务器。具体不做限定。
图2示例性示出了本发明实施例提供的网络劫持的处理方法所对应的流程示意图,包括以下步骤:
步骤201,客户端设备生成初始校验信息,并向内容服务器发送携带该初始校验信息的内容请求消息。
步骤202,内容服务器对接收到的内容请求消息进行解析,生成对应的第一响应头和第一实体内容。
步骤203,内容服务器确定接收到的内容请求消息中存在初始校验信息,并根据初始校验信息以及第一响应头和第一实体内容生成服务端校验信息。
步骤204,内容服务器向客户端设备发送响应消息,该响应消息中包括所述服务端校验信息、所述第一响应头和所述第一实体内容。
步骤205,客户端设备确定接收到的响应消息中存在服务端校验信息后,根据初始校验信息以及解析该响应消息得到的第一响应头和/或第一实体内容生成客户端校验信息。
步骤206,客户端设备比对所述服务端校验信息和所述客户端校验信息判断是否监测到网络劫持。
需要说明的是:(1)上述所描述的流程中,若客户端设备接收到的响应消息中不存在服务端校验信息,或者服务端校验信息和客户端校验信息不相同,则说明监测到网络劫持。(2)上述步骤编号仅为一种执行流程的示例性表示,本申请对各个步骤的先后顺序不做具体限定,例如,上述步骤202和步骤203中,内容服务器也可以是先确定出内容请求消息中包括初始校验信息,然后生成第一响应头、第一实体内容,进而根据初始校验信息以及第一响应头和/或第一实体内容生成服务端校验信息。
本申请中,客户端设备在确定响应消息中存在服务端校验信息后,生成客户端校验信息,并判断客户端校验信息和服务端校验信息是否相同,来确定该响应消息是否发送网络劫持,实现了在数据传输过程实时发现网络劫持,有效避免现有技术中客户端已被植入广告或已获取错误数据才分析定位劫持问题而导致用户体验较差的问题;进一步地,由于客户端校验信息是根据初始校验信息、第一响应头和第一实体内容生成的,即本申请中对服务端校验信息进行校验的客户端校验信息不仅仅是初始校验信息,还会涉及响应消息中的实体内容,因此,针对于可能存在的对响应消息的响应头部或实体内容做篡改劫持的现象,本申请中的方法能够及时监测到这些网络劫持,便于后续采用合适的手段来防止网络劫持,从而有效保证了网络传输的正常进行。
具体来说,步骤201中,初始校验信息可以为唯一性随机数。客户端设备生成唯一性随机数的方式有多种,例如,客户端设备采用预设加密算法加密客户端设备的IP地址和当前时间运算得到唯一性随机数;或者,客户端设备也可以是采用预设加密算法对其它信息进行加密得到唯一性随机数,其它信息可以是指本机特殊标识,本机物理地址(MediaAccess Control或Medium Access Control,MAC)地址,本机主板唯一编码(Identification,ID),本机中央处理器(Central Processing Unit,CPU)的ID,本机内存ID,本机硬盘ID中的任一项或任意组合。其中,预设加密算法可以为循环冗余校验码(Cyclic Redundancy Check,CRC)、消息摘要算法第五版(Message Digest Algorithm,MD5)。
进一步地,客户端设备还可以与内容服务器约定初始校验信息在内容请求消息中的预设位置,如此,内容服务器在接收到内容请求消息后,可直接查询预设位置是否存在初始校验信息,从而提高内容服务器的处理效率。内容请求消息中的预设位置可以为内容请求消息中的任意位置,例如内容请求消息的头部或者内容请求消息的其它位置。
步骤202和步骤203中,内容服务器接收到内容请求消息后,若确定内容请求消息中不包括初始校验信息,则可无需生成服务端校验信息,并采用现有技术中的方案,直接将第一响应头和第一实体内容通过响应消息发送给客户端设备。内容服务器若确定内容请求消息中包括初始校验信息,则可根据初始校验信息以及第一响应头和/或第一实体内容生成服务端校验信息,并在步骤204中将服务端校验信息、所述第一响应头和所述第一实体内容通过响应消息发送给客户端设备。
相应地,与上述初始校验信息位于内容请求消息中的预设位置类似,服务端校验信息可以位于响应消息中的预设位置,如此,客户端设备接收到响应消息后,可直接查询响应消息中的预设位置判断是否存在服务端校验信息,从而提高客户端设备的处理效率。
一种可能的实现方式为,响应消息中的预设位置与内容请求消息中的预设位置一致,例如,若内容请求消息中的预设位置为内容请求消息的头部,则响应消息中的预设位置可以为响应消息的头部,即响应头。
本申请中,内容服务器根据初始校验信息以及第一响应头和/或第一实体内容生成服务端校验信息具体可以是指内容服务器根据初始校验信息以及第一响应头生成服务端校验信息,或者,内容服务器根据初始校验信息以及第一实体内容生成服务端校验信息,又或者,内容服务器根据初始校验信息以及第一响应头和第一实体内容生成服务端校验信息。
为提高监测的准确性,本申请中可优选内容服务器根据初始校验信息以及第一响应头和第一实体内容生成服务端校验信息。考虑到第一响应头和第一实体内容的数据量可能较大,因此,可采用预设抽样方法对第一响应头和第一实体内容进行抽样,并根据抽样得到的内容和初始校验信息生成服务端校验信息。其中,预设抽样方法可以有多种,具体不做限定,例如,采用预设抽样方法得到的内容为全部的第一响应头和第一实体内容尾部的数据。
步骤205中和步骤206中,客户端设备确定响应消息中存在服务端校验信息后,可根据初始校验信息以及解析该响应消息得到的第一响应头和/或第一实体内容生成客户端校验信息。具体来说,客户端设备生成客户端校验信息的方式可以是与内容服务器预先预定好的,如此,若不存在网络劫持,在客户端设备接收到的响应消息这包括的响应头和实体内容与内容服务器生成的响应头和实体内容相同的情况下,客户端设备生成的客户端校验信息和内容服务器生成的服务端校验信息也是相同的。
如上文所述,本申请中监测到网络劫持的情况可能有两种:(1)客户端设备确定响应消息这不存在服务端校验信息;(2)客户端设备确定客户端校验信息和服务端校验信息不相同。下面分别针对这两种可能的情况进行说明。
(1)客户端设备确定响应消息这不存在服务端校验信息,如图3所示,此种场景下,可能包括以下步骤:
步骤301,客户端设备生成初始校验信息,并向内容服务器发送携带该初始校验信息的内容请求消息。
步骤302,劫持服务器拦截该内容请求消息,生成伪造的响应头和伪造响应内容。
步骤303,劫持服务器向客户端设备发送伪造的响应消息,该伪造的响应消息中包括伪造的响应头和/或伪造的响应内容。
步骤304,客户端设备判断该伪造的响应消息中不存在服务端校验信息,确定监测到网络劫持。
本申请中,客户端设备在确定响应消息中不存在服务端校验信息后,确定该响应消息发生网络劫持,实现了在数据传输过程实时发现网络劫持,有效避免现有技术中客户端已被植入广告或已获取错误数据才分析定位劫持问题而导致用户体验较差的问题,本申请中的方法能够及时监测到这些网络劫持,便于后续采用合适的手段来防止网络劫持,从而有效保证了网络传输的正常进行。
具体来说,步骤302中,本申请不对劫持服务器具体的拦截位置和/或拦截时间做限定,一种可能的实现方式为,劫持服务器在客户端设备的网络出口处拦截,例如,客户端设备向内容服务器发送内容请求消息,劫持服务器直接拦截该内容请求消息,致使内容服务器未能接收到该内容请求消息。
步骤303中,劫持服务器向客户端设备发送伪造的响应消息,该伪造的响应消息中包括伪造的响应头和/或伪造的响应内容。具体来说,劫持服务器与客户端设备之间并未约定协议,因此,劫持服务器无法解析拦截到的内容请求消息,尤其是无法获取该内容请求消息中的初始校验信息,如此,劫持服务器伪造的响应消息中也就不存在于根据初始校验信息生成的服务端校验信息。
(2)客户端设备确定客户端校验信息和服务端校验信息不相同,如图4所示,此种场景下,可能包括以下步骤:
步骤401,客户端设备生成初始校验信息,并向内容服务器发送携带该初始校验信息的内容请求消息。
步骤402,内容服务器对接收到的内容请求消息进行解析,生成对应的第一响应头和第一实体内容。
步骤403,内容服务器确定接收到的内容请求消息中存在初始校验信息,并根据初始校验信息以及第一响应头和第一实体内容生成服务端校验信息。
步骤404,内容服务器向客户端设备发送响应消息,该响应消息中包括服务端校验信息、第一响应头和第一实体内容。
步骤405,劫持服务器拦截该响应消息,生成第二响应头(即伪造的响应头)和第二实体内容(即伪造的响应内容),并将响应消息中的第一响应头和第一实体内容篡改为第二响应头和第二实体内容。
此处,本申请不对劫持服务器具体的拦截位置和/或拦截时间做限定,一种可能的实现方式为,劫持服务器在客户端设备的网络入口处拦截,例如,客户端设备向内容服务器发送内容请求消息,内容服务器向客户端设备发送响应消息,劫持服务器直接拦截并篡改该响应消息,致使客户端接收到篡改后的响应消息。
步骤406,劫持服务器向客户端设备发送篡改后的响应消息,篡改后的响应消息中包括服务端校验信息、第二响应头和第二响应内容。
此处,劫持服务器与客户端设备之间并未约定协议,因此,劫持服务器无法解析拦截到的响应消息,尤其是无法获取该响应消息中的服务端校验信息,如此,劫持服务器只能篡改响应头和/或响应实体内容。
步骤407,客户端设备确定接收到的响应消息中存在服务端校验信息后,根据初始校验信息以及解析该响应消息得到的第二响应头和第二实体内容生成客户端校验信息。
此处,客户端设备确定接收到的篡改后的响应消息中存在服务端校验信息后,根据初始校验信息以及解析该篡改后的响应消息得到的第二响应头和第二实体内容生成客户端校验信息。具体来说,客户端设备生成客户端校验信息的方式可以是与内容服务器预先预定好的,如此,客户端设备根据初始校验信息以及解析该篡改后的响应消息得到的第二响应头和第二实体内容生成客户端校验信息。
进一步地,无论客户端采用哪一种方式生成客户端校验信息,只要劫持服务器篡改响应消息,那么伪造的响应消息中就会有响应头和/或响应实体内容与内容服务器发送的响应消息中的第一响应头和第一实体内容存在不同,如此会导致客户端校验信息与服务端校验信息不相同。
步骤408,客户端设备判断服务端校验信息和客户端校验信息不相同,并确定监测到网络劫持。
考虑现有技术多强调如何监测网络劫持,但针对监测到网络劫持之后的应对措施却少有涉及。因此,本申请提出了一种网络劫持的处理方法,即,在监测到网络劫持之后,还提供一种网络劫持修正的方法。
图5为本申请提供的一种防止该网络劫持发生在域名请求阶段的网络劫持修正的流程示意图,如图5所示,包括以下步骤:
步骤501,客户端设备确定监测到网络劫持之后,向DNS服务器发送域名请求消息,该域名请求消息中包括所述客户端设备的IP地址和待访问域名。
步骤502,DNS服务器查询域名解析数据库,得到待访问域名对应的集群IP地址,以及从该待访问域名对应的集群IP地址中选择出与客户端设备的IP地址对应的目标集群IP地址。
本申请中,域名解析数据库中可以存储域名和集群IP地址的对应关系以及客户端设备的IP地址和集群IP地址的对应关系以采用数据表形式存储上述信息为例,如表1所示,为域名解析数据库中的部分内容示例。
表1域名解析数据库中的部分内容示例
Figure BDA0001384235020000131
根据表1的内容可知,域名1对应的集群IP地址包括集群IP地址1和集群IP地址2,集群IP地址1和客户端设备a的IP地址、客户端设备b的IP地址对应,集群IP地址2和客户端设备c的IP地址对应。域名2对应的集群IP地址包括集群IP地址3,集群IP地址1和客户端设备a的IP地址对应。
举个例子,假设本申请域名请求消息中包括的客户端设备的IP地址为客户端设备a的IP地址,待访问域名为域名1,则DNS服务器接收域名请求消息后,可首先根据域名1查询到域名1对应的集群IP地址,并从域名1对应的集群IP地址中查询到客户端设备a的IP地址对应的目标集群IP地址,即集群IP地址1。
步骤503,DNS服务器将该目标集群IP地址发送给客户端设备。
本申请中,在客户端设备通过本申请中的网络劫持的处理方法确定出监测到网络劫持后,可以根据UDP协议对内容请求消息进行加密以及添加预设标识,并重新发送给内容服务器,便于获取到正确的响应消息;又或者,可以通过安全套接字层超文本传输协议(Hyper Text Transfer Protocol over Secure Socket Layer,HTTPS)加密,改造传输控制协议(Transmission Control Protocol,TCP)头,包括但不限于头部加密等方式,对内容请求消息进行加密,并重新发送给内容服务器。
本发明实施例提供一种网络劫持的处理方法,通过上述方法,客户端设备能够及时监测到网络劫持,并采用合适的手段来防止网络劫持,从而有效保证了网络传输的正常进行。
从上述内容可看出,本发明实施例中,客户端设备生成初始校验信息后,向内容服务器发送携带该初始校验信息的内容请求消息,并接收与内容请求消息对应的响应消息,若确定该响应消息中存在服务端校验信息,则根据初始校验信息以及解析响应消息得到的第一响应头和第一实体内容生成客户端校验信息;进而,通过判断服务端校验信息和客户端校验信息是否相同,来确定是否监测到网络劫持。本申请中,客户端设备在确定响应消息中存在服务端校验信息后,生成客户端校验信息,并判断客户端校验信息和服务端校验信息是否相同,来确定该响应消息是否发送网络劫持,实现了在数据传输过程实时发现网络劫持,有效避免现有技术中客户端已被植入广告或已获取错误数据才分析定位劫持问题而导致用户体验较差的问题;进一步地,由于客户端校验信息是根据初始校验信息、第一响应头和第一实体内容生成的,即本申请中对服务端校验信息进行校验的客户端校验信息不仅仅是初始校验信息,还会涉及响应消息中的实体内容,因此,针对于可能存在的对响应消息的响应头部或实体内容做篡改劫持的现象,本申请中的方法能够及时监测到这些网络劫持,便于后续采用合适的手段来防止网络劫持,从而有效保证了网络传输的正常进行。
图6示例性示出了本发明实施例提供的一种客户端设备的结构示意图。
基于相同构思,本发明实施例提供的一种客户端设备,如图6所示,该客户端设备600包括处理单元601、发送单元602、接收单元603;其中,
处理单元601,用于生成初始校验信息;
发送单元602,用于向内容服务器发送携带所述初始校验信息的内容请求消息;
接收单元603,用于接收所述内容请求消息的响应消息,
所述处理单元601,还用于若确定所述响应消息中存在服务端校验信息,则根据所述初始校验信息以及解析所述响应消息得到的第一响应头和/或第一实体内容生成客户端校验信息;并比对所述服务端校验信息和所述客户端校验信息判断是否监测到网络劫持。
图7示例性示出了本发明实施例提供的一种内容服务器的结构示意图。
基于相同构思,本发明实施例提供的一种内容服务器,如图7所示,该内容服务器700包括接收单元701、处理单元702、发送单元703;其中,
接收单元701,用于接收客户端设备发送的内容请求消息;
处理单元702,用于生成所述内容请求消息对应的第二响应头和第二实体内容;以及,若确定所述内容请求消息中存在初始校验信息,则根据所述初始校验信息以及所述内容请求消息对应的所述第二响应头和/或所述第二实体内容生成服务端校验信息;
发送单元703,用于向所述客户端设备发送所述内容请求消息的响应消息,所述响应消息中包括所述服务端校验信息、所述第二响应头和所述第二实体内容。
图8示例性示出了本发明实施例提供的一种DNS服务器的结构示意图。
基于相同构思,本发明实施例提供的一种DNS服务器,如图8所示,该DNS服务器800包括接收单元801、解析单元802、发送单元803;其中,
接收单元801,用于接收客户端设备发送的域名请求消息,所述域名请求消息中包括所述客户端设备的IP地址和待访问域名;
解析单元802,用于查询域名解析数据库,得到所述待访问域名对应的集群IP地址,以及从所述待访问域名对应的集群IP地址中选择出所述客户端设备的IP地址对应的目标集群IP地址;
发送单元803,用于将所述目标集群IP地址发送给所述客户端设备。
图9示例性示出了本发明实施例提供的一种系统的结构示意图。
基于相同构思,本发明实施例提供的一种系统,如图9所示,该系统包括客户端设备901、内容服务器902、DNS服务器903;其中,
客户端设备901,用于生成初始校验信息,并向内容服务器发送携带所述初始校验信息的内容请求消息;接收所述内容请求消息的响应消息,若确定所述响应消息中存在服务端校验信息,则根据所述初始校验信息以及解析所述响应消息得到的第一响应头和/或第一实体内容生成客户端校验信息;并比对所述服务端校验信息和所述客户端校验信息判断是否监测到网络劫持。
内容服务器902,用于接收客户端设备发送的内容请求消息;生成内容请求消息对应的第二响应头和第二实体内容;若确定所述内容请求消息中存在初始校验信息,则根据所述初始校验信息以及所述内容请求消息对应的所述第二响应头和/或所述第二实体内容生成服务端校验信息;并向所述客户端设备发送所述内容请求消息的响应消息,所述响应消息中包括所述服务端校验信息、所述第二响应头和所述第二实体内容。
可选地,所述客户端设备901,还用于在确定监测到网络劫持后,向所述DNS服务器发送域名请求消息,所述域名请求消息中包括所述客户端设备的IP地址和待访问域名;以及,接收所述DNS服务器返回的所述客户端设备的IP地址和所述待访问域名对应的集群IP地址;
所述DNS服务器903,用于接收客户端设备发送的域名请求消息,查询域名解析数据库,得到所述待访问域名对应的集群IP地址,以及从所述待访问域名对应的集群IP地址中选择出所述客户端设备的IP地址对应的目标集群IP地址,并将所述目标集群IP地址发送给所述客户端设备。
本发明实施例中,客户端设备生成初始校验信息后,向内容服务器发送携带该初始校验信息的内容请求消息,并接收与内容请求消息对应的响应消息,若确定该响应消息中存在服务端校验信息,则根据初始校验信息以及解析响应消息得到的第一响应头和第一实体内容生成客户端校验信息;进而,通过判断服务端校验信息和客户端校验信息是否相同,来确定是否监测到网络劫持。本申请中,客户端设备在确定响应消息中存在服务端校验信息后,生成客户端校验信息,并判断客户端校验信息和服务端校验信息是否相同,来确定该响应消息是否发送网络劫持,实现了在数据传输过程实时发现网络劫持,有效避免现有技术中客户端已被植入广告或已获取错误数据才分析定位劫持问题而导致用户体验较差的问题;进一步地,由于客户端校验信息是根据初始校验信息、第一响应头和第一实体内容生成的,即本申请中对服务端校验信息进行校验的客户端校验信息不仅仅是初始校验信息,还会涉及响应消息中的实体内容,因此,针对于可能存在的对响应消息的响应头部或实体内容做篡改劫持的现象,本申请中的方法能够及时监测到这些网络劫持,便于后续采用合适的手段来防止网络劫持,从而有效保证了网络传输的正常进行。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (13)

1.一种网络劫持的处理方法,其特征在于,该方法包括:
客户端设备在需要检测网络劫持时,生成初始校验信息,并向内容服务器发送携带所述初始校验信息的内容请求消息;所述初始校验信息为唯一性随机数,所述初始校验信息位于所述内容请求消息中的预设位置;
所述客户端设备接收所述内容请求消息的响应消息,若确定所述响应消息中的预设位置存在服务端校验信息,则根据所述初始校验信息以及解析所述响应消息得到的第一响应头和/或第一实体内容生成客户端校验信息;
所述客户端设备比对所述服务端校验信息和所述客户端校验信息判断是否监测到网络劫持;
所述方法还包括:所述客户端设备在不需要检测网络劫持时,向所述内容服务器发送不携带所述初始校验信息的内容请求消息;所述客户端设备接收所述内容服务器发送的所述第一响应头和所述第一实体内容。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述客户端设备若确定所述响应消息中不存在服务端校验信息或者所述服务端校验信息和所述客户端校验信息不相同,则确定监测到网络劫持。
3.如权利要求1所述的方法,其特征在于,所述客户端设备检测到网络劫持之后,还包括:
所述客户端设备向域名系统DNS服务器发送域名请求消息,所述域名请求消息中包括所述客户端设备的互联网协议IP地址和待访问域名;
所述客户端设备接收所述DNS服务器返回的所述客户端设备的IP地址和所述待访问域名对应的集群IP地址。
4.如权利要求3所述的方法,其特征在于,还包括:所述DNS服务器查询域名解析数据库,得到所述待访问域名对应的集群IP地址,以及从所述待访问域名对应的集群IP地址中选择出所述客户端设备的IP地址对应的目标集群IP地址,并将所述目标集群IP地址发送给所述客户端设备。
5.如权利要求1至4中任一项所述的方法,其特征在于,所述客户端设备根据所述初始校验信息以及解析所述响应消息得到的第一响应头和第一实体内容生成客户端校验信息;
所述客户端设备采用约定算法对所述第一响应头和所述第一实体内容进行抽样,并将抽样结果和所述初始校验信息进行运算得到所述客户端校验信息。
6.一种网络劫持的处理方法,其特征在于,所述方法应用于内容分发网络;该方法包括:
内容服务器接收客户端设备发送的内容请求消息;
所述内容服务器生成内容请求消息对应的第二响应头和第二实体内容;
所述内容服务器若确定所述内容请求消息中的预设位置存在初始校验信息,则根据所述初始校验信息以及所述内容请求消息对应的所述第二响应头和/或所述第二实体内容生成服务端校验信息;所述初始校验信息为唯一性随机数;
所述内容服务器向所述客户端设备发送所述内容请求消息的响应消息,所述响应消息中包括所述服务端校验信息、所述第二响应头和所述第二实体内容;
所述方法还包括:所述内容服务器若确定所述内容请求消息中的预设位置不存在初始校验信息,则向所述客户端设备发送所述第二响应头和所述第二实体内容。
7.一种客户端设备,其特征在于,所述客户端设备包括:
处理单元,用于在需要检测网络劫持时,生成初始校验信息;所述初始校验信息为唯一性随机数;
发送单元,用于向内容服务器发送携带所述初始校验信息的内容请求消息;所述初始校验信息位于所述内容请求消息中的预设位置;
接收单元,用于接收所述内容请求消息的响应消息;
所述处理单元,还用于若确定所述响应消息中的预设位置存在服务端校验信息,则根据所述初始校验信息以及解析所述响应消息得到的第一响应头和/或第一实体内容生成客户端校验信息;并比对所述服务端校验信息和所述客户端校验信息判断是否监测到网络劫持;
所述发送单元,还用于在不需要检测网络劫持时,向所述内容服务器发送不携带所述初始校验信息的内容请求消息;
所述接收单元,还用于接收所述内容服务器发送的所述第一响应头和所述第一实体内容。
8.如权利要求7所述的客户端设备,其特征在于,所述处理单元还用于:若确定所述响应消息中不存在服务端校验信息或者所述服务端校验信息和所述客户端校验信息不相同,则确定监测到网络劫持。
9.如权利要求7所述的客户端设备,其特征在于,所述处理单元检测到网络劫持之后,所述发送单元,还用于向DNS服务器发送域名请求消息;所述域名请求消息中包括所述客户端设备的互联网协议IP地址和待访问域名;
所述接收单元,还用于接收所述DNS服务器返回的所述客户端设备的IP地址和所述待访问域名对应的集群IP地址。
10.如权利要求7至9中任一项所述的客户端设备,其特征在于,所述处理单元采用约定算法对所述第一响应头和所述第一实体内容进行抽样,并将抽样结果和所述初始校验信息进行运算得到所述客户端校验信息。
11.一种内容服务器,其特征在于,所述内容服务器设于内容分发网络中;包括:
接收单元,用于接收客户端设备发送的内容请求消息;
处理单元,用于生成所述内容请求消息对应的第二响应头和第二实体内容;以及,若确定所述内容请求消息中的预设位置存在初始校验信息,则根据所述初始校验信息以及所述内容请求消息对应的所述第二响应头和/或所述第二实体内容生成服务端校验信息;所述初始校验信息为唯一性随机数;
发送单元,用于向所述客户端设备发送所述内容请求消息的响应消息,所述响应消息中包括所述服务端校验信息、所述第二响应头和所述第二实体内容;
所述发送单元,还用于若确定所述内容请求消息中的预设位置不存在初始校验信息,则向所述客户端设备发送所述第二响应头和所述第二实体内容。
12.一种系统,其特征在于,该系统包括:如权利要求7至10中任一项所述的客户端设备以及如权利要求11所述的内容服务器。
13.如权利要求12所述的系统,其特征在于,所述系统还包括:DNS服务器;所述DNS服务器,用于接收客户端设备发送的域名请求消息,查询域名解析数据库,得到待访问域名对应的集群IP地址,以及从所述待访问域名对应的集群IP地址中选择出所述客户端设备的IP地址对应的目标集群IP地址,并将所述目标集群IP地址发送给所述客户端设备。
CN201710717883.1A 2017-08-21 2017-08-21 一种网络劫持的处理方法、装置及系统 Active CN107360187B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710717883.1A CN107360187B (zh) 2017-08-21 2017-08-21 一种网络劫持的处理方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710717883.1A CN107360187B (zh) 2017-08-21 2017-08-21 一种网络劫持的处理方法、装置及系统

Publications (2)

Publication Number Publication Date
CN107360187A CN107360187A (zh) 2017-11-17
CN107360187B true CN107360187B (zh) 2020-09-25

Family

ID=60288011

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710717883.1A Active CN107360187B (zh) 2017-08-21 2017-08-21 一种网络劫持的处理方法、装置及系统

Country Status (1)

Country Link
CN (1) CN107360187B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107800720B (zh) * 2017-11-29 2020-10-27 广州酷狗计算机科技有限公司 劫持上报方法、装置、存储介质及设备
CN108322886B (zh) * 2017-12-15 2019-12-06 腾讯科技(深圳)有限公司 终端定位数据的鉴权方法和装置
CN108881146A (zh) * 2017-12-28 2018-11-23 北京安天网络安全技术有限公司 域名系统劫持的识别方法、装置、电子设备及存储介质
CN108418799A (zh) * 2018-02-01 2018-08-17 北京云知声信息技术有限公司 长连接的建立方法及系统
CN111355694B (zh) * 2018-12-24 2022-06-07 卓望数码技术(深圳)有限公司 一种网络数据校验方法、装置及系统
CN111709803B (zh) * 2020-06-12 2023-09-05 北京思特奇信息技术股份有限公司 一种防止越权办理业务的方法和系统
CN111953680B (zh) * 2020-08-11 2022-07-12 北京字节跳动网络技术有限公司 内容分发网络的反劫持方法、装置、介质和电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104079673A (zh) * 2014-07-30 2014-10-01 北京奇虎科技有限公司 一种应用下载中防止dns劫持的方法、装置和系统
CN104092647A (zh) * 2013-11-25 2014-10-08 腾讯科技(深圳)有限公司 网络访问方法、系统及客户端
CN104954386A (zh) * 2015-06-30 2015-09-30 百度在线网络技术(北京)有限公司 一种网络反劫持方法及装置
CN106060046A (zh) * 2016-05-30 2016-10-26 努比亚技术有限公司 一种防止下载劫持的装置、移动终端和方法
CN106603464A (zh) * 2015-10-14 2017-04-26 北京国双科技有限公司 网络检测方法与系统、装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100199345A1 (en) * 2009-02-04 2010-08-05 Breach Security, Inc. Method and System for Providing Remote Protection of Web Servers
CN102271168A (zh) * 2011-09-14 2011-12-07 吴兴利 修改dns回复ip的手段屏蔽和劫持互联网弹窗的方法
CN103312671B (zh) * 2012-03-12 2016-05-04 腾讯科技(深圳)有限公司 校验服务器的方法和系统
US9485270B2 (en) * 2013-09-30 2016-11-01 Juniper Networks, Inc. Polluting results of vulnerability scans
CN103701946B (zh) * 2013-12-20 2017-02-08 珠海金山网络游戏科技有限公司 一种客户端通过url与服务器通讯的方法及系统
US9363232B1 (en) * 2014-01-10 2016-06-07 Juniper Networks, Inc. Detecting and preventing session hijacking
CN105897947B (zh) * 2016-04-08 2019-04-30 网宿科技股份有限公司 移动终端的网络访问方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104092647A (zh) * 2013-11-25 2014-10-08 腾讯科技(深圳)有限公司 网络访问方法、系统及客户端
CN104079673A (zh) * 2014-07-30 2014-10-01 北京奇虎科技有限公司 一种应用下载中防止dns劫持的方法、装置和系统
CN104954386A (zh) * 2015-06-30 2015-09-30 百度在线网络技术(北京)有限公司 一种网络反劫持方法及装置
CN106603464A (zh) * 2015-10-14 2017-04-26 北京国双科技有限公司 网络检测方法与系统、装置
CN106060046A (zh) * 2016-05-30 2016-10-26 努比亚技术有限公司 一种防止下载劫持的装置、移动终端和方法

Also Published As

Publication number Publication date
CN107360187A (zh) 2017-11-17

Similar Documents

Publication Publication Date Title
CN107360187B (zh) 一种网络劫持的处理方法、装置及系统
EP3424178B1 (en) Deterministic reproduction of client/server computer state or output sent to one or more client computers
EP3488590B1 (en) Securing ordered resource access
CN109309685B (zh) 信息传输方法和装置
US20150271202A1 (en) Method, device, and system for detecting link layer hijacking, user equipment, and analyzing server
US9686344B2 (en) Method for implementing cross-domain jump, browser, and domain name server
CN109413076B (zh) 域名解析方法及装置
US10021101B2 (en) Embedding security posture in network traffic
US10257171B2 (en) Server public key pinning by URL
CN107046544B (zh) 一种识别对网站的非法访问请求的方法和装置
CN112019493A (zh) 身份认证方法、身份认证装置、计算机设备和介质
CN106657010B (zh) 访问数据的方法、装置及系统
US20160380867A1 (en) Method and System for Detecting and Identifying Assets on a Computer Network
CN108076003B (zh) 会话劫持的检测方法及装置
CN112202705A (zh) 一种数字验签生成和校验方法、系统
CN111447184A (zh) 单点登录方法及装置、系统、计算机可读存储介质
CN110113440B (zh) 一种请求响应方法、装置及终端
Salas et al. Security testing methodology for evaluation of web services robustness-case: XML injection
WO2022057002A1 (zh) 一种异常请求处理方法和装置
CN112491890A (zh) 一种访问方法及装置
CN109698806B (zh) 一种用户数据校验方法及系统
CN110224824B (zh) 数字证书处理方法、装置、计算机设备和存储介质
CN113783867B (zh) 一种请求认证方法及终端
CN114866258A (zh) 一种访问关系的建立方法、装置、电子设备及存储介质
CN113505353A (zh) 一种认证方法、装置、设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant