CN112699374A - 一种完整性校验漏洞安全防护的方法及*** - Google Patents
一种完整性校验漏洞安全防护的方法及*** Download PDFInfo
- Publication number
- CN112699374A CN112699374A CN202011575626.7A CN202011575626A CN112699374A CN 112699374 A CN112699374 A CN 112699374A CN 202011575626 A CN202011575626 A CN 202011575626A CN 112699374 A CN112699374 A CN 112699374A
- Authority
- CN
- China
- Prior art keywords
- request
- data
- client
- information
- signature
- 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
- 238000000034 method Methods 0.000 title claims abstract description 27
- 238000012545 processing Methods 0.000 claims abstract description 20
- 238000012795 verification Methods 0.000 claims description 17
- 230000001174 ascending effect Effects 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 150000003839 salts Chemical class 0.000 description 5
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种完整性校验漏洞安全防护的方法及***,其方法包括:客户端根据拼接请求URL信息、拼接请求头部信息及拼接请求的数据信息,生成所述客户端的待签名数据;所述客户端根据用户会话签名标识信息和所述客户端的待签名数据进行数字签名处理,得到所述客户端的签名信息,并将包含所述客户端的签名信息的数据请求发送给服务端;所述服务端接收到所述数据请求后,利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护。
Description
技术领域
本发明涉及应用软件安全防护领域,特别涉及一种完整性校验漏洞安全防护的方法及***。
背景技术
完整性校验漏洞,是指***在服务器端没有对客户端提交的数据做数据完整性的校验,使得在请求发送中被篡改的数据也能正常保存和读取,存在安全隐患,如图3所示。
目前完整性校验漏洞的解决方案一般有两种:
一种是采用数据加密机制,通过对传输过程中的数据进行加密处理,确保数据安全。缺点是该方案严重依赖于加密算法,如果采用比较简单的算法或编码,一旦被人获取足够的“样本”,将有可能被反向推测出解密算法,从而泄露重要数据。
另一种是数据传输采用https通信协议,保证数据传输信道安全。但在实际的业务应用场景中,因为运行环境等因素限制,会导致传输过程中无法使用https。该方案的缺点是不适合所有业务场景。
发明内容
为解决目前完整性校验漏洞解决方案中出现的数据加密算法选择不当、数据传输过程不能使用https等问题,本发明提出了一种基于用户会话签名标识的通过数据签名校验机制进行完整性校验漏洞的安全防护的方法及***。
根据本发明实施例提供的一种完整性校验漏洞安全防护的方法,包括:
客户端根据拼接请求URL信息、拼接请求头部信息及拼接请求的数据信息,生成所述客户端的待签名数据;
所述客户端根据用户会话签名标识信息和所述客户端的待签名数据进行数字签名处理,得到所述客户端的签名信息,并将包含所述客户端的签名信息的数据请求发送给服务端;
所述服务端接收到所述数据请求后,利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护。
优选地,还包括客户端接收并保存所述服务端发送的用户会话签名标识信息,其具体包括:
所述客户端在登录所述服务端成功后,建立与所述服务端之间的用户会话;
所述服务器端根据所述用户会话,生成与所述用户会话相关的用户会话签名标识信息,并将所述用户会话签名标识信息发送给所述客户端。
优选地,所述客户端根据拼接请求URL信息、拼接请求头部信息及拼接请求的数据信息,生成所述客户端的待签名数据包括:
所述客户端分别获取拼接请求URL信息和拼接请求头部信息;
所述客户端根据请求数据中的各参数名称信息,按照字母字典升序排列的方式进行排序,得到拼接请求的数据信息;
所述客户端按照拼接请求URL信息、拼接请求头部信息及拼接请求的数据信息的拼接顺序进行拼接处理,生成所述客户端的待签名数据。
优选地,所述客户端根据用户会话签名标识信息和所述客户端的待签名数据进行数字签名处理,得到所述客户端的签名信息包括:
所述客户端利用MD5算法对所述用户会话签名标识信息和所述客户端的待签名数据进行数字签名处理,得到所述客户端的签名信息。
优选地,所述数据请求中还包括:
所述拼接请求URL信息、所述拼接请求头部信息及所述拼接请求的数据信息。
优选地,所述服务端接收到所述数据请求后,利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护包括:
所述服务端接收到所述数据请求后,通过对所述数据请求中的所述拼接请求URL信息、所述拼接请求头部信息及所述拼接请求的数据信息进行合法性验证,判断所述数据请求是无效请求还是有效请求;
当判断所述数据请求是无效请求时,所述服务端丢弃所述数据请求;
当判断所述数据请求是有效请求时,所述服务端利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护。
优选地,所述服务端利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护包括:
所述服务端通过对所述数据请求中的所述客户端签名信息进行有效性验证,判断所述数据请求是否存在完整性校验漏洞;
当判断所述数据请求不存在完整性校验漏洞时,将所述数据请求作为有效数据请求;
当判断所述数据请求存在完整性校验漏洞时,则丢弃所述数据请求。
优选地,所述服务端通过对所述数据请求中的所述客户端签名信息进行有效性验证,判断所述数据请求是否存在完整性校验漏洞包括:
所述服务端根据所述拼接请求URL信息、所述拼接请求头部信息及所述拼接请求的数据信息,生成待签名数据;
所述服务端在生成待签名数据后,读取与所述客户端对应的用户会话签名标识信息,并利用MD5算法对所读取的用户会话签名标识信息和所述待签名数据进行数字签名处理,得到签名信息;
当所述签名信息与所述客户端签名信息相同时,所述服务端判断所述数据请求不存在完整性校验漏洞;
当所述签名信息与所述客户端签名信息不同时,所述服务端判断所述数据请求存在完整性校验漏洞,并丢弃所述数据请求。
根据本发明实施例提供的一种完整性校验漏洞安全防护的***,包括:
客户端,用于根据拼接请求URL信息、拼接请求头部信息及拼接请求的数据信息,生成所述客户端的待签名数据,以及根据用户会话签名标识信息和所述客户端的待签名数据进行数字签名处理,得到所述客户端的签名信息,并将包含所述客户端的签名信息的数据请求发送给服务端;
服务端,用于接收到所述客户端发送的数据请求后,利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护。
优选地,所述数据请求中还包括:所述拼接请求URL信息、所述拼接请求头部信息及所述拼接请求的数据信息。
根据本发明实施例提供的方案,通过该安全防护工具的使用,可有效解决完整性校验漏洞,提高编码安全性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于理解本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例提供的一种完整性校验漏洞安全防护的方法流程图;
图2是本发明实施例提供的一种完整性校验漏洞安全防护的***示意图;
图3是现有技术提供的完整性校验漏洞原理图;
图4是本发明实施例提供的业务***和安全组件关系图;
图5是本发明实施例提供的客户端安全组件签名计算与发送流程图;
图6是本发明实施例提供的生成待签名数据data的过程的流程图;
图7是本发明实施例提供的服务端安全组件签名计算与验证流程图;
图8是本发明实施例提供的用户会话签名标识uid生成和访问流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1是本发明实施例提供的一种完整性校验漏洞安全防护的方法流程图,如图1所示,包括:
步骤S101:客户端根据拼接请求URL信息、拼接请求头部信息及拼接请求的数据信息,生成所述客户端的待签名数据;
步骤S102:所述客户端根据用户会话签名标识信息和所述客户端的待签名数据进行数字签名处理,得到所述客户端的签名信息,并将包含所述客户端的签名信息的数据请求发送给服务端;
步骤S103:所述服务端接收到所述数据请求后,利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护。
优选地,还包括客户端接收并保存所述服务端发送的用户会话签名标识信息,其具体包括:所述客户端在登录所述服务端成功后,建立与所述服务端之间的用户会话;所述服务器端根据所述用户会话,生成与所述用户会话相关的用户会话签名标识信息,并将所述用户会话签名标识信息发送给所述客户端。
优选地,所述客户端根据拼接请求URL信息、拼接请求头部信息及拼接请求的数据信息,生成所述客户端的待签名数据包括:所述客户端分别获取拼接请求URL信息和拼接请求头部信息;所述客户端根据请求数据中的各参数名称信息,按照字母字典升序排列的方式进行排序,得到拼接请求的数据信息;所述客户端按照拼接请求URL信息、拼接请求头部信息及拼接请求的数据信息的拼接顺序进行拼接处理,生成所述客户端的待签名数据。
优选地,所述客户端根据用户会话签名标识信息和所述客户端的待签名数据进行数字签名处理,得到所述客户端的签名信息包括:所述客户端利用MD5算法对所述用户会话签名标识信息和所述客户端的待签名数据进行数字签名处理,得到所述客户端的签名信息。
优选地,所述数据请求中还包括:所述拼接请求URL信息、所述拼接请求头部信息及所述拼接请求的数据信息。
优选地,所述服务端接收到所述数据请求后,利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护包括:所述服务端接收到所述数据请求后,通过对所述数据请求中的所述拼接请求URL信息、所述拼接请求头部信息及所述拼接请求的数据信息进行合法性验证,判断所述数据请求是无效请求还是有效请求;当判断所述数据请求是无效请求时,所述服务端丢弃所述数据请求;当判断所述数据请求是有效请求时,所述服务端利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护。
优选地,所述服务端利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护包括:所述服务端通过对所述数据请求中的所述客户端签名信息进行有效性验证,判断所述数据请求是否存在完整性校验漏洞;当判断所述数据请求不存在完整性校验漏洞时,将所述数据请求作为有效数据请求;当判断所述数据请求存在完整性校验漏洞时,则丢弃所述数据请求。
优选地,所述服务端通过对所述数据请求中的所述客户端签名信息进行有效性验证,判断所述数据请求是否存在完整性校验漏洞包括:所述服务端根据所述拼接请求URL信息、所述拼接请求头部信息及所述拼接请求的数据信息,生成待签名数据;所述服务端在生成待签名数据后,读取与所述客户端对应的用户会话签名标识信息,并利用MD5算法对所读取的用户会话签名标识信息和所述待签名数据进行数字签名处理,得到签名信息;当所述签名信息与所述客户端签名信息相同时,所述服务端判断所述数据请求不存在完整性校验漏洞;当所述签名信息与所述客户端签名信息不同时,所述服务端判断所述数据请求存在完整性校验漏洞,并丢弃所述数据请求。
图2是本发明实施例提供的一种完整性校验漏洞安全防护的***示意图,如图2所示,包括:客户端201,用于根据拼接请求URL信息、拼接请求头部信息及拼接请求的数据信息,生成所述客户端的待签名数据,以及根据用户会话签名标识信息和所述客户端的待签名数据进行数字签名处理,得到所述客户端的签名信息,并将包含所述客户端的签名信息的数据请求发送给服务端;服务端202,用于接收到所述客户端发送的数据请求后,利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护。
优选地,所述数据请求中还包括:所述拼接请求URL信息、所述拼接请求头部信息及所述拼接请求的数据信息。
下面结合附图对本发明的技术方案进行说明。
本发明主要包括完整性校验安全组件客户端、完整性校验安全组件服务端两部分内容。如图4所示,完整性校验安全组件工具,为了保证数据的完整性,通过数据签名校验机制,约定会话签名标识uid为密钥(仅一次会话周期内有效,通过交换密钥的方式由服务端加密传输至客户端后,严格控制在两端分别保存,传输过程中不再随请求发送)用于签名计算,客户端发送请求时,将请求数据、uid拼接计算出签名;服务端接收到请求后,也按相同算法计算出签名。如果相等,则请求来自可信任客户端,且请求是完整的。其中会话签名标识uid,作为完整性校验中计算签名的盐值,是有效解决完整性校验漏洞的关键,因此uid的生成和访问机制尤为重要。
业务***引入完整性校验安全组件(业务***客户端引入完整性校验安全组件客户端,业务***服务端引入完整性校验安全组件服务端),开启完整性校验功能后,服务端在收到完整性漏洞攻击请求时,会给客户端反馈相关错误信息(错误码:471,错误提示:非法请求)。
在开发过程中使用时,具体包括业务***客户端和业务***服务端2个步骤:
步骤1:业务***客户端在开发时的使用步骤
A、引入安全组件js包
B、开启完整性校验漏洞配置
在客户端的全局配置文件中通过完整性校验配置项来开启完整性校验功能,即可与安全组件服务端对接,具备完整性校验防护功能。客户端开启完整性校验的配置文件为:utils/request/settings.js,开启完整性校验的配置项为isOpenIntegrityChecks,true表示开启配置,false表示关闭配置。
步骤2:业务***服务端在开发时的使用步骤
(1)集成安全组件
1)引入安全组件jar包
2)将安全组件加入到扫描路径
3)将SpringContext赋值给SecurityAPI
4)将安全组件配置文件ESAPI.properties放到resource目录下。
(2)开启会话组件
1)启用安全组件服务端提供的SessionToolFilter
2)根据业务微服务选择的是session还是token认证机制,在ESAPI.properties中配置ESAPI.sessionToolHelper所使用的安全组件提供的具体的会话组件帮助类。
(3)开启完整性校验功能
启用安全组件服务端提供的IntegrityFilter。
图5是本发明实施例提供的客户端安全组件签名计算与发送流程图,如图5所示,包括:
步骤51:客户端读取用户会话签名标识uid;
如图8所示,用户会话签名标识uid生成和访问流程图,包括:
(81)用户首次访问***建立第一用户会话后,客户端请求服务端获取和用户相关的公钥;
(82)服务端生成与第一用户会话相关的公私钥(会话周期内有效),将公钥publickey_server发送给客户端;
(83)用户登录认证通过并建立第二用户会话后,服务端替换原有用户会话(第一用户会话)标识并在服务端存储;
(84)客户端生成公私钥对,用服务端公钥对客户端公钥进行加密encryptpublickey_client=RSA.encrypt(publickey_client,publickey_server),并将加密后的客户端公钥发送到服务端;
(85)服务端接收请求后,使用服务端私钥对其解密,获取客户端公钥publickey_client=RSA.decrypt(encryptpublickey_client,privatekey_server);
(86)服务端生成与用户会话相关的用户会话签名标识uid(uid在会话周期内有效,可以依据开发方便和业务需求选择存储方案,如***使用了session机制可存储在session中,或者选择存储在缓存中或数据库中),并使用客户端公钥对uid进行加密后发送到客户端,encryptuid=RSA.encrypt(uid,publickey_client);
(87)客户端得到响应数据后,用客户端私钥对其进行解密得到明文uid,uid=RSA.decrypt(encryptuid,privatekey_client),并将uid本地保存后待后续使用(uid在会话周期内有效,存储在客户端的localstorage中,用户注销登录或者重新跳转至登录页面时,客户端程序会手动清除localstorage中的内容,且uid存储时参数名进行序列化混淆)。
步骤52:客户端按照一定规则排列生成待签名数据data;
生成待签名数据data的过程:先拼接请求的url(如:/api/person/add),然后拼接请求头部信息(会话token、origin、refer等),再拼接按字母字典升序排列的请求数据,最终生成待签名数据data=url+会话token+origin+refer+sort(content),如图6所示。
其中sort(content)举例如下:
请求数据content内容:name=mingming&city=shanghai,sort的含义是将content中按照各参数名称(name、city参数)的字母字典升序排序(即city、name参数顺序),然后把排序后的各参数值拼接成一个字符串“shanghaimingming”。
步骤53:客户端使用MD5哈希算法进行签名计算;
客户端在按照一定排序规则生成了待签名数据后,进行加盐(本方案中salt值为用户会话签名标识uid),然后使用MD5摘要算法计算摘要,得到的散列值即为客户端签名sign_client=MD5(uid+data)。
步骤54:客户端将签名sign_client以http头部的形式发送给服务端。
客户端发送的请求示例,如下所示:
POST/api/person/add HTTP/1.1
Accept:application/json,text/javascript,*/*;
Accept-Encoding:gzip,deflate
Accept-Language:zh-CN,zh;
Connection:keep-alive
Host:http://ip:port
Referer:http://ip:port/api/person/
origin:http://ip:port
a:[sign_replay]
b:[sign_integrity]
Authorization:[token]
name=mingming&city=shanghai
图7是本发明实施例提供的服务端安全组件签名计算与验证流程图,如图7所示,包括:
步骤71:服务端接收请求,并进行校验;
服务端收到客户端请求数据,并校验客户端签名、请求头部信息、请求数据等参数是否合法,是否能根据用户会话信息获取到uid,如果不符合要求则视为无效请求。
步骤72:服务端按照相同规则排列生成待签名数据data;
服务端按照和客户端相同的规则排列待签名数据,生成待签名数据data的过程:先拼接请求的url(如:/api/person/add),然后拼接请求头部信息(会话token、origin、refer等),再拼接按字母字典升序排列的请求数据content,最终生成待签名数据data=url+会话token+origin+refer+sort(content)。
步骤73:服务端使用MD5哈希算法进行签名计算;
服务端生成待签名数据后,使用和客户端相同的key(用户会话签名标识uid),然后使用MD5摘要算法计算摘要,得到的散列值即为服务端签名sign_server=MD5(uid+data)。
步骤74:服务端验证签名是否一致.
验证两个签名(客户端发送的签名sign_client和服务端生成的签名sign_server)是否一致。若一致,则说明数据没有经过篡改,执行响应操作;若不一致,则签名校验异常,说明数据经过篡改,视为无效请求。
根据本发明实施例提供的方案,综合考虑了uid的传输和存储安全、防止中间人劫持,可保证每个用户每个会话周期内的uid均不同,且无法伪造和篡改(uid由服务端生成)。通过uid的生成和访问机制,uid作为盐值,结合哈希加盐算法对数据进行散列处理,可有效解决完整性校验漏洞。签名计算时,通过请求的url、请求头部信息(会话token、origin、refer等),可一次解决因数据越权和功能越权导致的暴力破解、跨域攻击、跨站请求伪造等问题。通过封装为完整性校验安全组件,业务***引入该安全组件后,可有效降低开发难度和开发工作量。
尽管上文对本发明进行了详细说明,但是本发明不限于此,本技术领域技术人员可以根据本发明的原理进行各种修改。因此,凡按照本发明原理所作的修改,都应当理解为落入本发明的保护范围。
Claims (10)
1.一种完整性校验漏洞安全防护的方法,其特征在于,包括:
客户端根据拼接请求URL信息、拼接请求头部信息及拼接请求的数据信息,生成所述客户端的待签名数据;
所述客户端根据用户会话签名标识信息和所述客户端的待签名数据进行数字签名处理,得到所述客户端的签名信息,并将包含所述客户端的签名信息的数据请求发送给服务端;
所述服务端接收到所述数据请求后,利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护。
2.根据权利要求1所述的方法,其特征在于,还包括客户端接收并保存所述服务端发送的用户会话签名标识信息,其具体包括:
所述客户端在登录所述服务端成功后,建立与所述服务端之间的用户会话;
所述服务器端根据所述用户会话,生成与所述用户会话相关的用户会话签名标识信息,并将所述用户会话签名标识信息发送给所述客户端。
3.根据权利要求1所述的方法,其特征在于,所述客户端根据拼接请求URL信息、拼接请求头部信息及拼接请求的数据信息,生成所述客户端的待签名数据包括:
所述客户端分别获取拼接请求URL信息和拼接请求头部信息;
所述客户端根据请求数据中的各参数名称信息,按照字母字典升序排列的方式进行排序,得到拼接请求的数据信息;
所述客户端按照拼接请求URL信息、拼接请求头部信息及拼接请求的数据信息的拼接顺序进行拼接处理,生成所述客户端的待签名数据。
4.根据权利要求1所述的方法,其特征在于,所述客户端根据用户会话签名标识信息和所述客户端的待签名数据进行数字签名处理,得到所述客户端的签名信息包括:
所述客户端利用MD5算法对所述用户会话签名标识信息和所述客户端的待签名数据进行数字签名处理,得到所述客户端的签名信息。
5.根据权利要求1所述的方法,其特征在于,所述数据请求中还包括:
所述拼接请求URL信息、所述拼接请求头部信息及所述拼接请求的数据信息。
6.根据权利要求5所述的方法,其特征在于,所述服务端接收到所述数据请求后,利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护包括:
所述服务端接收到所述数据请求后,通过对所述数据请求中的所述拼接请求URL信息、所述拼接请求头部信息及所述拼接请求的数据信息进行合法性验证,判断所述数据请求是无效请求还是有效请求;
当判断所述数据请求是无效请求时,所述服务端丢弃所述数据请求;
当判断所述数据请求是有效请求时,所述服务端利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护。
7.根据权利要求6所述的方法,其特征在于,所述服务端利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护包括:
所述服务端通过对所述数据请求中的所述客户端签名信息进行有效性验证,判断所述数据请求是否存在完整性校验漏洞;
当判断所述数据请求不存在完整性校验漏洞时,将所述数据请求作为有效数据请求;
当判断所述数据请求存在完整性校验漏洞时,则丢弃所述数据请求。
8.根据权利要求7所述的方法,其特征在于,所述服务端通过对所述数据请求中的所述客户端签名信息进行有效性验证,判断所述数据请求是否存在完整性校验漏洞包括:
所述服务端根据所述拼接请求URL信息、所述拼接请求头部信息及所述拼接请求的数据信息,生成待签名数据;
所述服务端在生成待签名数据后,读取与所述客户端对应的用户会话签名标识信息,并利用MD5算法对所读取的用户会话签名标识信息和所述待签名数据进行数字签名处理,得到签名信息;
当所述签名信息与所述客户端签名信息相同时,所述服务端判断所述数据请求不存在完整性校验漏洞;
当所述签名信息与所述客户端签名信息不同时,所述服务端判断所述数据请求存在完整性校验漏洞,并丢弃所述数据请求。
9.一种完整性校验漏洞安全防护的***,其特征在于,包括:
客户端,用于根据拼接请求URL信息、拼接请求头部信息及拼接请求的数据信息,生成所述客户端的待签名数据,以及根据用户会话签名标识信息和所述客户端的待签名数据进行数字签名处理,得到所述客户端的签名信息,并将包含所述客户端的签名信息的数据请求发送给服务端;
服务端,用于接收到所述客户端发送的数据请求后,利用所述数据请求中的所述客户端签名信息进行完整性校验漏洞安全防护。
10.根据权利要求9所述的***,其特征在于,所述数据请求中还包括:所述拼接请求URL信息、所述拼接请求头部信息及所述拼接请求的数据信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011575626.7A CN112699374A (zh) | 2020-12-28 | 2020-12-28 | 一种完整性校验漏洞安全防护的方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011575626.7A CN112699374A (zh) | 2020-12-28 | 2020-12-28 | 一种完整性校验漏洞安全防护的方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112699374A true CN112699374A (zh) | 2021-04-23 |
Family
ID=75511340
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011575626.7A Pending CN112699374A (zh) | 2020-12-28 | 2020-12-28 | 一种完整性校验漏洞安全防护的方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112699374A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114338114A (zh) * | 2021-12-21 | 2022-04-12 | 中国农业银行股份有限公司 | 一种入侵检测方法、装置、设备及存储介质 |
CN114745202A (zh) * | 2022-05-10 | 2022-07-12 | 山东鲁软数字科技有限公司 | 一种主动防御web攻击的方法及基于主动防御的web安全网关 |
CN114884730A (zh) * | 2022-05-07 | 2022-08-09 | 深信服科技股份有限公司 | 一种请求检测方法、装置、设备及可读存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1820481A (zh) * | 2003-07-11 | 2006-08-16 | 国际商业机器公司 | 在客户机-服务器环境中认证客户机的***和方法 |
CN102394749A (zh) * | 2011-09-26 | 2012-03-28 | 深圳市文鼎创数据科技有限公司 | 数据传输的线路保护方法、***、信息安全设备及应用设备 |
CN103973695A (zh) * | 2014-05-16 | 2014-08-06 | 浪潮电子信息产业股份有限公司 | 一种与服务器验证的签名算法 |
CN107911219A (zh) * | 2017-11-09 | 2018-04-13 | 成都知道创宇信息技术有限公司 | 一种基于密钥签名的api防cc方法 |
CN109150898A (zh) * | 2018-09-18 | 2019-01-04 | 厦门安胜网络科技有限公司 | 用于处理信息的方法和装置 |
CN109450649A (zh) * | 2018-12-28 | 2019-03-08 | 北京金山安全软件有限公司 | 一种基于应用程序接口的网关验证方法、装置及电子设备 |
CN110611564A (zh) * | 2019-07-30 | 2019-12-24 | 云南昆钢电子信息科技有限公司 | 一种基于时间戳的api重放攻击的防御***及方法 |
-
2020
- 2020-12-28 CN CN202011575626.7A patent/CN112699374A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1820481A (zh) * | 2003-07-11 | 2006-08-16 | 国际商业机器公司 | 在客户机-服务器环境中认证客户机的***和方法 |
CN102394749A (zh) * | 2011-09-26 | 2012-03-28 | 深圳市文鼎创数据科技有限公司 | 数据传输的线路保护方法、***、信息安全设备及应用设备 |
CN103973695A (zh) * | 2014-05-16 | 2014-08-06 | 浪潮电子信息产业股份有限公司 | 一种与服务器验证的签名算法 |
CN107911219A (zh) * | 2017-11-09 | 2018-04-13 | 成都知道创宇信息技术有限公司 | 一种基于密钥签名的api防cc方法 |
CN109150898A (zh) * | 2018-09-18 | 2019-01-04 | 厦门安胜网络科技有限公司 | 用于处理信息的方法和装置 |
CN109450649A (zh) * | 2018-12-28 | 2019-03-08 | 北京金山安全软件有限公司 | 一种基于应用程序接口的网关验证方法、装置及电子设备 |
CN110611564A (zh) * | 2019-07-30 | 2019-12-24 | 云南昆钢电子信息科技有限公司 | 一种基于时间戳的api重放攻击的防御***及方法 |
Non-Patent Citations (1)
Title |
---|
邓才宝: "《计算机网络技术与网络安全问题研究》", 西北工业大学出版社 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114338114A (zh) * | 2021-12-21 | 2022-04-12 | 中国农业银行股份有限公司 | 一种入侵检测方法、装置、设备及存储介质 |
CN114884730A (zh) * | 2022-05-07 | 2022-08-09 | 深信服科技股份有限公司 | 一种请求检测方法、装置、设备及可读存储介质 |
CN114884730B (zh) * | 2022-05-07 | 2023-12-29 | 深信服科技股份有限公司 | 一种请求检测方法、装置、设备及可读存储介质 |
CN114745202A (zh) * | 2022-05-10 | 2022-07-12 | 山东鲁软数字科技有限公司 | 一种主动防御web攻击的方法及基于主动防御的web安全网关 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11089032B2 (en) | Signed envelope encryption | |
US10447674B2 (en) | Key exchange through partially trusted third party | |
US10516662B2 (en) | System and method for authenticating the legitimacy of a request for a resource by a user | |
US8302170B2 (en) | Method for enhancing network application security | |
US10122692B2 (en) | Handshake offload | |
US8825999B2 (en) | Extending encrypting web service | |
US7861087B2 (en) | Systems and methods for state signing of internet resources | |
CN112699374A (zh) | 一种完整性校验漏洞安全防护的方法及*** | |
US8689339B2 (en) | Method, system and apparatus for game data transmission | |
CN112711759A (zh) | 一种防重放攻击漏洞安全防护的方法及*** | |
US20060288220A1 (en) | In-line website securing system with HTML processor and link verification | |
US10122689B2 (en) | Load balancing with handshake offload | |
CN110198297B (zh) | 流量数据监控方法、装置、电子设备及计算机可读介质 | |
CN106911684B (zh) | 一种鉴权方法及*** | |
US20130103944A1 (en) | Hypertext Link Verification In Encrypted E-Mail For Mobile Devices | |
CN107517194B (zh) | 一种内容分发网络的回源认证方法和装置 | |
CN110071937B (zh) | 基于区块链的登录方法、***及存储介质 | |
CN113204772B (zh) | 数据处理方法、装置、***、终端、服务器和存储介质 | |
CA2793422C (en) | Hypertext link verification in encrypted e-mail for mobile devices | |
CN114726606A (zh) | 一种用户认证方法、客户端、网关及认证服务器 | |
Diaz et al. | On securing online registration protocols: Formal verification of a new proposal | |
CN116233276A (zh) | Socket数据传输方法、装置、电子设备及计算机可读存储介质 | |
Sporny | HTTP Message Signatures | |
Drhová | Autentizace, autorizace a session management v protokolu HTTP | |
CN117439739A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210423 |