CN110046500A - 一种用于网络防护的动态cookie验证方法及装置 - Google Patents

一种用于网络防护的动态cookie验证方法及装置 Download PDF

Info

Publication number
CN110046500A
CN110046500A CN201910180200.2A CN201910180200A CN110046500A CN 110046500 A CN110046500 A CN 110046500A CN 201910180200 A CN201910180200 A CN 201910180200A CN 110046500 A CN110046500 A CN 110046500A
Authority
CN
China
Prior art keywords
cookie
verification
request
value
http request
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
Application number
CN201910180200.2A
Other languages
English (en)
Other versions
CN110046500B (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.)
Guangzhou Anrui Information Technology Co.,Ltd.
Qiu Mingcha
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN201910180200.2A priority Critical patent/CN110046500B/zh
Publication of CN110046500A publication Critical patent/CN110046500A/zh
Application granted granted Critical
Publication of CN110046500B publication Critical patent/CN110046500B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6263Protecting personal data, e.g. for financial or medical purposes during internet communication, e.g. revealing personal data from cookies

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种用于网络防护的动态cookie验证方法及装置,可以对客户端传输过来的http请求中的cookie进行验证,在验证后再将http请求发送至服务器进行处理,防止网络攻击者使用大量未经验证的请求来对服务器进行DDOS攻击,消耗服务器的处理资源,造成网络基础设施的瘫痪甚至损毁,同时,对于未通过验证的http请求,通过插入的cookie处理模块对客户端的行为进行判断,在判断客户端的行为是安全正常的机器而不是自动化的恶意程序后,可以对客户端进行筛选防止恶意攻击。

Description

一种用于网络防护的动态cookie验证方法及装置
技术领域
本发明属于网络安全领域,主要涉及一种用于网络防护的动态cookie验证方法及装置。
背景技术
自动化和人工智能是当下最火热的词条。两者是把双刃剑,与3C互联网设备结合就会给人们工作生活带来各种便利;跟攻击结合就变成一场灾难,现在的攻击已经形成了多米诺骨牌效应,一触即发。黑客只需要在一个机器人攻击程序上面输入想攻击的网址,设置好参数、测试方法、测试规则,验证问题,然后点击提交。机器人攻击程序就可以扫描了,等扫描出漏洞后,会有漏洞库自动进行匹配,然后发动攻击,黑客所做的就是守株待兔,开动触发键。
单打独斗不是黑客的行事作风。更多的情况下,黑色产业链上下会有组织,有纪律地各司其职分工协作,他们利用智能化自动化的攻击程序,或是暴力破解账号,窃取机密数据,或是通过批量注册小号,自动工具刷取套利。总而言之,只有你想不到,没有他们做不到。
事实上,随着针对Web的高级持续性拒绝服务(APDoS)攻击的崛起,以及复杂机器人程序攻击的容量和覆盖范围的增加,安全攻击变得更具侵略性。特别在运营商、政府、金融、电商、支付等领域,由自动化工具发起的高效大规模攻击(例如:恶意爬虫、撞库、虚假注册、交易篡改、零日攻击等)大幅增加了企业和政府机构在业务、应用和数据层面的安全风险。
机器人攻击的出现,最先面临压力的就是传统安全防护厂商,为应对愈来愈常见的DOS攻击,网络防护技术日渐得到技术人员的重视,并不断发展,现有的网络防护技术常使用如JavaScript的脚本语言对URL进行处理,但这一现有技术存在问题,若要实现通过脚本语言对URL进行处理的技术,需要服务器端和客户端同时对基础的代码进行修改,否则容易导致防护机制无法起到作用。
因此,需要一种更易于实施且更有效的网络防护技术。
发明内容
本发明目的在于针对现有方法的缺陷,提供一种用于网络防护的动态cookie验证方法及装置,避免了传统技术中通过脚本语言对URL进行加密的技术手段带来的,无法适配于不同运行环境的问题,本方法无需客户端或服务器对基础的脚本语言进行修改,可移植性高,便于推向市场,有很高的市场价值。
为解决上述技术问题,本发明通过以下方法方案进行实施:
一种用于网络防护的动态cookie验证方法,包括以下步骤:
S1、客户端发送http请求至服务器;所述http请求中包括请求cookie和请求URL;
S2、使用预设的cookie库对所述请求cookie的cookie信息进行解密及验证;所述cookie信息包括cookie名、cookie值;
若验证成功,则将所述http请求定向至所述请求URL所对应的欲访问页面,并将所述欲访问页面作为返回信息;
若验证失败,则将所述http请求定向至一默认页面,并将所述默认页面作为返回信息;
S3、使用加密算法对所述http请求中的特征字段进行加密生成校验cookie值,并随机生成一校验cookie名,将所述校验cookie值和校验cookie名存入所述cookie库;
S4、将所述校验cookie值、校验cookie名和cookie处理模块插入所述返回信息中,所述服务器将所述返回信息发送至所述客户端;所述cookie处理模块用于在所述客户端接收所述返回信息后,使用预设的行为判断规则判断所述客户端的行为是否安全;
S5、在判定所述客户端的行为是安全后,通过加密算法对所述校验cookie值进行加密,得到请求cookie值,并将所述请求cookie值和所述校验cookie名组成新的所述请求cookie,所述新的请求cookie用于插入至所述客户端下一次发出的http请求。
进一步的,所述步骤S1还包括:
使用预设的URL库对所述请求URL进行匹配;
若匹配成功,则进入步骤S2;
若匹配失败,则将所述http请求发送至所述服务器进行正常访问。
进一步的,所述步骤S2包括:
S21、将所述请求cookie的cookie名与所述cookie库中的所述校验cookie名进行匹配;
若匹配成功,则进入步骤S22;
若匹配失败,则将所述http请求定向至所述默认页面,并将所述默认页面作为返回信息,进入步骤S3;
S22、将所述请求cookie的cookie值使用解密算法进行解密得到解密cookie值,将所述解密cookie值与所述cookie库中的所述校验cookie值进行匹配,
若匹配成功,则将所述cookie库中的所述校验cookie值对应的剩余验证次数减一,进入步骤S23;
若匹配失败,则将所述http请求定向至所述默认页面,并将所述默认页面作为返回信息,进入步骤S3;
S23、查询所述cookie库中的所述校验cookie值的所述剩余验证次数;
若所述剩余验证次数大于或等于零,则将所述http请求定向至所述欲访问页面,将所述欲访问页面作为返回信息,进入步骤S3;
若所述剩余验证次数小于零,则从所述cookie库中删去所述校验cookie值和校验cookie名,并将所述http请求定向至所述默认页面,将所述默认页面作为返回信息,进入步骤S3。
进一步的,所述步骤S3中,所述特征字段为所述请求URL,在生成所述校验cookie值后,还包括:
为所述校验cookie值设置所述剩余验证次数,将所述剩余验证次数保存至所述cookie库中。
进一步的,所述步骤S5中,所述客户端的行为包括人机交互设备的输入内容、控制内容、响应频率、响应次数中的一种或多种;所述预设的行为判断规则为:
当所述客户端的行为大于预定的行为阈值时,判定为所述客户端行为为安全;
所述行为阈值包括输入内容长度阈值、控制内容长度阈值、响应频率阈值或响应次数阈值中的一种或多种。
同时,本发明还对应公开了一种用于网络防护的动态cookie验证装置,包括:
cookie验证模块,用于:
接收客户端发送至服务器的http请求,所述http请求中包括请求cookie和请求URL;
使用预设的cookie库对所述请求cookie的cookie信息进行解密及验证;所述cookie信息包括cookie名、cookie值;
在验证成功时将所述http请求定向至所述请求URL所对应的欲访问页面,并将所述欲访问页面作为返回信息;
在验证失败将所述http请求定向至一默认页面,并将所述默认页面作为返回信息;
校验cookie生成模块,用于使用加密算法那对所述http请求中的特征字段进行加密生成校验cookie值,并随机生成一校验cookie名,将所述校验cookie值和校验cookie名存入所述cookie库;
cookie插入模块,用于将所述校验cookie值、校验cookie名和cookie处理模块插入所述返回信息中;
所述cookie处理模块,用于在所述客户端接收所述返回信息后,使用预设的行为判断规则对所述客户端的行为进行判断,判断所述客户端的行为安全后,通过加密算法对所述校验cookie值进行加密得到请求cookie值,并将所述请求cookie值和所述校验cookie名组成新的所述请求cookie,所述新的请求cookie用于插入至所述客户端下一次发出的http请求。
进一步的,本装置还包括:
URL匹配模块,用于使用预设的URL库对所述请求URL进行匹配;若匹配成功,将所述http请求发送至所述cookie验证模块;若匹配失败,将所述http请求发送至所述服务器进行正常访问。
进一步的,所述cookie验证模块包括:
cookie名验证单元,用于:
将所述请求cookie的cookie名与所述cookie库中的所述校验cookie名进行匹配;
在匹配成功时将所述http请求发送至cookie值验证单元;
在匹配失败时将所述http请求定向至所述默认页面,并将所述默认页面作为返回信息;
cookie值验证单元,用于:
将所述请求cookie的cookie值使用解密算法进行解密得到解密cookie值,将所述解密cookie值与所述cookie库中的所述校验cookie值进行匹配,
在匹配成功时将所述cookie库中的所述校验cookie值对应的剩余验证次数减一,将所述http请求发送至cookie次数验证单元;
在匹配失败时将所述http请求定向至所述默认页面,并将所述默认页面作为返回信息;
cookie次数验证单元,用于:
查询所述cookie库中的所述校验cookie值的所述剩余验证次数;
在所述剩余验证次数大于或等于零时,将所述http请求定向至所述欲访问页面,将所述欲访问页面作为返回信息;
在所述剩余验证次数小于零时,从所述cookie库中删去所述校验cookie值和校验cookie名,并将所述http请求定向至所述默认页面,将所述默认页面作为返回信息。
进一步的,所述特征字段为所述请求URL;所述校验cookie生成模块为所述校验cookie值设置所述剩余验证次数,将所述剩余验证次数保存至所述cookie库中。
进一步的,所述客户端的行为包括人机交互设备的输入内容、控制内容、响应频率、响应次数中的一种或多种;所述预设的行为判断规则为:
当所述客户端的行为大于预定的行为阈值时,判定为所述客户端行为为安全;
所述行为阈值包括输入内容长度阈值、控制内容长度阈值、响应频率阈值或响应次数阈值中的一种或多种。
与现有方法相比,本发明的有益方法效果如下:
本发明公开的一种用于网络防护的动态cookie验证方法及装置,可以对客户端传输过来的http请求中的cookie进行验证,在验证后再将http请求发送至服务器进行处理,防止网络攻击者使用大量未经验证的请求来对服务器进行DDOS攻击,消耗服务器的处理资源,造成网络基础设施的瘫痪甚至损毁,同时,对于未通过验证的http请求,通过插入的cookie处理模块对客户端的行为进行判断,在判断客户端的行为是安全正常的机器而不是自动化的恶意程序后,可以对客户端进行筛选防止恶意攻击。
本方法中随机生成初步cookie,通过加密算法生成验证cookie,保证了每次网络访问的cookie都是不同的,防止网络攻击者利用一个截取的cookie对服务器进行反复的访问攻击,同时基于cookie的网络防御思路,也避免了传统技术中通过脚本语言对URL进行加密的技术手段带来的,无法适配于不同运行环境的问题,本方法无需客户端或服务器对基础的脚本语言进行修改,可移植性高,便于推向市场,有很高的市场价值。
附图说明
图1为本发明实施例1中所述的一种动态cookie验证方法的步骤示意图;
图2为本发明实施例1中所述的步骤S2的具体步骤示意图;
图3为本发明实施例2中所述的动态cookie验证装置的结构示意图;
图4为本发明实施例2中所述的cookie验证模块1的具体结构示意图;
图5为本发明实施例3中所述的cookie验证方法的步骤示意图。
具体实施方式
为了充分地了解本发明的目的、特征和效果,以下将结合附图与具体实施方式对本发明的构思、具体步骤及产生的方法效果作进一步说明。
实施例1
如图1所示,本实施例公开了一种用于网络防护的动态cookie验证方法,包括以下步骤:
S1、客户端发送http请求至服务器;http请求中包括请求cookie和请求URL;
S2、使用预设的cookie库对请求cookie的cookie信息进行解密及验证;cookie信息包括cookie名、cookie值;
若验证成功,则将http请求定向至请求URL所对应的欲访问页面,并将欲访问页面作为返回信息;
若验证失败,则将http请求定向至一默认页面,并将默认页面作为返回信息;
S3、使用加密算法对http请求中的特征字段进行加密生成校验cookie值,并随机生成一校验cookie名,将校验cookie值和校验cookie名存入cookie库;
S4、将校验cookie值、校验cookie名和cookie处理模块插入返回信息中,服务器将返回信息发送至客户端;cookie处理模块用于在客户端接收返回信息后,使用预设的行为判断规则判断客户端的行为是否安全;
S5、在判定客户端的行为是安全后,通过加密算法对校验cookie值进行加密,得到请求cookie值,并将请求cookie值和校验cookie名组成新的请求cookie,新的请求cookie用于插入至客户端下一次发出的http请求。
通过上述公开的cookie验证方法,可以对客户端传输过来的http请求中的cookie进行验证,在验证后再将http请求发送至服务器进行处理,防止网络攻击者使用大量未经验证的请求来对服务器进行DDOS攻击,消耗服务器的处理资源,造成网络基础设施的瘫痪甚至损毁,同时,对于未通过验证的http请求,通过插入的cookie处理模块对客户端的行为进行判断,在判断客户端的行为是安全正常的机器而不是自动化的恶意程序后,可以对客户端进行筛选防止恶意攻击。
本方法中随机生成初步cookie,通过加密算法生成验证cookie,保证了每次网络访问的cookie都是不同的,防止网络攻击者利用一个截取的cookie对服务器进行反复的访问攻击,同时基于cookie的网络防御思路,也避免了传统技术中通过脚本语言对URL进行加密的技术手段带来的,无法适配于不同运行环境的问题,本方法无需客户端或服务器对基础的脚本语言进行修改,可移植性高,便于推向市场,有很高的市场价值。
具体的,步骤S1还包括:
使用预设的URL库对请求URL进行匹配;
若匹配成功,则进入步骤S2;
若匹配失败,则将http请求发送至服务器进行正常访问。
通过上述步骤,预设的URL库中储存需要进行cookie验证的URL,通过匹配,可以将无需进行防御或验证的URL直接发至服务器进行正常操作,减轻cookie验证系统的工作量,操作人员也可以根据实际情况,将不需要进行验证或者被攻击可能性低的网站URL移除出URL库,达到精确防御的目的。
具体的,如图2所示,步骤S2包括:
S21、将请求cookie的cookie名与cookie库中的校验cookie名进行匹配;
若匹配成功,则进入步骤S22;
若匹配失败,则将http请求定向至默认页面,并将默认页面作为返回信息,进入步骤S3;
S22、将请求cookie的cookie值使用解密算法进行解密得到解密cookie值,将解密cookie值与cookie库中的校验cookie值进行匹配,
若匹配成功,则将cookie库中的校验cookie值对应的剩余验证次数减一,进入步骤S23;
若匹配失败,则将http请求定向至默认页面,并将默认页面作为返回信息,进入步骤S3;
S23、查询cookie库中的校验cookie值的剩余验证次数;
若剩余验证次数大于或等于零,则将http请求定向至欲访问页面,将欲访问页面作为返回信息,进入步骤S3;
若剩余验证次数小于零,则从cookie库中删去校验cookie值和校验cookie名,并将http请求定向至默认页面,将默认页面作为返回信息,进入步骤S3。
通过上述步骤,可以对cookie的名、值、验证次数进行多重验证,从而进一步提高了验证的有效性和安全性,同时验证次数的设置也使得网络攻击者无法通过一个获取到的cookie进行重复验证来实现网络攻击,从而大大提高了网络的防御效果。
具体的,步骤S3中,特征字段可以为http请求的源地址、MAC地址、header或cookie中的字段,操作人员可以根据具体情况进行选择,在一具体的实施例中,特征字段为请求URL,通过对请求URL进行加密,服务器侧解密出原有的请求URL即可进行URL的验证,从而进一步提高的验证的有效性和安全性。
具体的,步骤S3中,在生成校验cookie值后,还包括:
为校验cookie值设置剩余验证次数,将剩余验证次数保存至cookie库中。
其中,剩余验证次数的值可以根据实际的网络防御严格程度进行调整,越高的严格程度需要设置越少的验证次数,从而保证网路验证的安全性。
具体的,步骤S5中,客户端的行为包括人机交互设备的输入内容、控制内容、响应频率、响应次数中的一种或多种;预设的行为判断规则为:
当客户端的行为大于预定的行为阈值时,判定为客户端行为为安全;
行为阈值包括输入内容长度阈值、控制内容长度阈值、响应频率阈值或响应次数阈值中的一种或多种。
通过上述设置,可以对客户端的行为进行安全性检测,同时,操作人员也可使用其他检测手段或规则对客户端的行为进行检测,包括使用神经网络训练的模型进行检测。
实施例2
同时,如图3所示,本实施例还对应于实施例1的验证方法,公开了一种用于网络防护的动态cookie验证装置,其效果与实施例1中相似,此下不再赘述,本装置包括:
cookie验证模块1,用于:
接收客户端发送至服务器的http请求,http请求中包括请求cookie和请求URL;
使用预设的cookie库对请求cookie的cookie信息进行解密及验证;cookie信息包括cookie名、cookie值;
在验证成功时将http请求定向至请求URL所对应的欲访问页面,并将欲访问页面作为返回信息;
在验证失败将http请求定向至一默认页面,并将默认页面作为返回信息;
校验cookie生成模块2,用于使用加密算法那对http请求中的特征字段进行加密生成校验cookie值,并随机生成一校验cookie名,将校验cookie值和校验cookie名存入cookie库;
cookie插入模块3,用于将校验cookie值、校验cookie名和cookie处理模块4插入返回信息中;
cookie处理模块4,用于在客户端接收返回信息后,使用预设的行为判断规则对客户端的行为进行判断,判断客户端的行为安全后,通过加密算法对校验cookie值进行加密得到请求cookie值,并将请求cookie值和校验cookie名组成新的请求cookie,新的请求cookie用于插入至客户端下一次发出的http请求。
URL匹配模块5,用于使用预设的URL库对请求URL进行匹配;若匹配成功,将http请求发送至cookie验证模块1;若匹配失败,将http请求发送至服务器进行正常访问。
具体的,如图4所示,cookie验证模块1包括:
cookie名验证单元11,用于:
将请求cookie的cookie名与cookie库中的校验cookie名进行匹配;
在匹配成功时将http请求发送至cookie值验证单元12;
在匹配失败时将http请求定向至默认页面,并将默认页面作为返回信息;
cookie值验证单元12,用于:
将请求cookie的cookie值使用解密算法进行解密得到解密cookie值,将解密cookie值与cookie库中的校验cookie值进行匹配,
在匹配成功时将cookie库中的校验cookie值对应的剩余验证次数减一,将http请求发送至cookie次数验证单元13;
在匹配失败时将http请求定向至默认页面,并将默认页面作为返回信息;
cookie次数验证单元13,用于:
查询cookie库中的校验cookie值的剩余验证次数;
在剩余验证次数大于或等于零时,将http请求定向至欲访问页面,将欲访问页面作为返回信息;
在剩余验证次数小于零时,从cookie库中删去校验cookie值和校验cookie名,并将http请求定向至默认页面,将默认页面作为返回信息。
具体的,特征字段为请求URL;校验cookie生成模块为校验cookie值设置剩余验证次数,将剩余验证次数保存至cookie库中。
具体的,客户端的行为包括人机交互设备的输入内容、控制内容、响应频率、响应次数中的一种或多种;预设的行为判断规则为:
当客户端的行为大于预定的行为阈值时,判定为客户端行为为安全;
行为阈值包括输入内容长度阈值、控制内容长度阈值、响应频率阈值或响应次数阈值中的一种或多种。
实施例3
如图5所示,本实施例公开了一种cookie验证方法的具体实施方式,其步骤包括:
1.客户端向服务器发出http请求,本发明的服务器端接收到客户端发过来的请求。
2.本发明的URL匹配模块会对http请求的URL进行匹配,属于被保护对象的URL请求进入本发明的动态cookie验证模块,进入动态cookie验证环节-1。
3.不符合匹配规则的URL请求则被直接转发给后台的服务器进行正常处理。
4.匹配了URL规则的请求会进入本发明的cookie验证环节-1进行检查,看是否存在名字为cookie B的cookie,如果存在,则进入cookie验证环节-2.
5.匹配了URL规则,但是在cookie验证环节-1时没有名字为cookie B的cookie存在的话,则该请求会被重新定向到WEB服务器的一个默认页面,而不是用户请求的URL对应的页面或资源。
6.通过了cookie验证环节-1的请求会进入本发明的cookie验证环节-2进行检查,查看cookie B的值是否合法,如果合法,则进入cookie验证环节-3.
7.通过了cookie验证环节-1的请求会进入本发明的cookie验证环节-2进行检查,查看cookie B的值是否合法,如果不合法,则该请求会被重新定向到WEB服务器的一个默认页面,而不是用户请求的URL对应的页面或资源。
8.通过了cookie验证环节-2的请求会进入本发明的cookie验证环节-3进行检查,查看cookie B的值对应的有效时间和有效次数是否在有效期内,如果在有效期内,则请求则被直接转发给后台的服务器进行正常处理。
9.通过了cookie验证环节-2的请求会进入本发明的cookie验证环节-3进行检查,查看cookie B的值对应的有效时间和有效次数是否在有效期内,如果不在有效期内,则该请求会被重新定向到WEB服务器的一个默认页面,而不是用户请求的URL对应的页面或资源。
10.Web服务器在返回默认页面的内容时,本发明的动态内容插入模块会在http的回应中插入一个动态cookie A(其值为通过加密算法算出一个随机值)以及本发明的浏览器端的动态cookie生成模块,一起返回给客户端浏览器。
11.动态内容插入模块会把生成的cookie A的名字和值同时存入到动态cookie验证模块中,用于客户端浏览器在请求时,对其提交的cookie B的内容进行解密后做比对。
12.Web服务器在用户所请求的URL页面的内容时,本发明的动态内容插入模块会在http的回应中插入一个cookie A(其值为通过加密算法算出一个随机值)以及本发明的浏览器端的动态cookie处理模块,一起返回给客户端浏览器。
13.动态内容插入模块会把生成的cookie A的名字和值同时存入到动态cookie验证模块中,用于客户端浏览器在请求时,对其提交的cookie B的内容进行解密后做比对。
14.客户端浏览器在接受到web服务器返回的内容后,本发明的浏览器端动态cookie处理模块会开始工作,根据所接受到的cookie A的值和浏览器的状态和行为等相关内容生成新的cookie B的值,并会随着用户请求发送出去。
具体的,cookie的生成基于以下步骤:
在本发明接收到服务器的回应内容时,动态cookie验证模块开始工作,使用随机生成的字符作为cookie A的名字,然后获取当前页面的uri作为加密的原始值,然后通过对其进行hash加密的方式,将加密后获取的值作为cookie A对应的值,保存到动态cookie验证模块的内存之中,并且会加入次数的阀值,以用于后续的验证,然后将这个cookie A放入到用户的http的响应包中,与此同时,该模块会生成一个另一个随机的cookie名字,作为cookie B的cookie名字,用于后续的cookie B的识别,并将该cookie名字作为变量放入到动态cookie生成模块当中,一起发送给客户端浏览器。
具体的,cookieB的生成基于以下步骤:
浏览器接受到服务器返回的带有cookie A的回应时,浏览器侧的动态cookie生成模块就开始介入并工作了,首先,该模块会再浏览器侧进行一些针对用户浏览器行为进行检测,检测的内容包括但不限于鼠标和键盘的点击、移动、次数以及时间等(检测的阀值和内容可以进行配置),一旦检测通过之后,该模块会获取cookie A的值,然后通过非对称的加密算法,生成cookie B的值,并将该值与动态cookie验证模块中生成的cookie B的名字组合成cookie B。该cookie B会随着用户请而被发送给本发明的服务器侧的模块来进行后续的验证和处理过程。
具体的,cookieB的解密验证步骤如下:
验证环节中,cookie B中的值会被解密,解密成cookie A原来的值,然后与动态cookie验证模块中所保存的对应的原始加密值进行比对,如果存在,表示验证通过,该请求会被转发,同时,其值对应次数值会减1,如果次数值减到0,则该记录会被动态cookie验证模块从内存中删除。这一对比的用意是防止恶意用户通过正常手段获取到了某一个正常的cookieB的值后,连续的使用该值进行重复攻击或者恶意访问
以上详细描述了本发明的较佳具体实施例,应当理解,本领域的普通方法人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本方法领域中方法人员依本发明构思在现有方法基础上通过逻辑分析、推理或者根据有限的实验可以得到的方法方案,均应该在由本权利要求书所确定的保护范围之中。

Claims (10)

1.一种用于网络防护的动态cookie验证方法,其特征在于,包括以下步骤:
S1、客户端发送http请求至服务器;所述http请求中包括请求cookie和请求URL;
S2、使用预设的cookie库对所述请求cookie的cookie信息进行解密及验证;所述cookie信息包括cookie名、cookie值;
若验证成功,则将所述http请求定向至所述请求URL所对应的欲访问页面,并将所述欲访问页面作为返回信息;
若验证失败,则将所述http请求定向至一默认页面,并将所述默认页面作为返回信息;
S3、使用加密算法对所述http请求中的特征字段进行加密生成校验cookie值,并随机生成一校验cookie名,将所述校验cookie值和校验cookie名存入所述cookie库;
S4、将所述校验cookie值、校验cookie名和cookie处理模块插入所述返回信息中,所述服务器将所述返回信息发送至所述客户端;所述cookie处理模块用于在所述客户端接收所述返回信息后,使用预设的行为判断规则判断所述客户端的行为是否安全;
S5、在判定所述客户端的行为是安全后,通过加密算法对所述校验cookie值进行加密,得到请求cookie值,并将所述请求cookie值和所述校验cookie名组成新的所述请求cookie,所述新的请求cookie用于插入至所述客户端下一次发出的http请求。
2.根据权利要求1所述的用于网络防护的动态cookie验证方法,其特征在于,所述步骤S1还包括:
使用预设的URL库对所述请求URL进行匹配;
若匹配成功,则进入步骤S2;
若匹配失败,则将所述http请求发送至所述服务器进行正常访问。
3.根据权利要求2所述的用于网络防护的动态cookie验证方法,其特征在于,所述步骤S2包括:
S21、将所述请求cookie的cookie名与所述cookie库中的所述校验cookie名进行匹配;
若匹配成功,则进入步骤S22;
若匹配失败,则将所述http请求定向至所述默认页面,并将所述默认页面作为返回信息,进入步骤S3;
S22、将所述请求cookie的cookie值使用解密算法进行解密得到解密cookie值,将所述解密cookie值与所述cookie库中的所述校验cookie值进行匹配,
若匹配成功,则将所述cookie库中的所述校验cookie值对应的剩余验证次数减一,进入步骤S23;
若匹配失败,则将所述http请求定向至所述默认页面,并将所述默认页面作为返回信息,进入步骤S3;
S23、查询所述cookie库中的所述校验cookie值的所述剩余验证次数;
若所述剩余验证次数大于或等于零,则将所述http请求定向至所述欲访问页面,将所述欲访问页面作为返回信息,进入步骤S3;
若所述剩余验证次数小于零,则从所述cookie库中删去所述校验cookie值和校验cookie名,并将所述http请求定向至所述默认页面,将所述默认页面作为返回信息,进入步骤S3。
4.根据权利要求3所述的用于网络防护的动态cookie验证方法,其特征在于,所述步骤S3中,所述特征字段为所述请求URL,在生成所述校验cookie值后,还包括:
为所述校验cookie值设置所述剩余验证次数,将所述剩余验证次数保存至所述cookie库中。
5.根据权利要求1所述的用于网络防护的动态cookie验证方法,其特征在于,所述步骤S5中,所述客户端的行为包括人机交互设备的输入内容、控制内容、响应频率、响应次数中的一种或多种;所述预设的行为判断规则为:
当所述客户端的行为大于预定的行为阈值时,判定为所述客户端行为为安全;
所述行为阈值包括输入内容长度阈值、控制内容长度阈值、响应频率阈值或响应次数阈值中的一种或多种。
6.一种用于网络防护的动态cookie验证装置,其特征在于,包括:
cookie验证模块,用于:
接收客户端发送至服务器的http请求,所述http请求中包括请求cookie和请求URL;
使用预设的cookie库对所述请求cookie的cookie信息进行解密及验证;所述cookie信息包括cookie名、cookie值;
在验证成功时将所述http请求定向至所述请求URL所对应的欲访问页面,并将所述欲访问页面作为返回信息;
在验证失败将所述http请求定向至一默认页面,并将所述默认页面作为返回信息;
校验cookie生成模块,用于使用加密算法那对所述http请求中的特征字段进行加密生成校验cookie值,并随机生成一校验cookie名,将所述校验cookie值和校验cookie名存入所述cookie库;
cookie插入模块,用于将所述校验cookie值、校验cookie名和cookie处理模块插入所述返回信息中;
所述cookie处理模块,用于在所述客户端接收所述返回信息后,使用预设的行为判断规则对所述客户端的行为进行判断,判断所述客户端的行为安全后,通过加密算法对所述校验cookie值进行加密得到请求cookie值,并将所述请求cookie值和所述校验cookie名组成新的所述请求cookie,所述新的请求cookie用于插入至所述客户端下一次发出的http请求。
7.根据权利要求6所述的用于网络防护的动态cookie验证装置,其特征在于,还包括:
URL匹配模块,用于使用预设的URL库对所述请求URL进行匹配;若匹配成功,将所述http请求发送至所述cookie验证模块;若匹配失败,将所述http请求发送至所述服务器进行正常访问。
8.根据权利要求6所述的用于网络防护的动态cookie验证装置,其特征在于,所述cookie验证模块包括:
cookie名验证单元,用于:
将所述请求cookie的cookie名与所述cookie库中的所述校验cookie名进行匹配;
在匹配成功时将所述http请求发送至cookie值验证单元;
在匹配失败时将所述http请求定向至所述默认页面,并将所述默认页面作为返回信息;
cookie值验证单元,用于:
将所述请求cookie的cookie值使用解密算法进行解密得到解密cookie值,将所述解密cookie值与所述cookie库中的所述校验cookie值进行匹配,
在匹配成功时将所述cookie库中的所述校验cookie值对应的剩余验证次数减一,将所述http请求发送至cookie次数验证单元;
在匹配失败时将所述http请求定向至所述默认页面,并将所述默认页面作为返回信息;
cookie次数验证单元,用于:
查询所述cookie库中的所述校验cookie值的所述剩余验证次数;
在所述剩余验证次数大于或等于零时,将所述http请求定向至所述欲访问页面,将所述欲访问页面作为返回信息;
在所述剩余验证次数小于零时,从所述cookie库中删去所述校验cookie值和校验cookie名,并将所述http请求定向至所述默认页面,将所述默认页面作为返回信息。
9.根据权利要求8所述的用于网络防护的动态cookie验证装置,其特征在于,所述特征字段为所述请求URL;所述校验cookie生成模块为所述校验cookie值设置所述剩余验证次数,将所述剩余验证次数保存至所述cookie库中。
10.根据权利要求6所述的用于网络防护的动态cookie验证装置,其特征在于,所述客户端的行为包括人机交互设备的输入内容、控制内容、响应频率、响应次数中的一种或多种;所述预设的行为判断规则为:
当所述客户端的行为大于预定的行为阈值时,判定为所述客户端行为为安全;
所述行为阈值包括输入内容长度阈值、控制内容长度阈值、响应频率阈值或响应次数阈值中的一种或多种。
CN201910180200.2A 2019-03-11 2019-03-11 一种用于网络防护的动态cookie验证方法及装置 Active CN110046500B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910180200.2A CN110046500B (zh) 2019-03-11 2019-03-11 一种用于网络防护的动态cookie验证方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910180200.2A CN110046500B (zh) 2019-03-11 2019-03-11 一种用于网络防护的动态cookie验证方法及装置

Publications (2)

Publication Number Publication Date
CN110046500A true CN110046500A (zh) 2019-07-23
CN110046500B CN110046500B (zh) 2022-04-15

Family

ID=67274597

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910180200.2A Active CN110046500B (zh) 2019-03-11 2019-03-11 一种用于网络防护的动态cookie验证方法及装置

Country Status (1)

Country Link
CN (1) CN110046500B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114172677A (zh) * 2020-09-11 2022-03-11 北京金山云网络技术有限公司 针对秒拨ip的识别方法及装置、系统

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6374359B1 (en) * 1998-11-19 2002-04-16 International Business Machines Corporation Dynamic use and validation of HTTP cookies for authentication
US20040117486A1 (en) * 2002-03-27 2004-06-17 International Business Machines Corporation Secure cache of web session information using web browser cookies
US20130055384A1 (en) * 2011-08-25 2013-02-28 Amichai Shulman Dealing with web attacks using cryptographically signed http cookies
CN103179134A (zh) * 2013-04-19 2013-06-26 中国建设银行股份有限公司 基于Cookie的单点登录方法、系统及其应用服务器
CN103312666A (zh) * 2012-03-09 2013-09-18 腾讯科技(深圳)有限公司 一种防御跨站请求伪造csrf攻击的方法、系统和装置
US20150046997A1 (en) * 2013-05-14 2015-02-12 Citrix Systems, Inc. Accessing Enterprise Resources While Providing Denial-of-Service Attack Protection
EP2849110A1 (en) * 2013-09-13 2015-03-18 Gemalto SA Server using unpredictable scrambled cookie names
US20150096020A1 (en) * 2013-09-30 2015-04-02 Juniper Networks, Inc. Limiting the efficacy of a denial of service attack by increasing client resource demands
EP2882133A1 (en) * 2013-12-03 2015-06-10 Verisign, Inc. Client-side active validation for mitigating DDOS attacks
CN105939315A (zh) * 2015-10-20 2016-09-14 杭州迪普科技有限公司 一种http攻击防护方法及装置
US20170012978A1 (en) * 2015-05-14 2017-01-12 River Security Inc. Secure communication method and apparatus

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6374359B1 (en) * 1998-11-19 2002-04-16 International Business Machines Corporation Dynamic use and validation of HTTP cookies for authentication
US20040117486A1 (en) * 2002-03-27 2004-06-17 International Business Machines Corporation Secure cache of web session information using web browser cookies
US20130055384A1 (en) * 2011-08-25 2013-02-28 Amichai Shulman Dealing with web attacks using cryptographically signed http cookies
CN103312666A (zh) * 2012-03-09 2013-09-18 腾讯科技(深圳)有限公司 一种防御跨站请求伪造csrf攻击的方法、系统和装置
CN103179134A (zh) * 2013-04-19 2013-06-26 中国建设银行股份有限公司 基于Cookie的单点登录方法、系统及其应用服务器
US20150046997A1 (en) * 2013-05-14 2015-02-12 Citrix Systems, Inc. Accessing Enterprise Resources While Providing Denial-of-Service Attack Protection
EP2849110A1 (en) * 2013-09-13 2015-03-18 Gemalto SA Server using unpredictable scrambled cookie names
US20160226832A1 (en) * 2013-09-13 2016-08-04 Gemalto Sa Server using unpredictable scrambled cookie names
US20150096020A1 (en) * 2013-09-30 2015-04-02 Juniper Networks, Inc. Limiting the efficacy of a denial of service attack by increasing client resource demands
EP2882133A1 (en) * 2013-12-03 2015-06-10 Verisign, Inc. Client-side active validation for mitigating DDOS attacks
US20170012978A1 (en) * 2015-05-14 2017-01-12 River Security Inc. Secure communication method and apparatus
CN105939315A (zh) * 2015-10-20 2016-09-14 杭州迪普科技有限公司 一种http攻击防护方法及装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
朱远文等: "基于Cookie的安全防护技术研究", 《信息网络安全》 *
沈海波等: "基于Cookie的Web服务安全认证系统", 《计算机工程与设计》 *
王国伟等: "基于可变Cookie的跨域单点登录", 《计算机工程与设计》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114172677A (zh) * 2020-09-11 2022-03-11 北京金山云网络技术有限公司 针对秒拨ip的识别方法及装置、系统

Also Published As

Publication number Publication date
CN110046500B (zh) 2022-04-15

Similar Documents

Publication Publication Date Title
CN106789983B (zh) 一种cc攻击防御方法及其防御系统
CN103944900B (zh) 一种基于加密的跨站请求攻击防范方法及其装置
CN107770171B (zh) 服务器反爬虫的验证方法及系统
CN107209830A (zh) 用于识别并抵抗网络攻击的方法
CN104811428B (zh) 利用社交关系数据验证客户端身份的方法、装置及系统
US20110270969A1 (en) Virtual server and method for identifying zombie, and sinkhole server and method for integratedly managing zombie information
CN100555939C (zh) 一种基于网络的软件保护方法
CN105827574B (zh) 一种文件访问系统、方法及装置
Campobasso et al. Impersonation-as-a-service: Characterizing the emerging criminal infrastructure for user impersonation at scale
CN106790238A (zh) 一种跨站请求伪造csrf防御认证方法和装置
CN105516208A (zh) 一种有效防止网络攻击的web网站链接动态隐藏方法及装置
CN104735065A (zh) 一种数据处理方法、电子设备及服务器
Yoo et al. Case study of the vulnerability of OTP implemented in internet banking systems of South Korea
CN101978376A (zh) 用于抵御信息窃取软件的方法及系统
CN106330968B (zh) 一种访问设备的身份认证方法及装置
CN112131564A (zh) 加密数据通信方法、装置、设备以及介质
CN112235306B (zh) 一种基于云安全的电子商务账户验证方法
US20210306369A1 (en) Methods of monitoring and protecting access to online services
CN109977673A (zh) 一种基于web网站系统安全的漏洞修复方法及系统
Singh et al. Detection and prevention of phishing attack using dynamic watermarking
Mridha et al. A new approach to enhance internet banking security
Aljawarneh et al. A web client authentication system using smart card for e-systems: initial testing and evaluation
CN106850592B (zh) 一种信息处理方法、服务器及终端
CN110046500A (zh) 一种用于网络防护的动态cookie验证方法及装置
Ahmed et al. PhishCatcher: Client-Side Defense Against Web Spoofing Attacks Using Machine Learning

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230803

Address after: 510000 No.4, Shawan 3rd Street, Luogang District, Guangzhou City, Guangdong Province

Patentee after: Qiu Mingcha

Address before: 510000 Room 202, No. 5, Zhishan Second Street, Huangpu District, Guangzhou City, Guangdong Province

Patentee before: Liu Yong

Effective date of registration: 20230803

Address after: 510663 Block 1102A, 9B, Caifen Road, Science City, Guangzhou Development Zone, Guangdong Province

Patentee after: Guangzhou Anrui Information Technology Co.,Ltd.

Address before: 510000 No.4, Shawan 3rd Street, Luogang District, Guangzhou City, Guangdong Province

Patentee before: Qiu Mingcha