登录接口没做失败次数限制,被人拿字典爆库,一小时试了三万次把服务器打挂
18年做美食站的用户登录接口,图省事只做了账号密码校验,根本没加登录失败次数限制,上线没一周,后台突然收到大量登录请求,我登服务器看日志,发现有个外地IP,拿着字典不停试不同的账号密码,一小时之内尝试了三万次登录,服务器CPU直接被打满,网站前台都打开慢,差点直接宕机。 我当时赶紧在登录接口里加了限制:同一个IP,连续输错5次密码,就锁定15分钟不能再尝试,又给后台登录加了图形验证码,加完之后再看日志,那些暴力破解的请求,输错5次就被锁,再也没法批量试密码,服务器CPU一下就降下来了,网站也恢复正常。之前总觉得登录接口只要校验密码对就行,根本不知道暴力破解这种攻击,你不加失败次数限制,对方拿字典24小时试你,迟早能碰出来一个弱密码,还能把你服务器打挂。 从那之后我写任何登录接口,第一步就是加失败次数限制和验证码,再也不做裸奔的登录接口。很多新手写登录功能跟我当初一样,只校验账号密码,不加任何暴力破解限制,结果被人拿字典爆库,把服务器打挂,甚至破解出管理员密码,直接接管你的站。 真的,写登录接口一定要加失败次数限制和验证码,别让对方拿着字典24小时试你的密码,不然迟早出大事。
本站源码来源于网络收集修改或者交换,甚至可能并非原创,如遇未经考证信息需持审慎态度。若有疑问,可联系本站处理。
0