CN104079429A - 一种基于referer字段的盗链防护的方法及Web网关 - Google Patents
一种基于referer字段的盗链防护的方法及Web网关 Download PDFInfo
- Publication number
- CN104079429A CN104079429A CN201410219140.8A CN201410219140A CN104079429A CN 104079429 A CN104079429 A CN 104079429A CN 201410219140 A CN201410219140 A CN 201410219140A CN 104079429 A CN104079429 A CN 104079429A
- Authority
- CN
- China
- Prior art keywords
- client
- http request
- web server
- request message
- http
- 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.)
- Pending
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于referer字段的盗链防护方法及Web网关,该Web网包括:拦截单元,用于拦截来自客户端的HTTP请求报文;解析单元,用于解析所述HTTP请求报文的头域,获取HTTP请求的URL和referer字段数据;判断单元,用于判断所述referer字段数据与被保护Web服务器的入口信息数据是否一致;处理单元,用于在所述判断单元的判断结果为一致时,转发所述HTTP请求报文至被保护的Web服务器,在所述判断单元的判断结果为不一致时,丢弃该HTTP请求报文,并向客户端返回HTTP请求失败的响应,无需Web服务器任何额外的开销,也不需要修改页面脚本,能有效的降低对Web服务器性能的要求,并提高效率。
Description
技术领域
本发明涉及Web服务中的防盗链技术领域,尤其涉及一种基于referer字段的盗链防护的方法及Web网关。
背景技术
盗链是指服务商自己不提供服务器内容,而是通过技术手段,直接在自己的网站上向最终用户提供其他服务商的内容,骗取最终用户的浏览和点击率,其盗取主要是最终资源,如图片、音频、视频和文件等。申请号为200610018165.7的专利申请中公开了一种Web服务防盗链方法,由于它实现在Web服务器上,处理复杂,需要修改页面里的所有链接地址,还要对请求报文做校验,对Web服务器性能的要求很高,并且需要修改页面脚本,带来额外开销,效率低下。
发明内容
本发明鉴于上述情况而作出,其目的是提供一种基于referer字段的盗链防护的方法及Web网关,无需Web服务器任何额外的开销,也不需要修改页面脚本,能有效的降低对Web服务器性能的要求,并提高效率。
根据本发明的一个方面,提供一种基于referer字段的盗链防护的方法,包括以下步骤:
步骤S1,拦截来自客户端的HTTP请求报文。
步骤S2,解析所述HTTP请求报文的头域,获取HTTP请求的URL和referer字段数据。
步骤S3,判断所述referer字段数据与被保护Web服务器的入口信息数据是否一致。
步骤S4,如果一致,转发所述HTTP请求报文至被保护的Web服务器,如果不一致,丢弃该HTTP请求报文,并向客户端返回HTTP请求失败的响应。
进一步地,步骤S3包括:判断referer字段中的地址信息与被保护Web服务器的入口地址信息是否一致。
其中,向客户端返回的HTTP请求失败的响应中包括错误代码404。
进一步地,所述方法由位于客户端和被保护Web服务器之间的Web网关实现,客户端与被保护Web服务器之间的HTTP报文经过所述Web网关转发。
进一步地,所述步骤S1之前还包括:
客户端访问盗链服务器。
盗链服务器向客户端发送响应页面,其中有指向被保护Web服务器的最终资源的链接。
客户端根据链接的地址,向被保护Web服务器发送HTTP请求报文,请求获取所述最终资源,所述HTTP请求报文的头域中的referer字段数据是盗链服务器的地址。
根据本发明的另一方面,提供一种基于referer字段的盗链防护的Web网关,包括:
拦截单元,用于拦截来自客户端的HTTP请求报文;
解析单元,用于解析所述HTTP请求报文的头域,获取HTTP请求的URL和referer字段数据;
判断单元,用于判断所述referer字段数据与被保护Web服务器的入口信息数据是否一致;
处理单元,用于在所述判断单元的判断结果为一致时,转发所述HTTP请求报文至被保护的Web服务器,在所述判断单元的判断结果为不一致时,丢弃该HTTP请求报文,并向客户端返回HTTP请求失败的响应。
Web网关位于客户端和被保护Web服务器之间,客户端与被保护Web服务器之间的HTTP报文经过所述Web网关转发
具体地,所述判断所述referer字段数据与被保护Web服务器的入口信息数据是否一致,包括:判断所述referer字段中的地址信息与被保护Web服务器的入口地址信息是否一致。
向客户端返回的HTTP请求失败的响应中包括错误代码404。
进一步地,在Web网关通过所述拦截单元拦截来自客户端的HTTP请求报文之前,还包括:
客户端访问盗链服务器。
盗链服务器向客户端发送响应页面,其中有指向被保护Web服务器的最终资源的链接。
客户端根据链接的地址,向被保护Web服务器发HTTP请求报文,请求获取所述最终资源,所述HTTP请求报文的头域中的referer字段数据是盗链服务器的地址。
根据本发明,提供了一种基于referer字段的盗链防护方法及Web网关,无需Web服务器任何额外的开销,也不需要修改页面脚本,能有效的降低对Web服务器性能的要求,并提高效率。
附图说明
图1是本发明的一种基于referer字段的盗链防护的方法第一实施例的流程示意图;
图2是本发明的一种基于referer字段的盗链防护的方法第二实施例的流程示意图;
图3是本发明的一种基于referer字段的盗链防护Web网关的结构示意图;
图4是本发明的一种基于referer字段的盗链防护Web网关的组网示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
本发明提供一种基于referer字段的盗链防护方法及Web网关,无需Web服务器任何额外的开销,也不需要修改页面脚本,能有效的降低对Web服务器性能的要求,并提高效率。
图1是本发明的一种基于referer字段的盗链防护的方法第一实施例的流程示意图。
如图1所示,一种基于referer字段的盗链防护的方法,包括以下步骤:
步骤S1,拦截来自客户端的HTTP请求报文。
当客户端向被保护Web服务器发送HTTP请求报文时,该请求会被拦截。
步骤S2,解析所述HTTP请求报文的头域,获取HTTP请求报文中的URL和referer字段数据。
referer字段位于HTTP请求报文的头域中,用于告知Web服务器该HTTP请求报文是从哪个页面链接过来的,例如,当该HTTP请求报文是从地址http://www.example.com链接过来的,referer字段的数据即为http://www.example.com。
步骤S3,判断所述referer字段数据与被保护Web服务器的入口信息数据是否一致。
具体地,判断referer字段中的地址信息与被保护Web服务器的入口地址信息是否一致。
步骤S4,如果一致,转发所述HTTP请求报文至被保护的Web服务器,如果不一致,丢弃该HTTP请求,并向客户端返回HTTP请求失败的响应。
例如,被保护的Web服务器的入口地址是http://www.target.com,而referer字段中的地址是http://www.example.com,二者不一致,说明该请求是通过其他网站盗链过来的,因此丢弃该HTTP请求报文,并向客户端返回HTTP请求失败的响应,该HTTP请求失败的响应中包括错误代码404,指明请求访问的资源不存在。
图2是本发明的一种基于referer字段的盗链防护的方法第二实施例的流程示意图。
根据图2所示,一种基于referer字段的盗链防护的方法,包括以下步骤:
步骤S201,客户端访问盗链服务器。
例如,盗链服务器地址为http://www.example.com。
步骤S202,盗链服务器向客户端发送响应页面。
所述响应页面中有指向被保护Web服务器的最终资源的链接,如图片、音频、视频和文件等。
步骤S203,客户端根据响应页面中链接的地址,向被保护Web服务器发HTTP请求报文,请求获取最终资源。
此时,根据HTTP协议(RFC2616)中的定义,所述HTTP请求报文的头域中会携带referer字段,该字段的数据是盗链服务器的地址,例如http://www.example.com。
步骤S204,Web网关拦截来自客户端的HTTP请求报文。
步骤S205,Web网关解析所述HTTP请求报文的头域,获取HTTP请求的URL和referer字段数据。
referer字段位于HTTP请求报文的头域中,用于告知Web服务器该HTTP请求报文是从哪个页面链接过来的。
步骤S206,Web网关判断所述referer字段数据与被保护Web服务器的入口信息数据是否一致。
具体地,Web网关判断referer字段中的地址信息与被保护Web服务器的入口地址信息是否一致。
步骤S207,如果一致,转发所述HTTP请求报文至被保护的Web服务器,如果不一致,丢弃该HTTP请求报文,并向客户端返回HTTP请求失败的响应。
向客户端返回的HTTP请求失败的响应中包括错误代码404,指明请求访问的资源不存在。
图3是本发明的一种基于referer字段的盗链防护Web网关的结构示意图。
图4是本发明的一种基于referer字段的盗链防护Web网关的组网示意图。
如图3,图4所示,一种基于referer字段的盗链防护Web网关401,Web网关401位于客户端402和被保护Web服务器403之间,客户端402与被保护Web服务器403之间的HTTP报文经过Web网关401转发,当客户端402向被保护Web服务器403发送HTTP请求报文时,Web网关401通过拦截单元301拦截该请求。
Web网关401通过解析单元302解析被拦截的HTTP请求报文的头域,获取HTTP请求报文的URL和referer字段数据。
referer字段位于HTTP请求报文的头域中,用于告知Web服务器403该HTTP请求报文是从哪个页面链接过来的,例如,当该HTTP请求报文是从地址http://www.example.com链接过来的,referer字段的数据即为http://www.example.com。
Web网关401通过判断单元303判断referer字段中的地址信息与被保护Web服务器403的入口地址信息是否一致,如果一致,Web网关401通过处理单元304转发所述HTTP请求报文至被保护的Web服务器403,如果不一致,Web网关401通过处理单元304丢弃该HTTP请求,并向客户端402返回HTTP请求失败的响应。
例如,被保护的Web服务器403的入口地址是http://www.target.com,而referer字段中的地址是http://www.example.com,二者不一致,说明该请求是通过其他网站盗链过来的,因此处理单元304丢弃该HTTP请求报文,并向客户端402返回HTTP请求失败的响应,该HTTP请求失败的响应中包括错误代码404,指明请求访问的资源不存在。
进一步地,在Web网关401拦截来自客户端402的HTTP请求报文之前,还包括:
客户端402访问盗链服务器404,例如http://www.example.com。
盗链服务器404向客户端402发送响应页面,其中有指向被保护Web服务器403的最终资源的链接,如图片、音频、视频和文件等。
客户端402根据链接的地址,向被保护Web服务器403发HTTP请求报文,请求获取所述最终资源,此时,根据HTTP协议(RFC2616)中的定义,所述HTTP请求报文的头域中会携带referer字段,该字段的数据是盗链服务器404的地址,例如http://www.example.com。
通过本发明的方法和Web网关,无需Web服务器任何额外的开销,也不需要修改页面脚本,能有效的降低对Web服务器性能的要求,并提高效率。
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。
Claims (10)
1.一种基于referer字段的盗链防护的方法,其特征在于,包括步骤:
步骤S1,拦截来自客户端的HTTP请求报文;
步骤S2,解析所述HTTP请求报文的头域,获取HTTP请求的URL和referer字段数据;
步骤S3,判断所述referer字段数据与被保护Web服务器的入口信息数据是否一致;
步骤S4,如果一致,转发所述HTTP请求报文至被保护的Web服务器,如果不一致,丢弃该HTTP请求报文,并向客户端返回HTTP请求失败的响应。
2.根据权利要求1所述的方法,其特征在于,所述步骤S3包括:判断referer字段中的地址信息与被保护Web服务器的入口地址信息是否一致。
3.根据权利要求1所述的方法,其特征在于,向客户端返回的HTTP请求失败的响应中包括错误代码404。
4.根据权利要求1至3任意一项所述的方法,其特征在于,所述方法由位于客户端和被保护Web服务器之间的Web网关实现,客户端与被保护Web服务器之间的HTTP报文经过所述Web网关转发。
5.根据权利要求1至3任意一项所述的方法,其特征在于,所述步骤S1之前还包括:
客户端访问盗链服务器;
盗链服务器向客户端发送响应页面,其中有指向被保护Web服务器的最终资源的链接;
客户端根据链接的地址,向被保护Web服务器发送HTTP请求报文,请求获取所述最终资源,所述HTTP请求报文的头域中的referer字段数据是盗链服务器的地址。
6.一种基于referer字段的盗链防护的Web网关,其特征在于,包括:
拦截单元(301),用于拦截来自客户端的HTTP请求报文;
解析单元(302),用于解析所述HTTP请求报文的头域,获取HTTP请求的URL和referer字段数据;
判断单元(303),用于判断所述referer字段数据与被保护Web服务器的入口信息数据是否一致;
处理单元(304),用于在所述判断单元的判断结果为一致时,转发所述HTTP请求报文至被保护的Web服务器,在所述判断单元的判断结果为不一致时,丢弃该HTTP请求报文,并向客户端返回HTTP请求失败的响应。
7.根据权利要求6所述的Web网关,其特征在于,所述判断所述referer字段数据与被保护Web服务器的入口信息数据是否一致,包括:判断所述referer字段中的地址信息与被保护Web服务器的入口地址信息是否一致。
8.根据权利要求6所述的Web网关,其特征在于,向客户端返回的HTTP请求失败的响应中包括错误代码404。
9.根据权利要求6至8任意一项所述的Web网关,其特征在于,所述Web网关位于客户端和被保护Web服务器之间,客户端与被保护Web服务器之间的HTTP报文经过所述Web网关转发。
10.根据权利要求8所述的Web网关,其特征在于,在Web网关通过所述拦截单元拦截来自客户端的HTTP请求报文之前,还包括:
客户端访问盗链服务器;
盗链服务器向客户端发送响应页面,其中有指向被保护Web服务器的最终资源的链接;
客户端根据链接的地址,向被保护Web服务器发HTTP请求报文,请求获取所述最终资源,所述HTTP请求报文的头域中的referer字段数据是盗链服务器的地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410219140.8A CN104079429A (zh) | 2014-05-22 | 2014-05-22 | 一种基于referer字段的盗链防护的方法及Web网关 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410219140.8A CN104079429A (zh) | 2014-05-22 | 2014-05-22 | 一种基于referer字段的盗链防护的方法及Web网关 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104079429A true CN104079429A (zh) | 2014-10-01 |
Family
ID=51600485
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410219140.8A Pending CN104079429A (zh) | 2014-05-22 | 2014-05-22 | 一种基于referer字段的盗链防护的方法及Web网关 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104079429A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104469496A (zh) * | 2014-12-11 | 2015-03-25 | 北京国双科技有限公司 | 用于视频播放器的盗链检测方法和装置 |
CN107566916A (zh) * | 2017-09-04 | 2018-01-09 | 北京世纪鼎点软件有限公司 | 面向网络视频链接的访问过程控制方法及装置 |
CN107911336A (zh) * | 2017-10-09 | 2018-04-13 | 西安交大捷普网络科技有限公司 | 一种web盗链防护方法 |
CN108093052A (zh) * | 2017-12-21 | 2018-05-29 | 深圳市宇轩网络技术有限公司 | 一种采用智能终端的库存管理***及方法 |
CN108696488A (zh) * | 2017-04-11 | 2018-10-23 | 腾讯科技(深圳)有限公司 | 一种上传接口识别方法、识别服务器及*** |
CN108881195A (zh) * | 2018-06-07 | 2018-11-23 | 蒋云 | 基于云环境的数据安全共享方法和装置 |
US11120535B2 (en) | 2017-10-18 | 2021-09-14 | Tencent Technology (Shenzhen) Company Limited | Image processing method, apparatus, terminal, and storage medium |
CN114499912A (zh) * | 2020-11-13 | 2022-05-13 | 北京金山云网络技术有限公司 | 防盗链的方法、装置及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101815060A (zh) * | 2009-02-23 | 2010-08-25 | 未序网络科技(上海)有限公司 | 互联网内容发布网络防盗链方法 |
US20130347069A1 (en) * | 2012-06-25 | 2013-12-26 | Electronics And Telecommunications Research Institute | Referer verification apparatus and method |
CN103561036A (zh) * | 2013-11-12 | 2014-02-05 | 深信服网络科技(深圳)有限公司 | 白名单上网环境下的请求拦截方法及装置 |
CN103701796A (zh) * | 2013-12-23 | 2014-04-02 | 山东中创软件商用中间件股份有限公司 | 一种基于hash技术的防盗链***和方法 |
-
2014
- 2014-05-22 CN CN201410219140.8A patent/CN104079429A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101815060A (zh) * | 2009-02-23 | 2010-08-25 | 未序网络科技(上海)有限公司 | 互联网内容发布网络防盗链方法 |
US20130347069A1 (en) * | 2012-06-25 | 2013-12-26 | Electronics And Telecommunications Research Institute | Referer verification apparatus and method |
CN103561036A (zh) * | 2013-11-12 | 2014-02-05 | 深信服网络科技(深圳)有限公司 | 白名单上网环境下的请求拦截方法及装置 |
CN103701796A (zh) * | 2013-12-23 | 2014-04-02 | 山东中创软件商用中间件股份有限公司 | 一种基于hash技术的防盗链***和方法 |
Non-Patent Citations (1)
Title |
---|
徐利再: "移动互联网视频业务盗链分析及对策研究", 《软件(国际IT传媒品牌)》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104469496A (zh) * | 2014-12-11 | 2015-03-25 | 北京国双科技有限公司 | 用于视频播放器的盗链检测方法和装置 |
CN108696488A (zh) * | 2017-04-11 | 2018-10-23 | 腾讯科技(深圳)有限公司 | 一种上传接口识别方法、识别服务器及*** |
US10972496B2 (en) | 2017-04-11 | 2021-04-06 | Tencent Technology (Shenzhen) Company Limited | Upload interface identification method, identification server and system, and storage medium |
CN108696488B (zh) * | 2017-04-11 | 2022-04-15 | 腾讯科技(深圳)有限公司 | 一种上传接口识别方法、识别服务器及*** |
CN107566916A (zh) * | 2017-09-04 | 2018-01-09 | 北京世纪鼎点软件有限公司 | 面向网络视频链接的访问过程控制方法及装置 |
CN107911336A (zh) * | 2017-10-09 | 2018-04-13 | 西安交大捷普网络科技有限公司 | 一种web盗链防护方法 |
CN107911336B (zh) * | 2017-10-09 | 2022-02-25 | 西安交大捷普网络科技有限公司 | 一种web盗链防护方法 |
US11120535B2 (en) | 2017-10-18 | 2021-09-14 | Tencent Technology (Shenzhen) Company Limited | Image processing method, apparatus, terminal, and storage medium |
CN108093052A (zh) * | 2017-12-21 | 2018-05-29 | 深圳市宇轩网络技术有限公司 | 一种采用智能终端的库存管理***及方法 |
CN108881195A (zh) * | 2018-06-07 | 2018-11-23 | 蒋云 | 基于云环境的数据安全共享方法和装置 |
CN114499912A (zh) * | 2020-11-13 | 2022-05-13 | 北京金山云网络技术有限公司 | 防盗链的方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104079429A (zh) | 一种基于referer字段的盗链防护的方法及Web网关 | |
US10275806B2 (en) | Systems and methods to bypass online advertisement blockers | |
US10594728B2 (en) | Detection of domain name system hijacking | |
EP2939454B1 (en) | System and method for correlating network information with subscriber information in a mobile network environment | |
US20210075873A1 (en) | Persistent edge state of end user devices at cache nodes | |
US20150271202A1 (en) | Method, device, and system for detecting link layer hijacking, user equipment, and analyzing server | |
US10230691B2 (en) | Systems, devices, and methods for improved domain name system firewall protection | |
US10341288B2 (en) | Methods circuits devices systems and associated computer executable code for providing conditional domain name resolution | |
GB2512954A (en) | Detecting and marking client devices | |
CN107911336B (zh) | 一种web盗链防护方法 | |
US8914510B2 (en) | Methods, systems, and computer program products for enhancing internet security for network subscribers | |
CN104506525A (zh) | 防止恶意抓取的方法和防护装置 | |
US20190132292A1 (en) | Secure anonymous communications methods and apparatus | |
US20140105119A1 (en) | System and method for correlating security events with subscriber information in a mobile network environment | |
US11240202B2 (en) | Message processing method, electronic device, and readable storage medium | |
JP6666441B2 (ja) | Ipアドレス取得方法及び装置 | |
GB2575052A (en) | Phishing detection | |
US10855704B1 (en) | Neutralizing malicious locators | |
US10432646B2 (en) | Protection against malicious attacks | |
WO2017113082A1 (en) | Url filtering method and device | |
CA3116663C (en) | Accelerating connections to a host server | |
GB2543042A (en) | Method for privacy protection | |
CN109962838B (zh) | 垃圾邮件处理方法、装置、***和计算机可读存储介质 | |
CN106357536B (zh) | 一种报文的传输方法及装置 | |
CN105450756A (zh) | 一种基于标识的url链接失效的恢复处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20141001 |