CN102685081B - 一种网页请求安全处理方法及系统 - Google Patents

一种网页请求安全处理方法及系统 Download PDF

Info

Publication number
CN102685081B
CN102685081B CN201110064795.9A CN201110064795A CN102685081B CN 102685081 B CN102685081 B CN 102685081B CN 201110064795 A CN201110064795 A CN 201110064795A CN 102685081 B CN102685081 B CN 102685081B
Authority
CN
China
Prior art keywords
web
page
page requests
encryption
requests
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
CN201110064795.9A
Other languages
English (en)
Other versions
CN102685081A (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.)
Yunnan Tengyun Information Industry Co.,Ltd.
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201110064795.9A priority Critical patent/CN102685081B/zh
Publication of CN102685081A publication Critical patent/CN102685081A/zh
Application granted granted Critical
Publication of CN102685081B publication Critical patent/CN102685081B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例公开了一种网页请求安全处理方法及系统,该方法包括:浏览器侧的当前网页构造加密的当前网页的登陆信息;浏览器侧发送所述当前网页的网页请求,所述网页请求中包括所述加密的当前网页的登录信息,并还包括浏览器添加的当前网页的登录信息;服务器侧接收所述网页请求,将所述网页请求中的加密的当前网页的登录信息与加密后的所述浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则正常响应所述网页请求。采用本发明,可在对整个系统改造小的情况下实现对CRSF攻击的识别和防御。

Description

一种网页请求安全处理方法及系统
技术领域
本发明涉及互联网安全领域,尤其涉及一种网页请求安全处理方法及系统。
背景技术
互联网中的信息安全问题一直是该领域中非常重要的问题。其中,CSRF(Cross-siterequestforgery,跨站请求伪造)是一种常见的通过对网页的恶意利用从而盗取用户信息的一种技术,该技术也被称成为“oneclickattack”或者“sessionriding”,还可缩写为XSRF。
CSRF利用用户在已登陆网站A上的登陆状态,在B网站的页面上通过http(HyperTextTransferProtocol,超文本传输协议)请求(隐藏的图片或者脚本引用)的方式在A网站上进行需要登陆验证的操作,从而达到攻击或窃取隐私信息的目的。这在多窗口浏览器中尤为常见。
由于浏览器本身的特性,在发起一个url请求时会自动在请求的数据包中附加上浏览器在该url的所在域名下的相关cookie数据。
当用户在一个浏览器窗口中登陆了A网站,再同时开另外一个窗口访问B网站。如果B网页中的一个元素发起了一个A网站某个页面的请求,这时这个请求会自动被浏览器带上用户在A网站的cookie,从而实现以登陆后的身份对A网站的操作。
其中请求的发起操作有多种形式,一般表现为把请求的url作为页面中图片、iframe之类元素的路径来实现,比较复杂的会通过隐藏的脚本代码或者flash组件来发起。
基于上述的原理,若用户在一个多窗口浏览器中购物网页进行了登陆,黑客通过在某网页中加入特定的链接,该链接则可能是伪造的上述购物网页的付费链接,则当用户同时打开该某网页时则相当于向用户已登录的购物网页发送了付费请求。
为了防御上述的CSRF攻击,在现有技术中提出了三种方式:
(1)通过人工或系统扫描寻找存在CSRF漏洞的网页和接口,开发人员收到漏洞报告后,针对性的进行相应的修复;
(2)瞬时授权方法:每次访问请求使用一个临时token来做为访问的安全标记;
(3)用post代替get方式提交数据请求。
但是上述三种方法分别具有自身的局限性:
(1)人力成本高、被动:需要开发人员不断的对发现的漏洞进行跟进修复;无法保证所有的CSRF漏洞都能及时发现并解决;且无法杜绝后续开发中新的CSRF漏洞出现;
(2)开发成本高:同样功能开发需要使用更复杂的设计方案,且不适用于静态网页;
(3)安全性差、开发成本高:攻击者可以通过多种方式模拟post请求;如果需要在已经成熟的网站上进行部署的话需要投入大量的资源进行代码调整。
发明内容
本发明实施例所要解决的技术问题在于,提供一种网页请求安全处理方法及系统。可在对整个系统改造小的情况下实现对CRSF攻击的识别和防御。
为了解决上述技术问题,本发明实施例提供了一种网页请求安全处理方法,包括:
步骤1、浏览器侧的当前网页构造加密的当前网页的登陆信息;
步骤2、浏览器侧发送所述当前网页的网页请求,所述网页请求中包括所述加密的当前网页的登录信息,并还包括浏览器添加的当前网页的登录信息;
步骤3、服务器侧接收所述网页请求,将所述网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则正常响应所述网页请求。
其中,步骤3可包括:
服务器侧接收所述网页请求,并判断所述网页请求是否为预定义的白名单中的网页请求;
若判断结果为否,则正常响应所述网页请求;
若判断结果为是,则将所述网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则正常响应所述网页请求。
本方法还包括管理所述白名单。
步骤1还包括:
当前网页脚本根据用户在当前网页登陆后保存在cookie中的登录会话的加密值构造加密的当前网页的登陆信息。
步骤2还包括:
所述当前网页将所述加密的当前网页的登录信息以参数形式添加到所述当前网页的链接中;
浏览器发送与所述链接对应的网页请求,所述网页请求中包括所述链接信息,和与所述链接相关的登录信息。
相应的,本发明实施例还提供了一种网页请求安全处理系统,包括:
浏览器,用于发送当前网页的网页请求,其中,所述网页请求中包括由当前网页构造的加密的当前网页的登陆信息,并还包括本浏览器添加的当前网页的登录信息;
服务器,用于接收所述网页请求,将所述网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则正常响应所述网页请求。
其中,该服务器可包括:
请求接收模块,用于接收所述网页请求;
白名单判断模块,用于判断所述网页请求是否为预定义的白名单中的网页请求,若判断结果为否,则正常响应所述网页请求;
信息匹配模块,用于当白名单判断模块得判断结果为是时,将所述网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则正常响应所述网页请求。
相应的本发明实施例还提供了一种防御插件,用于安装在如前所述的服务器中,该插件用于将所述服务器接收的网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则转入所述服务器的其他模块正常响应所述网页请求。
其中,该插件还包括:
白名单判断模块,用于判断所述网页请求是否为预定义的白名单中的网页请求,若判断结果为否,则转入所述服务器的其他模块正常响应所述网页请求;
信息匹配模块,用于当白名单判断模块得判断结果为是时,将所述网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则转入所述服务器的其他模块正常响应所述网页请求。
相应的,本发明实施例还包括一种网页,装载在如前所述的浏览器中,其中,该网页包括网页脚本,所述网页脚本用于获取用户在所述网页登陆后保存在cookie中的登录会话的加密值。
其中,所述网页可包括基础函数,所述函数用于以参数形式将所述加密值添加到所述当前网页的网页请求url串中。
实施本发明实施例,具有如下有益效果:
在本发明实施例中,在当前网页请求中加入由当前网页构造加密的当前网页的登陆信息,由服务器侧对该登录信息进行匹配,仅对匹配通过的网页请求进行正常处理,由于该加密的当前网页的登录信息是由当前网页构造,其他网页通过链接伪造当前网页请求时无法构造出该加密的当前网页的登录信息,从而实现防御CSRF攻击的目的。同时,本方案中,浏览器侧只需要对网页脚本进行编写就可以实现构造登录信息并随网页请求发送的目的,而服务器侧只需要安装相应的插件就可以实现登录信息的匹配处理过程,对整个系统改造小且容易实施。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中的网页请求安全处理方法的一个具体流程示意图;
图2是本发明实施例中的网页请求安全处理系统的一个具体组成示意图;
图3是本发明实施例中的插件的一个具体组成示意图;
图4是本发明实施例中的各组件配合实现网页请求安全处理方法的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中通过对网页代码和WEB服务器两侧的改造来实现防御CSRF攻击的目的。
即,在浏览器侧通过改造网站代码,在所有http请求(包括ajax、jsonp、form表单提交等)中新增一个g_tk参数(此处仅为示例,该参数名可设为任意的其他符号),其值为用户在该网站上登陆后保存在cookie中的skey字段内容(此处仅为实例,该参数根据各个网站的cookie设计而不同,只要是能用于识别用户的字段就行)的加密值。对于用cookie中的用户识别字段作为token(即上述的g_tk参数)生成的主要原因是浏览器的设计上规定:通过B网站是无法获取到A网站的cookie信息。从而保证在B网站访问的时候网页无法构造出适用于该用户的符合A网站要求的http请求。
而在服务器侧,针对不同的web服务器可开发相应版本的CSRF防御插件,该插件通过白名单配置捕获所有需要进行CSRF检测的http请求(此处配置白名单主要是为了提高效率,在其他实施例中也可以不配置白名单,这样服务器会对所有的http请求进行g_tk参数比较),并从请求的url(Uniform/UniversalResourceLocator,统一资源定位符)中取出g_tk参数,并从cookie中取出登陆session值,把登陆session同样加密后跟g_tk进行比较,如果两个值不相同则表示此请求有CSRF攻击嫌疑,插件中断请求返回空白并记录访问日志供分析;如果两个值相同则视为正常请求进行响应。
还以前述的多窗口浏览器为例,攻击者继续从B网页伪造A网页的请求,请求的包头会被浏览器带上A网页的登陆cookie伪装登陆,但由于B网页无法获取到A网页的cookie,所以所构造的A网页请求中无法包含准确的g_tk参数内容。在服务器侧收到http请求进行前面所述的session和g_tk验证时就会发现这个请求是非法的。
为详细、条理的描述基于上述原理的本发明方案,以下分别列举多个实施例进行阐述。
如图1所示,为本发明实施例中的网页请求安全处理方法的一个具体流程示意图,该流程包括:
101、浏览器侧的当前网页构造加密的当前网页的登陆信息。如,当前网页脚本根据用户在当前网页登陆后保存在cookie中的登录会话的加密值构造加密的当前网页的登陆信息。即,该加密的当前网页的登陆信息可以是cookie中的登陆session加密值,构造途径可以是通过在网页中编写网页脚本,通过该当前网页脚本获取用户在当前网页登陆后保存在cookie中的登录会话的加密值。当然可以是通过其他方式实现这种信息获取和构造。
需要说明的是,上述加密的当前网页(如,网页A)的登陆信息(如,cookie中的登陆session加密值)是由当前网页构造的。对应当前的网页组成,可通过将加密的当前网页的登陆信息添加到当前网页的url链接中,当用户点击网页上的链接(如点击带链接的文字、图片,或填写登录名和密码后确认等)时,生成对应的网页请求中会包括url链接的相关参数(即,也包括上述加密值)。
而对于其他网页(如网页B),虽然其可以通过伪造的链接令浏览器发送包括网页A的cookie的网页请求,但是网页B中的链接中不包括网页A的加密的登录信息,也就不能将该加密的登录信息添加到网页B的网页请求中的(虽然网页B可以伪造网页A的链接,但是其无法获取网页A的cookie,也就无法构造上述加密值,也无法在伪造的链接中增加加密值),而浏览器在发送网页B的网页请求时,虽然可以在该网页请求中带上网页A的cookie(浏览器的特性是在发送网页请求时自动将该请求对应的网页的cookie带在该请求中,即,当网页B伪造了网页A的链接时,该请求是对应于网页A的请求,浏览器会将网页A的cookie添加到该请求中,网页B本身并不能获知网页A的cookie),但是其不会带上上述的网页A的加密的登录信息。
102、浏览器侧发送所述当前网页的网页请求,所述网页请求中包括所述加密的当前网页的登录信息,并还包括浏览器添加的当前网页的登录信息。
本步骤实现时可以以以下方式:所述当前网页将所述加密的当前网页的登录信息以参数形式添加到所述当前网页的链接中;
浏览器发送与所述链接对应的网页请求,所述网页请求中包括所述链接信息,和与所述链接相关的登录信息。
结合前述的说明,该链接即是产生当前网页的网页请求的链接,浏览器在发送网页请求时,会包括该链接的信息,和该链接对应的网页的登录信息(如,cookie)
在上述101~102步骤中,对应具体的网页形式,网页由两种构造加密的登录信息的方式:1)由网页中的javascript脚本发起的异步http请求(ajax,jsonp等),这种可以直接对网页中发出http请求的基础函数进行改造,在请求发送前在其url中新增参数g_tk,且值为cookie中登陆session的加密值;2)网页中的form表单提交的http请求,这种方式可通过对网页中的form表单进行改造,在提交的action的url后增加g_tk参数来实现信息获取。
在这两种情况下不管是get还是post方式提交,g_tk参数都可统一放在url串中以get方式传递到后台服务器,这样,若服务器侧以插件方式进行CSRF攻击的防御,则可以简化该插件的验证逻辑。因为post和get两种传输方式中,参数在数据包中存放的位置不一样,get方式传输时g_tk是在数据包靠前的位置,服务器进行处理的时候能够只读取少量数据就行,而post相关,需要把整个数据包都进行分析才能拿到g_tk的值。同时如果不把g_tk保存的位置明确在get或者post中,那么服务器在取这个参数的时候就需要在数据包的多处进行查找。虽然差别不大,但在服务器处理海量请求的时候,这个性能会有很大一个差异。
103、服务器侧接收所述网页请求,将所述网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则正常响应所述网页请求。
在本步骤中为了提高效率,可增加白名单验证机制,在这种机制下的白名单中定义(或者通过学习获得)需要验证的网页请求(或类型)等来减少需要进行匹配的请求。如,在白名单中定义网页请求涉及付款、购买、修改密码等类型的网页请求时,才进行进一步的匹配验证,则此时步骤103可包括如下流程:
服务器侧接收所述网页请求,并判断所述网页请求是否为预定义的白名单中的网页请求;
若判断结果为否,则正常响应所述网页请求;
若判断结果为是,则将所述网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则正常响应所述网页请求。
相应的,如图2所示,为本发明实施例中的网页请求安全处理系统的组成图,该系统包括:
浏览器1,用于发送当前网页的网页请求,其中,所述网页请求中包括由当前网页构造的加密的当前网页的登陆信息,并还包括本浏览器添加的当前网页的登录信息;
服务器2,用于接收所述网页请求,将所述网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则正常响应所述网页请求。
其中,为实现白名单验证机制,则该服务器2可包括(图2中为包括的情况):
请求接收模块20,用于接收所述网页请求;
白名单判断模块220,用于判断所述网页请求是否为预定义的白名单中的网页请求,若判断结果为否,则正常响应所述网页请求;
信息匹配模块222,用于当白名单判断模块得判断结果为是时,将所述网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则正常响应所述网页请求。
如前所述,为了降低开发成本和复杂度,使现有技术中的服务器容易的实现上述功能,可通过为服务器添加插件的方法。相应的,本发明实施例还提供了一种防御插件,用于安装在如前所述的服务器中,该插件用于将所述服务器接收的网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则转入所述服务器的其他模块正常响应所述网页请求。
如图3所示,为具有白名单验证机制的插件,该插件22还包括:
白名单判断模块220,用于判断所述网页请求是否为预定义的白名单中的网页请求,若判断结果为否,则转入所述服务器的其他模块正常响应所述网页请求;
信息匹配模块222,用于当白名单判断模块得判断结果为是时,将所述网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则转入所述服务器的其他模块正常响应所述网页请求。
对于上述白名单,可部署灰度方案以减少误杀的情况,相应的,本发明实施例中的插件(或称Csrf防御插件)对http请求的处理可以设置两种模式:a)token合法、记日志、不拦截非法请求;b)token合法、记日志、拦截非法请求。其中,token即是指前述的加密的当前网页的登录信息。
对于部署的灰度过程,白名单是人工维护的。这两种模式主要是用于csrf功能的灰度实施,通过日志来观察插件会不会误杀正常请求,当一段时间的日志无异常数据的时候,再启用b中的拦截模式。
上述中日志记录的内容包括:访问ip、请求url、请求来路url等;这里的白名单是属于csrf防御插件的配置文档,可以通过开发人员手工配置或者是用辅助工具实现快速配置。
在利用上述两种模式实现本方案时,先执行模式a,即,将需要进行csrf防御的请求url通过白名单管理加入配置,先设置为不拦截非法请求模式,收集该接口的访问日志;对日志进行人工分析,如果有被记录的正常请求由开发人员进行处理,直至确认日志中不存在误杀记录为止;前面两步通过后再把该url的配置改为拦截模式,csrf正式生效。进入对其他url的处理。
如前所述,为了降低开发成本和复杂度,使现有技术中的浏览器侧容易的实现本方案中的相应功能,可通过在网页中添加相应代码的方式。即,本发明实施例还包括一种网页,装载在如前所述的浏览器中,其中,该网页包括网页脚本,所述网页脚本用于获取用户在所述网页登陆后保存在cookie中的登录会话的加密值。
其中,所述网页可包括基础函数,所述函数用于以参数形式将所述加密值添加到所述当前网页的网页请求url串中,并以get方式发送到服务器侧。
如图4所示,为本发明实施例中的各组件配合实现上述功能的示意图。该图中示例了浏览器侧和服务器侧的组成和交互。在用户浏览器中包括http请求发起模块,该模块的功能通过对网页代码进行如前所述的改造即可实现。图中三大模块功能如下。
http请求发送起模块:主要负责对原请求url的改造,读取cookie中的登陆session并加密,把加密后的值做为参数附加到url中;
Csrf检测防御插件:主要负责在服务程序处理请求前,对用户的http请求进行判断,如果为csrf攻击则直接中断请求返回空白,如果是正常请求就跳过,由后台程序进行响应。
url白名单管理模块:为了避免防御模块对所有的url进行校验,造成不必要的性能浪费,本模块主要负责为防御模块提供请求csrf检测前进行筛选的白名单配置文件;以及日常运维中对白名单的配置管理。
各模块交互如下:
1.1非法请求,http请求发送起模块向服务器发送非法请求,非法请求是指没有或者只有错误g_tk参数的http请求,如前面所述中B网站的伪造请求;
1.2命中白名单,Apache(一种WEB服务器软件,在本例中其具有白名单验证功能)判断该请求命中白名单,则向插件发送该消息;
1.3请求拒绝,插件接收到命中白名单消息后进行验证,即对g_tk参数进行匹配,由于该消息本身为非法请求,匹配不成功,返回请求拒绝;
2.1正常请求,http请求发送起模块向服务器发送正常请求;
2.2命中白名单,Apache判断该请求命中白名单,则向插件发送该消息;
2.3验证通过请求透传,插件接收到命中白名单消息后进行验证,即对g_tk参数进行匹配,匹配成功后向Cgi服务发送匹配成功的结果;
2.4返回结果,Cgi服务对该正常的http请求进行响应并返回结果;
3.1正常请求,http请求发送起模块向服务器发送正常请求;
3.2未命中白名单,Apache判断该请求未命中白名单,则不需向插件发送该消息而直接将请求发送给Cgi服务;
3.3返回结果,Cgi服务对该正常的http请求进行响应并返回结果。
说明,对于网站来说Apache或者其他web服务器软件是网站程序运行的环境或平台,真正执行网站业务逻辑,生成内容给用户看的东西叫做cgi服务。本例中的cgi服务还可以是其他的语言脚本,如asp、php、perl等。
在本发明实施例中,在当前网页请求中加入由当前网页构造加密的当前网页的登陆信息,由服务器侧对该登录信息进行匹配,仅对匹配通过的网页请求进行正常处理,由于该加密的当前网页的登录信息是由当前网页构造,其他网页通过链接伪造当前网页请求时无法构造出该加密的当前网页的登录信息,从而实现防御CSRF攻击的目的。同时,本方案中,浏览器侧只需要对网页脚本进行编写就可以实现构造登录信息并随网页请求发送的目的,而服务器侧只需要安装相应的插件就可以实现登录信息的匹配处理过程,对整个系统改造小且容易实施。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (11)

1.一种网页请求安全处理方法,其特征在于,所述方法包括:
浏览器侧的当前网页构造加密的当前网页的登陆信息;
浏览器侧发送所述当前网页的网页请求,所述网页请求中包括所述加密的当前网页的登录信息,并还包括浏览器添加的当前网页的登录信息;
服务器侧接收所述网页请求,将所述网页请求中的加密的当前网页的登录信息与加密后的所述浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则正常响应所述网页请求。
2.如权利要求1所述的方法,其特征在于,所述服务器侧接收所述网页请求,将所述网页请求中的加密的当前网页的登录信息与加密后的所述浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则正常响应所述网页请求,包括:
服务器侧接收所述网页请求,并判断所述网页请求是否为预定义的白名单中的网页请求;
若判断结果为否,则正常响应所述网页请求;
若判断结果为是,则将所述网页请求中的加密的当前网页的登录信息与加密后的所述浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则正常响应所述网页请求。
3.如权利要求1所述的方法,其特征在于,所述浏览器侧的当前网页构造加密的当前网页的登陆信息包括:
当前网页脚本根据用户在当前网页登陆后保存在cookie中的登录会话的加密值构造加密的当前网页的登陆信息。
4.如权利要求1至3中任一项所述的方法,其特征在于,所述浏览器侧发送所述当前网页的网页请求包括:
所述当前网页将所述加密的当前网页的登录信息以参数形式添加到所述当前网页的链接中;
浏览器发送与所述链接对应的网页请求,所述网页请求中包括所述链接信息,和与所述链接相关的登录信息。
5.如权利要求4所述的方法,其特征在于,所述浏览器以get方式发送与所述链接对应的网页请求。
6.一种网页请求安全处理系统,其特征在于,所述系统包括:
浏览器,用于发送当前网页的网页请求,其中,所述网页请求中包括由当前网页构造的加密的当前网页的登陆信息,并还包括本浏览器添加的当前网页的登录信息;
服务器,用于接收所述网页请求,将所述网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则正常响应所述网页请求。
7.如权利要求6所述的系统,其特征在于,所述服务器包括:
请求接收模块,用于接收所述网页请求;
白名单判断模块,用于判断所述网页请求是否为预定义的白名单中的网页请求,若判断结果为否,则正常响应所述网页请求;
信息匹配模块,用于当白名单判断模块得判断结果为是时,将所述网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则正常响应所述网页请求。
8.一种防御插件,用于安装在如权利要求6所述的服务器中,其特征在于,所述插件用于将所述服务器接收的网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则转入所述服务器的其他模块正常响应所述网页请求。
9.如权利要求8所述的插件,其特征在于,所述插件还包括:
白名单判断模块,用于判断所述网页请求是否为预定义的白名单中的网页请求,若判断结果为否,则转入所述服务器的其他模块正常响应所述网页请求;
信息匹配模块,用于当白名单判断模块得判断结果为是时,将所述网页请求中的加密的当前网页的登录信息与加密后的浏览器添加的当前网页的登录信息进行匹配,若匹配结果为不符,则中断所述网页请求,若匹配结果为相符,则转入所述服务器的其他模块正常响应所述网页请求。
10.一种网页,装载在如权利要求6所述的浏览器中,其特征在于,所述网页包括网页脚本,所述网页脚本用于获取用户在所述网页登陆后保存在cookie中的登录会话的加密值,所述加密值用于构造加密的网页的登陆信息。
11.如权利要求10所述的网页,其特征在于,所述网页包括基础函数,所述函数用于以参数形式将所述加密值添加到所述当前网页的网页请求url串中。
CN201110064795.9A 2011-03-17 2011-03-17 一种网页请求安全处理方法及系统 Active CN102685081B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110064795.9A CN102685081B (zh) 2011-03-17 2011-03-17 一种网页请求安全处理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110064795.9A CN102685081B (zh) 2011-03-17 2011-03-17 一种网页请求安全处理方法及系统

Publications (2)

Publication Number Publication Date
CN102685081A CN102685081A (zh) 2012-09-19
CN102685081B true CN102685081B (zh) 2016-02-17

Family

ID=46816453

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110064795.9A Active CN102685081B (zh) 2011-03-17 2011-03-17 一种网页请求安全处理方法及系统

Country Status (1)

Country Link
CN (1) CN102685081B (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104079611A (zh) * 2013-03-29 2014-10-01 腾讯科技(深圳)有限公司 用于防止跨站点请求伪造的方法、相关装置及系统
CN104750728B (zh) * 2013-12-30 2019-04-26 腾讯科技(深圳)有限公司 一种网页请求方式的控制方法及装置
CN103944900B (zh) * 2014-04-18 2017-11-24 中国科学院计算技术研究所 一种基于加密的跨站请求攻击防范方法及其装置
CN103997494B (zh) * 2014-05-22 2018-02-06 北京京东尚科信息技术有限公司 一种抵御黑客攻击的方法和系统
CN104219225B (zh) * 2014-07-31 2020-04-03 珠海豹趣科技有限公司 一种蠕虫病毒的检测和防御方法和系统
CN105354451B (zh) * 2014-08-20 2020-10-16 腾讯科技(深圳)有限公司 访问鉴权的方法及系统
US9906531B2 (en) 2015-11-23 2018-02-27 International Business Machines Corporation Cross-site request forgery (CSRF) prevention
CN106506462B (zh) * 2016-10-18 2019-06-11 傅书豪 一种基于表单置乱的网站安全保护方法与装置
CN106453361B (zh) * 2016-10-26 2019-05-03 上海众人网络安全技术有限公司 一种网络信息的安全保护方法及系统
CN106790169B (zh) * 2016-12-29 2020-06-09 杭州迪普科技股份有限公司 扫描设备扫描的防护方法及装置
CN107294994B (zh) * 2017-07-06 2020-06-05 网宿科技股份有限公司 一种基于云平台的csrf防护方法和系统
CN107277037A (zh) * 2017-07-14 2017-10-20 北京安数云信息技术有限公司 基于插件的任意文件操作检测方法和装置
CN107547518B (zh) * 2017-07-25 2020-06-05 新华三大数据技术有限公司 前端密码隐藏的方法及装置
CN107634942B (zh) * 2017-09-08 2020-07-31 北京京东尚科信息技术有限公司 识别恶意请求的方法和装置
CN111212016B (zh) * 2018-11-21 2022-09-23 阿里巴巴集团控股有限公司 跨站请求处理方法、装置及电子设备
CN109600377B (zh) * 2018-12-13 2022-11-22 平安科技(深圳)有限公司 防越权方法、装置、计算机设备及存储介质
CN109688122B (zh) * 2018-12-18 2021-04-30 西安四叶草信息技术有限公司 数据获取方法及设备
CN109948025B (zh) * 2019-03-20 2023-10-20 上海古鳌电子科技股份有限公司 一种数据引用记录方法
CN110719263B (zh) * 2019-09-17 2023-03-28 平安科技(深圳)有限公司 多租户dns安全管理方法、装置及存储介质
CN113609431B (zh) * 2021-08-13 2022-12-23 北京智产谷科技服务有限公司 高企智能化服务系统、企业自评方法及企业自评装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110055391A1 (en) * 2009-08-31 2011-03-03 James Paul Schneider Multifactor validation of requests to thwart cross-site attacks

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110055391A1 (en) * 2009-08-31 2011-03-03 James Paul Schneider Multifactor validation of requests to thwart cross-site attacks

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CSRF攻击的原理解析与对策研究;陈振;《福建电脑》;20090601(第6期);全文 *
腾讯QQ空间g_tk算法;风过果落;《搜狐博客-http://laomaspeak.blog.sohu.com/163397548.html#commentForm》;20101128;全文 *
预防跨站点假冒请求攻击;周安辉;《计算机安全》;20100515;全文 *

Also Published As

Publication number Publication date
CN102685081A (zh) 2012-09-19

Similar Documents

Publication Publication Date Title
CN102685081B (zh) 一种网页请求安全处理方法及系统
CN103944900B (zh) 一种基于加密的跨站请求攻击防范方法及其装置
CN107770171B (zh) 服务器反爬虫的验证方法及系统
US10460097B2 (en) Malicious client detection based on usage of negotiable protocols
JP6527590B2 (ja) オフライン・ネットワーク・トラフィックに基づいてカバート・チャネルのネットワーク侵入を検出するためのシステムおよび方法
CN102480490B (zh) 一种用于防止csrf攻击的方法和设备
US10778668B2 (en) HTTP session validation module
CN107634967B (zh) 一种CSRF攻击的CSRFToken防御系统和方法
US20120291129A1 (en) Detecting web browser based attacks using browser digest compute tests launched from a remote source
CN103179134A (zh) 基于Cookie的单点登录方法、系统及其应用服务器
CN102571846A (zh) 一种转发http请求的方法及装置
US20090165109A1 (en) Controlled and client-side authentication module
US9338173B2 (en) Methods and apparatuses for avoiding damage in network attacks
CN107046544A (zh) 一种识别对网站的非法访问请求的方法和装置
CN109977673A (zh) 一种基于web网站系统安全的漏洞修复方法及系统
CN106161453A (zh) 一种基于历史信息的SSLstrip防御方法
Burgers et al. Prevent session hijacking by binding the session to the cryptographic network credentials
CN110602134B (zh) 基于会话标签识别非法终端访问方法、装置及系统
US20120204242A1 (en) Protecting web authentication using external module
Wedman et al. An analytical study of web application session management mechanisms and HTTP session hijacking attacks
Avramescu et al. Guidelines for discovering and improving application security
Arshad et al. Practical attacks on Login CSRF in OAuth
CN105141642A (zh) 一种防止非法用户行为的方法及装置
Lekies et al. Towards stateless, client-side driven Cross-Site Request Forgery protection for Web applications
Modi et al. Design and implementation of RESTFUL API based model for vulnerability detection and mitigation

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20211228

Address after: Room 19F, Kungang science and technology building, 777 Huancheng South Road, Xishan District, Kunming City, Yunnan Province, 650000

Patentee after: Yunnan Tengyun Information Industry Co.,Ltd.

Address before: 2, 518057, East 403 room, SEG science and Technology Park, Zhenxing Road, Shenzhen, Guangdong, Futian District

Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd.

TR01 Transfer of patent right