基于Pikachu平台的暴力破解的绕过和防范

在暴力破解中,最常见的防范方法就是验证码。

验证码的认证流程:

客户端request登录页面,后台生成验证码:
1.后台使用算法生成图片,并将图片response给客户端
2.同时将算法生成的值全局赋值存到session中

然后校验验证码:
1.客户端将认证信息和验证码一同提交
2.后台对提交的验证码与session里面的进行比较

如果客户端刷新页面,再次生成新的验证码
验证码算法中一般包含随机函数,所以每次刷新都会改变

不安全的验证码-on client常见问题

使用前端js实现验证码(纸老虎)
将验证码在cookie中泄漏,容易被获取
将验证码在前端源代码中泄漏,容易被获取

不安全的验证码-onserver常见问题

验证码在后台不过期。导致可以长期被使用
验证码校验不合格,逻辑出现问题
验证码涉及的太过简单和有规律,容易被猜解

防范措施

设计安全的验证码(安全的流程+复杂而又可用的图形)
对认证错误的提交进行计数并给出限制,比如连续5次密码错误,锁定2小时
必要的情况下,使用双因素认证。

token防爆破吗

一般情况下,将token以type=hidden的形式输出在表单中
在提交认证的时候一起提交,并在后台对其进行校验
但是,由于token值输出在了前端源码中,容易被获取,因此也就失去了防暴力破解的意义,一般token在防止CSRF上会有比较好的功效

发布了13 篇原创文章 · 获赞 1 · 访问量 256

猜你喜欢

转载自blog.csdn.net/qq_43499389/article/details/104970245