CC攻击的传统防护
以上针对非APP请求,采用限速
、JS验证
、验证码人机挑战
为什么可以防护CC
攻击者:一般CC攻击不会调用浏览器,而是自己写程序/脚本实现。遇到WAF返回的JS或验证码就会失败、无法执行。来判断是机器人还是正常用户
如原本1个GET请求官网,开启5s盾、JS验证模式,浏览器解析后跳转到图形验证码,即1个GET变成了2个GET+1个POST(浏览器自动实现),而脚本请求得到的Response却是403
针对APP请求的CC防护
客户端APP(非H5应用),它不是浏览器是无法响应一些交互条件(框架里代码中写的函数或JSON调用,类似脚本),遭到CC攻击后难以通过”挑战-响应“的传统CC防御来处理(客户端不能执行JS)
防护建议:
- 设备指纹模型(指纹一致性、操作系统标识、秒拨IP识别、恶意行为识别)
- 行为分析模型(源IP+设备封禁、回源节点识别、多维限速、代理识别)
即OS指纹
、程序指纹
、设备指纹
接口防刷设计
接口有两种,一种是需要登录才可以调用的,另一种是不需要登录
对于需要登录才可以调用的,这种就可以根据用户来限制调用次数和频率。无登录态的接口由于不和user绑定,可采用其他维度来限制