CN112866265A - 一种csrf攻击防护方法及装置 - Google Patents
一种csrf攻击防护方法及装置 Download PDFInfo
- Publication number
- CN112866265A CN112866265A CN202110110668.1A CN202110110668A CN112866265A CN 112866265 A CN112866265 A CN 112866265A CN 202110110668 A CN202110110668 A CN 202110110668A CN 112866265 A CN112866265 A CN 112866265A
- Authority
- CN
- China
- Prior art keywords
- token
- user request
- user
- request
- cookie
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 235000014510 cooky Nutrition 0.000 claims abstract description 75
- 238000012795 verification Methods 0.000 claims abstract description 15
- 230000001960 triggered effect Effects 0.000 abstract description 4
- 238000004590 computer program Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229940004975 interceptor Drugs 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种CSRF攻击防护方法及装置,后台服务器在用户请求未携带token的情况下,生成token,并将生成的token写入浏览器cookie和页面request中,后台服务器中不需要存储token,降低了后台服务器压力。用户再次发送用户请求时,触发运行前端预设脚本将浏览器cookie和页面request中的token写入该用户请求,由于浏览器cookie无法被第三方捕获,后台服务器通过判断用户请求中的cookie和参数中的token是否相同,实现CSRF验证,本发明不需要增加token与用户绑定的验证逻辑,即可简单、有效地解决CSRF攻击问题。
Description
技术领域
本发明涉及互联网技术领域,更具体的,涉及一种CSRF攻击防护方法及装置。
背景技术
CSRF(Cross-site request forgery,跨站请求伪造)攻击是一种利用网站对用户网页浏览器的信任,挟制用户在当前已登录的Web应用程序上执行非本意的操作的攻击方法。目前大部分业务管理系统都存在CSRF攻击的漏洞,这个漏洞经常被开发人员忽视,如果被人恶意利用会造成不可估计的影响。
传统的解决方案是针对每个用户请求生成一个token,token保存在服务器上,用户提交数据时携带这个token,服务器再对这个token进行验证,token验证完成之后失效。但是这种方案有一些弊端,一是需要服务器保存token,增加服务器压力;二是token可能被伪造和恶意利用,解决这个问题又会增加token与用户绑定的验证逻辑,增加代码编写难度。
发明内容
有鉴于此,本发明提供了一种CSRF攻击防护方法及装置,不需要增加token与用户绑定的验证逻辑,即可简单、有效地解决CSRF攻击问题。
为了实现上述发明目的,本发明提供的具体技术方案如下:
一种CSRF攻击防护方法,应用于后台服务器,所述方法包括:
在接收到用户请求的情况下,判断所述用户请求是否携带token;
若所述用户请求未携带token,生成token,并将生成的token写入浏览器cookie和页面request中,使用户再次发送用户请求时,触发运行前端预设脚本将浏览器cookie和页面request中的token写入该用户请求;
若所述用户请求携带token,判断所述用户请求中的cookie和参数中的token是否相同;
若相同,则确定CSRF验证通过;
若不相同,则提示CSRF验证失败。
可选的,所述判断所述用户请求中的cookie和参数中的token是否相同,包括:
调用拦截器判断所述用户请求的接口是否为目标接口,所述目标接口为需要CSRF攻击防护的接口;
若是所述目标接口,获取所述用户请求中的cookie和参数中的token;
判断所述用户请求中的cookie和参数中的token是否相同。
可选的,所述调用拦截器判断所述用户请求的接口是否为目标接口,包括:
调用所述拦截器获取所述用户请求的接口标识;
判断所述用户请求的接口标识是否满足预设格式;
若满足预设格式,判定所述用户请求的接口为所述目标接口;
若不满足预设格式,判定所述用户请求的接口不是所述目标接口。
可选的,运行前端预设脚本,用于遍历所有form表单,将浏览器cookie中的token添加到form表单的field中。
可选的,运行前端预设脚本,用于发送ajax请求,将浏览器cookie中的token拼接参数到所述用户请求的地址中。
可选的,在所述用户请求为一个GET请求的情况下,运行前端预设脚本,用于从页面request中的Attribute中获取token拼接到所述用户请求中。
一种CSRF攻击防护装置,应用于后台服务器,所述装置包括:
第一判断单元,用于在接收到用户请求的情况下,判断所述用户请求是否携带token;
Token生成单元,用于在所述用户请求未携带token的情况下,生成token,并将生成的token写入浏览器cookie和页面request中,使用户再次发送用户请求时,触发运行前端预设脚本将浏览器cookie和页面request中的token写入该用户请求;
第二判断单元,用于在所述用户请求携带token的情况下,判断所述用户请求中的cookie和参数中的token是否相同;若相同,则确定CSRF验证通过;若不相同,则提示CSRF验证失败。
可选的,所述第二判断单元,具体用于:
调用拦截器判断所述用户请求的接口是否为目标接口,所述目标接口为需要CSRF攻击防护的接口;
若是所述目标接口,获取所述用户请求中的cookie和参数中的token;
判断所述用户请求中的cookie和参数中的token是否相同。
可选的,所述第二判断单元,具体用于:
调用所述拦截器获取所述用户请求的接口标识;
判断所述用户请求的接口标识是否满足预设格式;
若满足预设格式,判定所述用户请求的接口为所述目标接口;
获取所述用户请求中的cookie和参数中的token;
判断所述用户请求中的cookie和参数中的token是否相同。
可选的,运行前端预设脚本,用于遍历所有form表单,将浏览器cookie中的token添加到form表单的field中。
可选的,运行前端预设脚本,用于发送ajax请求,将浏览器cookie中的token拼接参数到所述用户请求的地址中。
可选的,在所述用户请求为一个GET请求的情况下,运行前端预设脚本,用于从页面request中的Attribute中获取token拼接到所述用户请求中。
相对于现有技术,本发明的有益效果如下:
本发明公开的一种CSRF攻击防护方法,后台服务器在用户请求未携带token的情况下,生成token,并将生成的token写入浏览器cookie和页面request中,后台服务器中不需要存储token,降低了后台服务器压力。用户再次发送用户请求时,触发运行前端预设脚本将浏览器cookie和页面request中的token写入该用户请求,由于浏览器cookie无法被第三方捕获,后台服务器通过判断用户请求中的cookie和参数中的token是否相同,实现CSRF验证,本发明不需要增加token与用户绑定的验证逻辑,即可简单、有效地解决CSRF攻击问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例公开的一种CSRF攻击防护方法的流程示意图;
图2为本发明实施例公开的另一种CSRF攻击防护方法的流程示意图;
图3为本发明实施例公开的一种判断用户请求的接口是否为目标接口的方法的流程示意图;
图4为本发明实施例公开的一种CSRF攻击防护装置的结构示意图;
图5为本发明实施例公开的一种CSRF攻击防护方法应用场景示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
发明人通过研究发现:几乎现在99.99%的业务管理系统都存在CSRF安全问题,但是大部分开发人员都没有进行重视,随着系统上线运行被攻击的可能性就越大,会存在数据被异常添加、更新和删除的风险,传统的解决方案都太复杂,改造维护成本也高,所以需要一种更加简单和高效的方法来解决这个问题。
本发明在不需要增加token与用户绑定的验证逻辑的基础上,实现简单、有效地解决CSRF攻击问题。请参阅图1,本实施例公开了一种CSRF攻击防护方法,具体包括以下步骤:
S101:接收用户请求;
S102:判断用户请求是否携带token;
若用户请求未携带token,S103:生成token,并将生成的token写入浏览器cookie和页面request中,使用户再次发送用户请求时,触发运行前端预设脚本将浏览器cookie和页面request中的token写入该用户请求;
运行前端预设脚本,用于遍历所有form表单,将浏览器cookie中的token添加到form表单的field中。
和/或
运行前端预设脚本,用于发送ajax请求,将浏览器cookie中的token拼接参数到用户请求的地址中。
和/或
在用户请求为一个GET请求的情况下,运行前端预设脚本,用于从页面request中的Attribute中获取token拼接到用户请求中。
若用户请求携带token,S104:判断用户请求中的cookie和参数中的token是否相同;
若相同,S105:确定CSRF验证通过;
若不相同,S106:提示CSRF验证失败。
可以理解的是,如果所有接口都需要CSRF攻击防护,即都需要加CSRF验证,会影响整个系统的响应时间和用户的使用体验,也会增加服务器的负载。
因此,一种优选的实施方式为,选取一些比较重要的接口,如增加、更新、删除等改动用户数据的接口,增加CSRF攻击防护,进行CSRF验证。
在此基础上,请参阅图2,本实施例提供了一种CSRF攻击防护方法,具体包括以下步骤:
S201:接收用户请求;
S202:判断用户请求是否携带token;
若用户请求未携带token,S203:生成token,并将生成的token写入浏览器cookie和页面request中,使用户再次发送用户请求时,触发运行前端预设脚本将浏览器cookie和页面request中的token写入该用户请求;
若用户请求携带token,S204:调用拦截器判断用户请求的接口是否为目标接口,目标接口为需要CSRF攻击防护的接口;
若不是目标接口,S205:响应用户请求;
若是目标接口,S206:获取用户请求中的cookie和参数中的token;
S207:判断用户请求中的cookie和参数中的token是否相同;
若相同,S208:确定CSRF验证通过;
若不相同,S209:提示CSRF验证失败。
其中,需要预先规定哪些接口为目标接口,一种可选的方法为为目标接口添加特殊标记,然后在获取用户请求的接口标识后,判断该接口标识是否包括上述特殊标记,若包括上述特征标记,则判定该接口为目标接口,反之,若不包括上述特殊标记,则判定该接口不是目标接口。另外一种可选的判断用户请求的接口是否为目标接口的方法如图3所示:
S301:调用拦截器获取用户请求的接口标识;
S302:判断用户请求的接口标识是否满足预设格式;
若满足预设格式,S303:判定用户请求的接口为所述目标接口;
若不满足预设格式,S304:判定用户请求的接口不是所述目标接口。
如增加、更新、删除等改动用户数据的接口的命名一般为:doAdd()、doEdit()、doDel(),则可以设定以do开头且第三个字母大写的接口为目标接口。
本实施例公开的一种CSRF攻击防护方法,后台服务器在用户请求未携带token的情况下,生成token,并将生成的token写入浏览器cookie和页面request中,后台服务器中不需要存储token,降低了后台服务器压力。用户再次发送用户请求时,触发运行前端预设脚本将浏览器cookie和页面request中的token写入该用户请求,由于浏览器cookie无法被第三方捕获,后台服务器通过判断用户请求中的cookie和参数中的token是否相同,实现CSRF验证,本发明不需要增加token与用户绑定的验证逻辑,即可简单、有效地解决CSRF攻击问题。
基于上述实施例公开的一种CSRF攻击防护,本实施例对应公开了一种CSRF攻击防护装置,应用于后台服务器,请参阅图4,所述装置包括:
第一判断单元100,用于在接收到用户请求的情况下,判断所述用户请求是否携带token;
Token生成单元200,用于在所述用户请求未携带token的情况下,生成token,并将生成的token写入浏览器cookie和页面request中,使用户再次发送用户请求时,触发运行前端预设脚本将浏览器cookie和页面request中的token写入该用户请求;
第二判断单元300,用于在所述用户请求携带token的情况下,判断所述用户请求中的cookie和参数中的token是否相同;若相同,则确定CSRF验证通过;若不相同,则提示CSRF验证失败。
可选的,所述第二判断单元300,具体用于:
调用拦截器判断所述用户请求的接口是否为目标接口,所述目标接口为需要CSRF攻击防护的接口;
若是所述目标接口,获取所述用户请求中的cookie和参数中的token;
判断所述用户请求中的cookie和参数中的token是否相同。
可选的,所述第二判断单元300,具体用于:
调用所述拦截器获取所述用户请求的接口标识;
判断所述用户请求的接口标识是否满足预设格式;
若满足预设格式,判定所述用户请求的接口为所述目标接口;
获取所述用户请求中的cookie和参数中的token;
判断所述用户请求中的cookie和参数中的token是否相同。
可选的,运行前端预设脚本,用于遍历所有form表单,将浏览器cookie中的token添加到form表单的field中。
可选的,运行前端预设脚本,用于发送ajax请求,将浏览器cookie中的token拼接参数到所述用户请求的地址中。
可选的,在所述用户请求为一个GET请求的情况下,运行前端预设脚本,用于从页面request中的Attribute中获取token拼接到所述用户请求中。
本发明公开的一种CSRF攻击防护装置,后台服务器在用户请求未携带token的情况下,生成token,并将生成的token写入浏览器cookie和页面request中,后台服务器中不需要存储token,降低了后台服务器压力。用户再次发送用户请求时,触发运行前端预设脚本将浏览器cookie和页面request中的token写入该用户请求,由于浏览器cookie无法被第三方捕获,后台服务器通过判断用户请求中的cookie和参数中的token是否相同,实现CSRF验证,本发明不需要增加token与用户绑定的验证逻辑,即可简单、有效地解决CSRF攻击问题。
请参阅图5,本发明公开的CSRF攻击防护方法,应用于后台服务器,前端页面可以为计算机终端的前端页面、笔记本电脑的前端页面、掌上电脑的前端页面、智能手机的前端页面等等,前端预先写入预设脚本。
后台服务器在接收到用户请求的情况下,判断所述用户请求是否携带token;
若所述用户请求未携带token,生成token,并将生成的token写入浏览器cookie和页面request中,使用户再次发送用户请求时,触发运行前端预设脚本将浏览器cookie和页面request中的token写入该用户请求;
若所述用户请求携带token,判断所述用户请求中的cookie和参数中的token是否相同;
若相同,则确定CSRF验证通过;
若不相同,则提示CSRF验证失败。
本发明公开的一种CSRF攻击防护方法,不用改动以往的大部分代码,只需一个拦截器Interceptor和一个前端脚本js,就能够快速的解决CSRF漏洞,减少前端和后台开发时间,提高系统的安全性和可靠性。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
上述各个实施例之间可任意组合,对所公开的实施例的上述说明,本说明书中各实施例中记载的特征可以相互替换或者组合,使本领域专业技术人员能够实现或使用本申请。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (12)
1.一种CSRF攻击防护方法,其特征在于,应用于后台服务器,所述方法包括:
在接收到用户请求的情况下,判断所述用户请求是否携带token;
若所述用户请求未携带token,生成token,并将生成的token写入浏览器cookie和页面request中,使用户再次发送用户请求时,触发运行前端预设脚本将浏览器cookie和页面request中的token写入该用户请求;
若所述用户请求携带token,判断所述用户请求中的cookie和参数中的token是否相同;
若相同,则确定CSRF验证通过;
若不相同,则提示CSRF验证失败。
2.根据权利要求1所述的方法,其特征在于,所述判断所述用户请求中的cookie和参数中的token是否相同,包括:
调用拦截器判断所述用户请求的接口是否为目标接口,所述目标接口为需要CSRF攻击防护的接口;
若是所述目标接口,获取所述用户请求中的cookie和参数中的token;
判断所述用户请求中的cookie和参数中的token是否相同。
3.根据权利要求2所述的方法,其特征在于,所述调用拦截器判断所述用户请求的接口是否为目标接口,包括:
调用所述拦截器获取所述用户请求的接口标识;
判断所述用户请求的接口标识是否满足预设格式;
若满足预设格式,判定所述用户请求的接口为所述目标接口;
若不满足预设格式,判定所述用户请求的接口不是所述目标接口。
4.根据权利要求1所述的方法,其特征在于,运行前端预设脚本,用于遍历所有form表单,将浏览器cookie中的token添加到form表单的field中。
5.根据权利要求1所述的方法,其特征在于,运行前端预设脚本,用于发送ajax请求,将浏览器cookie中的token拼接参数到所述用户请求的地址中。
6.根据权利要求1所述的方法,其特征在于,在所述用户请求为一个GET请求的情况下,运行前端预设脚本,用于从页面request中的Attribute中获取token拼接到所述用户请求中。
7.一种CSRF攻击防护装置,其特征在于,应用于后台服务器,所述装置包括:
第一判断单元,用于在接收到用户请求的情况下,判断所述用户请求是否携带token;
Token生成单元,用于在所述用户请求未携带token的情况下,生成token,并将生成的token写入浏览器cookie和页面request中,使用户再次发送用户请求时,触发运行前端预设脚本将浏览器cookie和页面request中的token写入该用户请求;
第二判断单元,用于在所述用户请求携带token的情况下,判断所述用户请求中的cookie和参数中的token是否相同;若相同,则确定CSRF验证通过;若不相同,则提示CSRF验证失败。
8.根据权利要求7所述的装置,其特征在于,所述第二判断单元,具体用于:
调用拦截器判断所述用户请求的接口是否为目标接口,所述目标接口为需要CSRF攻击防护的接口;
若是所述目标接口,获取所述用户请求中的cookie和参数中的token;
判断所述用户请求中的cookie和参数中的token是否相同。
9.根据权利要求7所述的装置,其特征在于,所述第二判断单元,具体用于:
调用所述拦截器获取所述用户请求的接口标识;
判断所述用户请求的接口标识是否满足预设格式;
若满足预设格式,判定所述用户请求的接口为所述目标接口;
获取所述用户请求中的cookie和参数中的token;
判断所述用户请求中的cookie和参数中的token是否相同。
10.根据权利要求7所述的装置,其特征在于,运行前端预设脚本,用于遍历所有form表单,将浏览器cookie中的token添加到form表单的field中。
11.根据权利要求7所述的装置,其特征在于,运行前端预设脚本,用于发送ajax请求,将浏览器cookie中的token拼接参数到所述用户请求的地址中。
12.根据权利要求7所述的装置,其特征在于,在所述用户请求为一个GET请求的情况下,运行前端预设脚本,用于从页面request中的Attribute中获取token拼接到所述用户请求中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110110668.1A CN112866265B (zh) | 2021-01-27 | 2021-01-27 | 一种csrf攻击防护方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110110668.1A CN112866265B (zh) | 2021-01-27 | 2021-01-27 | 一种csrf攻击防护方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112866265A true CN112866265A (zh) | 2021-05-28 |
CN112866265B CN112866265B (zh) | 2023-03-24 |
Family
ID=76009531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110110668.1A Active CN112866265B (zh) | 2021-01-27 | 2021-01-27 | 一种csrf攻击防护方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112866265B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114915462A (zh) * | 2022-04-29 | 2022-08-16 | 中国电信股份有限公司 | 跨站请求伪造攻击防御方法及装置、电子设备及介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100100927A1 (en) * | 2008-10-20 | 2010-04-22 | International Business Machines Corporation | Systems and methods for protecting web based applications from cross site request forgery attacks |
CN102480490A (zh) * | 2010-11-30 | 2012-05-30 | 国际商业机器公司 | 一种用于防止csrf攻击的方法和设备 |
US8949990B1 (en) * | 2007-12-21 | 2015-02-03 | Trend Micro Inc. | Script-based XSS vulnerability detection |
CN105743869A (zh) * | 2014-12-12 | 2016-07-06 | 阿里巴巴集团控股有限公司 | Csrf攻击防范方法、网站服务器及浏览器 |
CN106375270A (zh) * | 2015-07-24 | 2017-02-01 | 华为技术有限公司 | 令牌生成并认证的方法及认证服务器 |
CN106845248A (zh) * | 2017-01-18 | 2017-06-13 | 北京工业大学 | 一种基于状态转换图的xss漏洞检测方法 |
CN107634967A (zh) * | 2017-10-19 | 2018-01-26 | 南京大学 | 一种CSRF攻击的CSRFToken防御系统和方法 |
CN109327477A (zh) * | 2018-12-06 | 2019-02-12 | 泰康保险集团股份有限公司 | 认证鉴权方法、装置及存储介质 |
CN110113366A (zh) * | 2019-06-24 | 2019-08-09 | 深圳前海微众银行股份有限公司 | 一种csrf漏洞的检测方法及装置 |
-
2021
- 2021-01-27 CN CN202110110668.1A patent/CN112866265B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8949990B1 (en) * | 2007-12-21 | 2015-02-03 | Trend Micro Inc. | Script-based XSS vulnerability detection |
US20100100927A1 (en) * | 2008-10-20 | 2010-04-22 | International Business Machines Corporation | Systems and methods for protecting web based applications from cross site request forgery attacks |
CN102480490A (zh) * | 2010-11-30 | 2012-05-30 | 国际商业机器公司 | 一种用于防止csrf攻击的方法和设备 |
US20120137363A1 (en) * | 2010-11-30 | 2012-05-31 | Ibm Corporation | Method and Device for Preventing CSRF Attack |
CN105743869A (zh) * | 2014-12-12 | 2016-07-06 | 阿里巴巴集团控股有限公司 | Csrf攻击防范方法、网站服务器及浏览器 |
CN106375270A (zh) * | 2015-07-24 | 2017-02-01 | 华为技术有限公司 | 令牌生成并认证的方法及认证服务器 |
CN106845248A (zh) * | 2017-01-18 | 2017-06-13 | 北京工业大学 | 一种基于状态转换图的xss漏洞检测方法 |
CN107634967A (zh) * | 2017-10-19 | 2018-01-26 | 南京大学 | 一种CSRF攻击的CSRFToken防御系统和方法 |
CN109327477A (zh) * | 2018-12-06 | 2019-02-12 | 泰康保险集团股份有限公司 | 认证鉴权方法、装置及存储介质 |
CN110113366A (zh) * | 2019-06-24 | 2019-08-09 | 深圳前海微众银行股份有限公司 | 一种csrf漏洞的检测方法及装置 |
Non-Patent Citations (1)
Title |
---|
牟云飞 李锐: "《微信公众平台商业应用搭建、支付开发与运维实践》", 31 August 2018, 中国铁道出版社, pages: 69 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114915462A (zh) * | 2022-04-29 | 2022-08-16 | 中国电信股份有限公司 | 跨站请求伪造攻击防御方法及装置、电子设备及介质 |
CN114915462B (zh) * | 2022-04-29 | 2023-09-08 | 中国电信股份有限公司 | 跨站请求伪造攻击防御方法及装置、电子设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112866265B (zh) | 2023-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112333198B (zh) | 安全跨域登录方法、系统及服务器 | |
CN110032880B (zh) | 基于区块链的录屏取证方法、系统和电子设备 | |
EP3591510A1 (en) | Method and device for writing service data in block chain system | |
CN113840012B (zh) | 基于区块链的录屏取证方法、系统和电子设备 | |
CN109542361B (zh) | 一种分布式存储系统文件读取方法、系统及相关装置 | |
CN113079200A (zh) | 一种数据处理的方法、装置及系统 | |
CN112016924A (zh) | 一种基于区块链的数据存证方法、装置以及设备 | |
CN110597825A (zh) | 基于区块链的数据处理方法、装置及节点设备 | |
CN110704820A (zh) | 登录处理方法、装置、电子设备和计算机可读存储介质 | |
CN110753037A (zh) | 一种令牌的管理方法、设备以及存储介质 | |
CN112700242A (zh) | 一种区块链的敏感信息前置检测的方法、设备及介质 | |
CN110764930B (zh) | 基于消息模式的请求或应答处理方法及装置 | |
CN109639437B (zh) | 基于可信数据源的监管方法及装置、设备和介质 | |
CN112866265B (zh) | 一种csrf攻击防护方法及装置 | |
CN104426657A (zh) | 一种业务认证方法、系统及服务器 | |
CN106982193B (zh) | 一种预防批量注册的方法及装置 | |
CN107528822B (zh) | 一种业务执行方法以及装置 | |
CN113285952B (zh) | 网络漏洞封堵方法、装置、存储介质及处理器 | |
KR102071107B1 (ko) | 데이터 처리를 위한 방법 및 시스템 | |
CN114386047A (zh) | 应用漏洞检测方法、装置、电子设备及存储介质 | |
CN110912903B (zh) | 跨域访问方法及装置 | |
CN113765673A (zh) | 一种访问控制方法和装置 | |
CN117008838A (zh) | 一种用于存储自定义数据信息的方法与设备 | |
CN109561123B (zh) | 令牌token的缓存方法及装置 | |
WO2021027505A1 (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 |