可以参考前一篇博客:http://hw1287789687.iteye.com/blog/2215776
我们先考虑一种机器自动攻击的情形:
比如攻击者通过程序,每10秒钟访问登录接口,并且用户名和密码都一样,当然密码是错误的.
如何防止这种攻击呢?
方案一:
(1)登录失败,则开始计数;
(2)判断失败次数是否超过10(次数可以定制),若超过,则直接返回response code为401(无权访问)
,若没有超过,继续访问数据库进行登录验证,登录失败则失败次数加1
(3)登录失败,判断与之前登录失败的密码是否一致,若一致,则失败次数加1;若不一致,则执行(1);
那么有个问题:
判断失败次数是否超过10,则直接返回response code为401,万一修改了密码,原错误密码是正确的怎么办呢?
判断超过10次的基础上,再判断与上次登录相距多久,如果超过1个小时,则仍然查数据库.
(4)若登录成功,则失败次数减1
注意:每个错误密码都对应自身失败的次数,而不是所有错误登录一起计算的.
前10次,还是会查询数据库.后面的登录(相同的错误密码)就不会查询数据库了,什么也不做直接设置response 的status为401.
为什么要处理?有人说就让它登录呗,反正密码是错误的,又登录不进去!
但是这些无效的请求依然会访问数据库,无谓地增加系统负担,所以必须要考虑应对方案.
方案二:
相同的错误密码,连续登录3次之后,后面的登录,直接匹配用户名和密码是否一致,若一致,则直接返回登录失败信息,不一致才真正访问数据库.
(a)登录失败,判断是否有该错误密码的记录,若有,则失败次数+1;若没有则增加记录,错误次数设置为1;
(b)判断失败次数是否超过3,超过则直接返回登录失败,不查询数据库;否则,查询数据库;
(c)若修改密码,则清除该用户所有的错误密码记录.
可以参考前一篇博客:http://hw1287789687.iteye.com/blog/2215776
相关推荐
通常情况下的api接口防护有如下几种: 使用HTTPS防止抓包,使用https至少会给破解者在抓包的时候提高一些难度 接口参数的加解密,通过md5加密数据+时间戳+随机字符串(salt),然后将MD5加密的数据和时间戳、原数据均...
web安全措施.你写的WEB API接口如何预防黑客攻击 现在WEB开发都是动静分离 后端编写API接口 那如何防止黑客攻击你的HTTP API接口呢
主要给大家介绍了关于Spring Boot接口设计防篡改、防重放攻击的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Spring Boot具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
2,写的接口总是被攻击的可以借鉴此加密方式。 【2】为啥要写这个 1,近期我们团队做的App接口被破解,老是被频繁调用,服务器致瘫; 2,想了办法加密了,如果遇到问题想调试,没办法通过日志里的请求串来直接调用;...
SpringBoot系列——防重放与操作幂等.doc
AntiXss攻击防止的C#代码文件,AntiXss攻击防止的C#代码文件
1.目标 防伪装攻击:第三方恶意调用接口。 防篡改攻击:请求在传输过程被修改。 防重放攻击:请求被截获后,被多次重放。 防数据信息泄漏:被截获到系统数据,例如账号、密码、交易信息等。
SpringBoot +esapi 实现防止xss攻击 实战代码,真实有效
高并发场景下如何保证接口幂等性?综合比较了防重令牌(token)、随机字符串(noncestr)、幂等表、防重表、数据库唯一索引、乐观锁等各种方案的原理、优缺点等,并结合开放平台谈谈使用的感受 B站视频地址:...
华为9306交换机ICMP包攻击导致直连丢包但业务不受影响故障处理.包括ICMP包攻击时交换机状态,处理该故障的方法等。
可以防御重放攻击,校验参数被修改(数字签名) ,校验请求超时 :paw_prints: | :new_moon_face: :China: 什么是宙斯盾? Aegis追求简单的框架,所以使用最新的技术,拦截每一个http请求,然后检查参数,你可以根据...
主要介绍了详解Java分布式IP限流和防止恶意IP攻击方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
主要介绍了PHP MYSQL开发中,对于注入攻击需要预防的7个要点,大家需要注意了
第4 卷: 攻击检测和防御机制介绍 ScreenOS 中可用的 Juniper Networks 安全选 项。这些选项很多都是可在安全区段级启用的 SCREEN 选项。SCREEN 选项适用于 通过绑定到区段 ( 已为其启用了这些选项) 上的任一接口而...
1、在游戏编程中,需要对怪物的属性做统一的约定,例如所有的怪物都有生命、魔法、攻击、命中、防御、闪避等属性,所有的怪物都能攻击、站立、防御等,这些统一的约定可以做成接口,然后分别定义人类、兽类等来实现...
ARP,全称Address Resolution Protocol,中文名为地址解析协议,它工作在数据链路层,在本层和硬件接口联系,同时对上层提供服务。 IP数据包常通过以太网发送,以太网设备并不识别32位IP地址,它们是以48位以太网...
一些别有用心的人可以通过抓包或者其他方式即可获得到后台接口信息,如果不做权限校验,他们就可以随意调用后台接口,进行数据的篡改和服务器的攻击,会对一个企业造成很严重的影响。 因此,为了防止恶意调用,后台...
一所云数据中心部署在公安部一所机房,收集汇聚海量的用户攻击防护日志并进行挖掘、分析,云中心搭建单用户管理监测系统、级联用户管理监测系统、实时监测与展示系统和对外数据服务接口以及木马样本库、暗盗链样本库...
ip安全策略 开游戏所需要的!ip安全策略 开游戏所需要的!ip安全策略 开游戏所需要的!ip安全策略 开游戏所需要的!ip安全策略 开游戏所需要的!ip安全策略 开游戏所需要的!
16-配置ARP防攻击.exe 17-配置攻击防范-黑名单.exe 18-配置攻击防范-流量异常检测.exe 19-配置攻击防范-报文异常检测.exe 20-配置带宽管理策略.exe 21-配置IPS策略.exe 22-配置防病毒策略.exe 23-配置流日志策略.exe...