[发明专利]一种代理服务器识别方法及装置有效
申请号: | 201210309017.6 | 申请日: | 2012-08-27 |
公开(公告)号: | CN103634359B | 公开(公告)日: | 2017-03-01 |
发明(设计)人: | 黄冕 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L12/26 |
代理公司: | 北京安信方达知识产权代理有限公司11262 | 代理人: | 栗若木,曲鹏 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 代理服务器 识别 方法 装置 | ||
技术领域
本申请涉及互联网领域,尤其涉及一种代理服务器识别方法及装置。
背景技术
目前互联网上存在一种广泛的应用即为IP地址与地理位置互查技术,该技术广泛应用于互联网各个领域,尤其是风险控制领域,作为一个强风险因子使用,其在风险控制领域方案应用原理是检测一个用户是否短时间内在不同的地理位置登录,如果是,则可以认为是一个高风险操作。这个判断是基于用户的IP是真实IP才成立的。但代理服务器技术打破了这一应用的前提。也就是说一个北京的用户完全可以通过杭州的代理服务器,则服务器看到的用户IP地址为杭州代理服务器的地址。
怎样区分出代理服务器的问题一直在业界讨论,业界也有不少该类问题的解决方案,但主要还是集中在两个方向:
1、代理服务器库的收集,有基于爬虫从互联网上抓取的,还有基于主动扫描的代理服务器收集。
该类解决方案中,针对基于爬虫从互联网上抓取的方式,有很多代理服务器是未在互联网上公布的,或者是黑客控制的一些肉机,此信息非常的不完全;针对于主动扫描的方式,互联网上活跃主机量非常巨大,而且代理服务器的服务端口不固定,故此方案扫描周期非常长,性价比非常差。
2、基于代理服务器特征的识别,比如说正规代理服务器发出的报文在HTTP头中都存在Via、X-Forwarded-for等字段。
该类解决方案针对于正规的代理服务器软件是有效的,但是很多代理服务器软件可以配置不加此字段,此方法非常不可靠。
发明内容
本申请要解决的技术问题是如何识别出用户是否使用了代理服务器。
为了解决上述问题,本申请提供了一种代理服务器识别装置,包括:
HTTP报文发送器,用于当服务器收到用户的GET请求时,生成并返回一个携带控制指令的HTTP报文,所述控制指令用于指示接收到该HTTP报文的浏览器返回一个对应的响应消息给服务器;
探测器,用于判断对于发给同一用户的HTTP报文,服务器收到TCP ACK确认所需时间和收到所述对应的响应消息所需时间的长度之差是否超过一预定阈值,如果是则判断该用户使用了代理服务器。
进一步地,所述控制指令为js代码,所述对应的响应消息为ajax请求。
进一步地,所述携带控制指令的HTTP报文中还携带服务器时间戳和签名信息,所述对应的响应消息中包含该服务器时间戳和签名信息。
进一步地,所述探测器包括:
TCP时间探测器,用于计算一HTTP报文从发送给一用户到收到该HTTP报文对应的TCP ACK确认之间的时间差,得到该用户的TCP时间差;
HTTP时间探测器,用于计算所述携带控制指令的HTTP报文从发送给一用户到收到对应的响应消息之间的时间差,得到该用户的HTTP时间差;
比较器,用于计算一用户的TCP时间差和HTTP时间差之间的差值,如果该差值的绝对值超过一预定阈值,则判断该客户端使用了代理服务器。
进一步地,探测器判断对于发给同一用户的HTTP报文,服务器收到TCPACK确认所需时间和收到所述对应的响应消息所需时间的长度之差是否超过一预定阈值是指:
所述探测器当服务器发出一个所述携带控制指令的HTTP报文后,记录收到该HTTP报文对应的TCP ACK确认的时刻、以及收到该HTTP报文对应的响应消息的时刻;判断这两个时刻的间隔时间长度是否超过一预定阈值。
本申请还提供了一种代理服务器识别方法,包括:
当服务器收到用户的GET请求时,生成并返回一个携带控制指令的HTTP报文,所述控制指令用于指示接收到该HTTP报文的浏览器返回一个对应的响应消息给服务器;
判断对于发给同一用户的HTTP报文,服务器收到TCP ACK确认所需时间和收到所述对应的响应消息所需时间的长度之差是否超过一预定阈值,如果是则判断该用户使用了代理服务器。
进一步地,所述控制指令为js代码,所述对应的响应消息为ajax请求。
进一步地,所述携带控制指令的HTTP报文中还携带服务器时间戳及签名信息,所述对应的响应消息中包含该服务器时间戳及签名信息。
进一步地,所述判断对于发给同一用户的HTTP报文,服务器收到TCPACK确认所需时间和收到所述对应的响应消息所需时间的长度之差是否超过一预定阈值的步骤包括:
计算一HTTP报文从发送给一用户到收到该HTTP报文对应的TCP ACK确认之间的时间差,得到该用户的TCP时间差;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210309017.6/2.html,转载请声明来源钻瓜专利网。