大家在做登录功能时,一般怎么做防护?
作者:卡卷网发布时间:2025-01-09 18:46浏览数量:85次评论数量:0次
有几种常见手段,实情况是几种手段复合着用:
1.最简单最暴力,错误或者频率门限,如固定时间内如1分钟,同IP错误尝试5次,直接封IP。用户忘了密码容易误伤。
2.tarpit,直接翻译是焦油坑,其实就是加一个登录延迟,如不管你输入是否正确,验证API返回时间都是固定的2.5秒,增加尝试的时间成本。
3.ProofofWork,工作量证明,一般是要求client携带一个cookie,cookie内容非常容易验证(不怎么消耗cpu),但是难以生成,这种算法有点类似加密货币里面广泛使用的算法。也是用来消耗登陆者的CPU资源的,增加尝试成本。
4.captcha,人机验证,不见得上来就弹人机验证框,可以配合1,在某些门限触发的时候弹。啥时候都弹用户感受会较差。
5.2FA,无论是什么类型2FA都可以,短信,邮件,APP,硬件token,都可以。这种安全性是最高的,但是使用感受就是较麻烦,经常需要登陆的用户不会喜欢这种。
6.triallandingpage或者sensitiveresocesauthorization,登录以后,即使一次性登录成功,也不能直接访问受保护的敏感资源,访问相关敏感资源或者正功能的时候需要手段验证,一般结合2FA。这种对字典攻击防范效果较好。
7.Userehiorysis,用户行为分析,如一个用户总在北京登录,突然跑到芬兰去登录了,然后1分钟以后又回到北京了,这时候可能需要对一下VPN的IP库,如果用户不是用了VPN,那就要上点强度了,如2FA或者captcha。
实际当中需要灵活应用,选择不同的条件做不同的动作,往往和结合黑白IP名单等等这类东西,甚至一些pattern甚至AI的手段去识别客户端等等。
总体上的目标就是做到正常用户登录起来不算麻烦,但是机器人或者hacker登录起来很麻烦。
免责声明:本文由卡卷网编辑并发布,但不代表本站的观点和立场,只提供分享给大家。
- 上一篇:JVM调优工具有哪些?
- 下一篇:在网吧用stalediffusion可以吗?
相关推荐

你 发表评论:
欢迎