3.暴力破解的绕过和防范(验证码&token)


暴力破解的绕过和防范(验证码&token)

  • 暴力破解之不安全的验证码分析
    ---on client
    ---on server

  • token可以防暴力破解吗?

  • 暴力破解常见的防范措施

聊一聊“验证码”

我们一般用验证码来做什么?
登陆暴力破解
防止机器恶意注册

搞清楚验证码的认证流程

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

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

客户端重新刷新页面,再次生成新的验证码:
1.验证码算法中一般包含随机函数,所以每次刷新都会改变
2.验证码会过期

验证码可以防暴力破解,但你怎么证明你的验证码安全呢?

  • 不安全的验证码-on client-绕过实验演示
  • 代码演示

测试一下登陆和抓包

查看页面源代码,看看验证码是不是前端做的,发现所有的验证码逻辑在JavaScript里面实现的

一旦JavaScript被调用,它就会生成验证码操作,看看它在哪里被调用的

点击一下,它就会调用JavaScript的函数去生成新的验证码

在前端生成验证码并核对验证码,在安全性上面是非常不靠谱的。
我们在看看它后端到底有没有验证,请求包发生给Repeater模块,数据包重放的

或者不输入验证码,看看后端有没有验证机制

两次测试发现,后台是没有验证码机制的

后面的步骤,直接对账号,密码两个变量进行爆破,验证码就不管了。

所有的漏洞源码都在这里

暴力破解的在这里

浏览后台源代码发现,它只对传过来的账户密码做判断,并没有验证码的

  • 不安全的验证码-on client常见问题
    • 使用前端js实现验证码(纸老虎)
    • 将验证码在cookie中泄露,容易被获取
    • 将验证码在前端源代码中泄露,容易被获取(已图片的方式,而不是字符串,验证码提前泄露了)


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM