验证码绕过漏洞

RainClv · · 1162 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

验证码绕过漏洞

什么是验证码绕过漏洞?

比如说,开发人员在考虑用户登录的时候,为了安全添加了验证码验证,但是在代码层面他只做了

if(存在验证码){

验证登录

}

存在验证码的时候,允许登录验证,但是没有考虑到验证码不存在的情况。

If(存在验证码){

}else{

不存在验证码

}

这样我们通过抓包删除验证码的参数,就可以绕过验证,这就是常出现的逻辑漏洞。

验证码绕过的方向:

1. 通过验证码的逻辑进行入手

2. 通过Python,Golang等程序自动识别

验证码绕过存在的情况:

1. 前端验证验证码并没有进行后端验证。直接抓包进行跑数据包,反正没有验证码的阻碍。

2. 验证码设置了,但是没有校验,乱输验证码也能验证成功。(估计老板没给开发发工资吧)

3.验证码可以重复使用,比如现在的验证码是1111,虽然登陆失败后但是验证码不会改变,这样的通常可以通过暴力破解进行猜解用户名密码。

4. 验证码空值绕过,比如我们抓了一个包,发现登陆参数是user=admin,pwd=123456,yzm=1122,当我们删除了验证码的参数yam,然后继续发包,就会绕过验证码的验证。

5. 验证码可以被控制,比如说他的验证码包含在URL栏里面,是一个URl传参,我们可以手工设定Url值,那么验证码就可控制了

6. 验证码有规则,比如是时间戳后六位(rand函数进行随机数)

7. 万能验证码000000

8. 验证码有时候会被藏在cookie里面


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:RainClv

查看原文:验证码绕过漏洞

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1162 次点击  
加入收藏 微博
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传