[发明专利]一种基于密钥签名的API防CC方法在审
申请号: | 201711097536.X | 申请日: | 2017-11-09 |
公开(公告)号: | CN107911219A | 公开(公告)日: | 2018-04-13 |
发明(设计)人: | 孙越;徐晓林;赵永亮 | 申请(专利权)人: | 成都知道创宇信息技术有限公司 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L29/06;H04L29/08 |
代理公司: | 成都信博专利代理有限责任公司51200 | 代理人: | 张辉 |
地址: | 610000 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 密钥 签名 api cc 方法 | ||
技术领域
本发明涉及CC攻击防护领域,特别是一种基于密钥签名的API防CC方法。
背景技术
随着移动互联网的蓬勃发展和物联网的大规模普及,各种移动平台恶意软件层出不穷,大量的移动设备和没有安全性保障的物联网设备被不法分子作为“肉鸡”纳入到僵尸网络,进而操控其攻击其他网路设备,当控制量达到一定数量级后,进行DDoS攻击,这对DDoS的攻防带来了新的挑战。
CC攻击是DDoS攻击的一种类型,是一种专门针对Web应用层的FLOOD的攻击,攻击者通过代理服务器或网络上的肉机,对目标Web服务器发送大量貌似合法的请求,造成Web服务器资源耗尽,一直到宕机奔溃,从而无法响应正常用户的请求。
目前检测CC攻击的常用方法大多是通过请求IP对服务器请求的阈值来判断请求是否是攻击行为,当某个IP一定时间的请求服务器的次数超过阈值时,就判定该请求为CC攻击。但是现在CC攻击的方式,一般是利用分布式的代理服务器或僵尸网络伪造成正常的请求访问服务器,每个代理或僵尸IP向服务器发送请求的频率并不是很高,当进行攻击的代理或僵尸IP达到一定的数量时,同样也会造成服务器资源耗尽,因此通过客户端IP对服务器请求的频率阈值来判断请求是否为CC攻击,往往会造成漏报。同时由于客户端访问服务端API的特点,在服务端会看到大量高并发的相似特征请求,如浏览器特征User-Agent一致、客户端操作系统一致、请求URL高度相似(同一URL,不同URL参数)等等,这与代理或僵尸网络对服务器发起的攻击请求极其相似,一般的Web防CC系统进行检测时,很难有效的检测出该类型CC攻击,可能将正常的请求判定为CC攻击,产生误报,影响服务端API的正常使用。
相关术语
API(Application Programming Interface):应用程序接口,是软件系统不同组成部分衔接的接口;
CC(Challenge Collapsar,挑战黑洞)攻击:是DDoS攻击的一种类型,利用不断对服务器发送大量合法连接请求使形成拒绝服务;
MD5(MD5Message-Digest Algorithm):是一种广泛使用的密码散列函数,可以产生出128位(16字节)的散列值,用于确保信息传输完整一致;
SHA-1(Secure Hash Algorithm,安全散列法1):是一种密码散列函数,可以生成一个被称为消息摘要的160位(20字节)散列值,散列值通常的呈现形式位40个十六进制数。
发明内容
本发明所要解决的技术问题是提供一种基于密钥签名的API防CC方法,根据客户端访问服务器请求的特征,客户端使用系统生成的密钥,利用签名算法对原始请求进行签名,系统收到请求后,用密钥对签名后的请求进行校验,放行校验通过的请求,拦截校验失败的请求,能够更加准确有效地检测出CC攻击。
为解决上述技术问题,本发明采用的技术方案是:
一种基于密钥签名的API防CC方法,包括以下步骤:
步骤1:系统为用户增加API防CC功能配置入口;
步骤2:开启API防CC功能,系统自动为当前用户生成密钥AUTH_TOKEN;
步骤3:用户进入API防CC规则设置页面,查看系统为用户生成的密钥AUTH_TOKEN,设置API防CC规则;
步骤4:客户端访问API时,将签名算法ALGO、步骤2中生成的密钥AUTH_TOKEN、请求过期时间EXP_TIME、随机字符串NONCE、请求地址URL按照ASCII顺序,用‘|’拼接的到字符串PARAMS_A;
步骤5:客户端按照签名算法ALGO对步骤4中得到的字符串PARAMS_A进行签名,得到签名字符串SIGNATURE_A;
步骤6:客户端使用‘|’将ALGO、EXP_TIME、NONCE、SIGNATURE_A按照ASCII顺序拼接得到字符串API_AUTH;
步骤7:客户端设置HTTP请求自定义头X-API_AUTH值为步骤6中的API_AUTH,发送请求;
步骤8:系统接收到请求时,判断请求的URL是否匹配步骤3中设置的API防CC规则,如果不匹配,允许请求访问Web服务器,Web服务器正常响应请求;如果匹配,进行步骤9;
步骤9:系统解析HTTP头信息,从自定义头X-API_AUTH中提取出信息,包括ALGO、EXP_TIME、NONCE、URL、SIGNATURE_A,从网站配置中提取出步骤2中生成的密钥AUTH_TOKEN;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都知道创宇信息技术有限公司,未经成都知道创宇信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711097536.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种固件签名装置、系统及方法
- 下一篇:一种签名方法、签名装置及终端设备