为什么会有人要刷接口?
1、牟利
黄牛在 12306 网上抢票再倒卖。
2、恶意攻击竞争对手
如短信接口被请求一次,会触发几分钱的运营商费用,当量级大了也很可观。
3、压测
用 apache bench 做压力测试。
4、当程序员无聊的时候
什么是刷接口的"刷"字?
1、次数
多
2、频率
频繁,可能 1 秒上千次
3、用户身份难以识别
可能会在刷的过程中随时换浏览器或者 ip
判断接口是否是恶意?
根据用户粒度,如果该用户符合上面提到的“刷”的概念,就是恶意的。
用户粒度如何划分?
1、当前网页
优点:无
缺点:没有任何意义,一刷新页面用户的身份就变了
2、session
优点:伪造成本一般(可以理解成一个浏览器对应了一个用户)
缺点:当用户手动清除 cookie 的时候即失效
3、ip
优点:伪造成本高
缺点:要考虑一个公司、一个小区的人一般会共享一个 ip,所以适当的要放宽对单一 ip 的请求限制
ip 信息是存在请求头里的,而 https 对请求本身做了加密,可以防止 ip 信息被伪造或篡改。所以推荐服务器采用 https 传输。
当知道接口是恶意请求时,我们该怎么做?
一、直接拒绝访问
优点:简单粗暴
缺点:简单粗暴
二、返回“操作频繁”的错误提示
优点:提示友好
缺点:会把确实是操作比较频繁的真实

本文探讨了接口为何会被刷以及各种刷接口的目的,包括牟利、恶意攻击和压力测试等。同时,文章分析了判断接口恶意请求的标准和用户粒度的划分,并提出应对恶意请求的策略,如直接拒绝、返回错误提示、验证码以及限制IP。最后强调,接口安全是持续的对抗过程,需要不断更新策略。
最低0.47元/天 解锁文章
763

被折叠的 条评论
为什么被折叠?



