网址劫持的检测方法及装置的制造方法_3

文档序号:9491824阅读:来源:国知局
在直接的时序关系。
[0095]在步骤203中,触发针对网址劫持的提示事件,提示事件用于向用户提示当前的网络发生网址劫持。
[0096]其中,提示事件可以通过在终端屏幕中弹出对话框的方式实现,提示事件中可以预先设置有预警文字。例如:当前网络环境不安全,已检测出发生网址劫持事件,请注意网络安全。
[0097]在步骤204中,将第一网页请求转换为HTTPS协议的第二网页请求,并向待请求的URL发送第二网页请求。
[0098]其中,第二网页请求为基于HTTPS (Hyper Text Transfer Protocol over SecureSocket Layer,基于安全套阶层超文本传输协议)协议的请求。其中,HTTPS协议较HTTP协议更加安全,属于HTTP的安全版。HTTPS协议是由SSL (Secure Sockets Layer,安全套接层)+HTTP协议构建的可进行加密传输、身份认证的网络协议。因此,通过SSL加密后的第一网页请求生成了第二网页请求,运营商则无法对第二网页请求进行网址劫持。
[0099]在步骤205中,将第一网页请求发送给预设的代理服务器,以使代理服务器转发第一网页请求。
[0100]另外一种方式,通过代理服务器的方式来传输第一网页请求,也可以避免网页劫持事件的发生。
[0101]本公开实施例本公开实施例当检测到浏览器中触发了第一网页请求时获取待请求的URL和源资源URL,在确认待请求的URL和源资源URL都属于指定的合作网站URL集合之后,根据待请求的URL和源资源URL中的源资源参数,检测当前的网络是否发生网址劫持。实现了针对运营商篡改网页参数的检测,提高了终端浏览器浏览网页的安全性。
[0102]在检测到发生网址劫持以后,可以通过触发提示事件的方式来提示用户发生网址劫持,提尚了人机交互性。
[0103]在检测到发生网址劫持以后,可以将原有的第一网页请求转换为使用更加安全的HTTPS协议的第二网页请求,并向待请求的URL发送第二网页请求,以完成用户的网页请求任务,使得网络运营商无法篡改通过HTTPS协议加密的第二网页请求对应的响应消息,因此可以避免网址劫持事件的发生,提高了网页浏览的安全性。
[0104]在检测到发生网址劫持以后,还可以使用代理服务器来完成第一网页请求的任务,通过使用代理服务器可以避免第一网页请求对应的响应消息经过网络运营商的网络,因此可以避免网址劫持事件的发生,提高了网页浏览的安全性。
[0105]对应于上述示例性实施例提供的网址劫持的检测方法,本公开另一示例性实施例提供了一种网址劫持的检测装置,参见图3,该装置包括:
[0106]获取模块301,用于当检测到浏览器中触发了第一网页请求时,获取第一网页请求中的待请求的统一资源定位符URL和源资源URL。
[0107]其中,在本公开实施例中的第一网页请求是基于HTTP协议生成的。
[0108]第一网页请求需要在一个浏览器中一个已经加载的网页中触发。其中,该已经加载的网页可以为用户手动输入的URL地址后加载的网页,也可以为用户在浏览器的索引界面中根据自身需求在各个索引中选中并加载的网页。还可以为在上述两种已经加载的网页中点击了网页中的超级链接后加载的网页。
[0109]其中,HTTP头字段中包含以下四类内容:general_header,request-header,response—header,entity—header。
[0110]其中,general-header为通用头域,request-header 为请求消息。
[0111]待请求的URL存储于general-header中,源资源URL存储于request-header中。需要从general-header中和request-header中分别获取待请求的URL和源资源URL。
[0112]检测模块302,用于当所述获取模块获取到的所述待请求的URL和所述获取模块获取到的所述源资源URL都属于指定的合作网站URL集合时,根据所述获取模块获取到的所述待请求的URL的源资源参数和所述获取模块获取到的所述源资源URL的源资源参数,检测当前的网络是否发生网址劫持。
[0113]其中,在获取模块301中描述的三种已经加载的网页中都会包含一个Referer头域,而在上述三种已经加载的网页中的Referer头域中的源资源URL,仅有用户在浏览器的索引界面中根据自身需求在各个索引中选中并加载的网页中的源资源URL属于浏览器对应的源资源参数。
[0114]因此,本发明实施例中需要在检测到待请求的URL和源资源URL都属于指定的合作网站URL集合时,才可以进一步的对是否发生了网址劫持进行检测。
[0115]其中,与浏览器合作的网站会预先存储与合作网站URL集合中。
[0116]另外,如果待请求的URL或源资源URL中存在一个URL不属于指定的合作网站URL集合,则无法进行检测,并不进行后续的步骤。
[0117]其中,如图4所示,获取模块301,包括:
[0118]第一获取单元3011,用于在第一网页请求的头字段中的通用头域中获取待请求的URL ο
[0119]其中,在待请求的URL中会记录有当前网页的来源的源资源参数,例如:
[0120]RequestURL:http://m.baidu.com/from = 1011267b/s ? word = google&ts =0000936&t_kt = O&sa = ihr_l&ss = 001。
[0121]在网页中触发了向web服务器发送网页请求时,通过该待请求的URL中的源资源参数:1011267b,web服务器会得知该网页请求是从哪个页面链接过来的,web服务器籍此可以获得一些信息用于处理。其中,在待请求的URL中查询源资源参数的方式为查找到“from=”这一项内容,则可以确定后面的内容为源资源参数。
[0122]第二获取单元3012,用于在第一网页请求的头字段中的请求消息中获取源资源URL ο
[0123]浏览器厂商一般会和一些网站进行合作,并将这些合作的网站的URL地址设置在浏览器的索引页面中,便于用户访问。当用户在浏览器的索引页面中点击了某个合作网站的URL地址后,加载的该合作网站的网页中的Referer头域中会携带有该合作网站与该浏览器相对应的源资源URL,该源资源URL中会有该浏览器对应的源资源参数。
[0124]其中,request-header中还包括Referer头域,而源资源URL存储于该Referer头域中。源资源URL由以下内容组成:域名+源资源参数。
[0125]例如:Referer:http://m.baidu.com/ ? from = 1011267b。
[0126]上述的Referer头域中的域名为:m.baidu.com,源资源参数为1011267b。通过在Referer头域中查找到“? from =”这一项内容,则可以确定后面的内容为源资源参数。
[0127]在第一获取单元3011描述的示例中待请求的URL中的源资源参数1011267b即为当前终端的浏览器对应的源资源参数,在该浏览器向baidu的web服务器发送网页请求时,该web服务器会根据网页请求中待请求URL中的1011267b确定该网页的来源是从终端中使用的浏览器对应的索引页面。
[0128]如果当前的网络中发生了网址劫持,而该浏览器请求回来的网页中部分参数会被运营商篡改,进而导致在该网页中触发的网页请求中的待请求URL中的源资源参数会被篡改。但是在request-header中的Referer头域中的内容并不会被修改,因此本公开实施例可以通过在用户加载了浏览器的合作网站的URL地址对应的网页以后,通过在这些网页中触发的网页请求中检测待请求的URL中源资源参数与源资源URL中源资源参数是否相同的方式,可以检测出是否发生了网址劫持。
[0129]其中,如图5所示,检测模块302,包括:
[0130]检测单元3021,用于当所述获取模块获取到的所述源资源URL中的源资源参数与所述浏览器对应的源资源参数相同时,检测所述获取模块获取到的所述待请求的URL的源资源
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1