业务逻辑漏洞—验证码绕过

news/2025/1/15 21:48:40/

验证码绕过第一关:

前端验证码绕过:

打开pikachu靶场:

输入错误的验证码时会出现弹窗(alert)此时我们猜测这可能存在着前端限制

如果验证码有前端限制(只在前端有作用),不影响后端的操作

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

猜测验证码是前端还是后端:

  1. 进行断网测试:如果断开网络验证码没有则就是前端存在验证码,否则就是后端存在。

  2. 抓包测试:挂上代理随便输入发现提示验证码输入错误但是没有包显示没有抓到包可以猜测属于前端验证。

验证码复用:
在这里插入图片描述

将验证码删掉:

发现显示还是验证码正确的回显

在这里插入图片描述在这里插入图片描述

说明登录的后端没有处理验证码的程序

验证码绕过了解吗?

了解,验证码绕过分为前端验证码绕过和后端验证码绕过,其前端验证码绕过,根据逻辑捉一个包(老老实实按照流程来)由于他是前端的验证,直接在抓到的包里直接修改,这叫一个复用的问题进而进行一个爆破。

验证码绕过第二关:

后端验证码绕过:

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

此时前端的验证码不要动继续在bp中修改数据,验证码成功绕过。

画图显示:

在这里插入图片描述

在此时都没有触发前端验证码发生改变的前提条件。

由于服务端在验证验证码的时候是根据前端验证码实现的只要攻击者没有触发前端验证码导致更新验证码时

他就可以实现验证码无限复用。

采用验证码爆破方式:

四个数字的验证码,验证码有效期为五分钟

通过忘记密码,会给手机发送验证码(证明身份)

服务器生成四个验证码里大概有一万种

使用字典爆破验证码差不多也就半分钟就爆破成功。


http://www.ppmy.cn/news/1329397.html

相关文章

为什么两个向量的内积等于模长乘夹角?

为什么两个向量的内积等于模长乘夹角? 已知两个向量 a = [ a 1 , a 2 ] a=[a_1,a_2] a=[a1​,a2​]和 b = [ b 1 , b 2 ] b=[b_1,b_2] b=[b1​,b2​],他们的内积为 a b = a 1 b 1 + a 2 b 2 ab=a_1b_1+a_2b_2 ab=a1​b1​+a2​b2​,看书上的定义该内积的值是一个标量,并且等…

SpringMVC获取参数与页面跳转

获取参数 第一种 直接当成方法的参数,需要与前台的name一致 相当于Request.getAttribute("username") Controller 第二种 使用对象接收 页面的name也要和对象的字段一致 创建一个对应的实体类 Controller 将参数更换为User对象就行 SpringMVC获取到…

Python如何在0和1之间取随机数

在Python中,你可以使用random模块来生成0和1之间的随机数。下面是一个简单的例子: python复制代码 import random # 生成一个0和1之间的随机浮点数 random_number random.random() print(random_number) random.random()函数返回一个0.0到1.0之间的随…

【极数系列】Flink环境搭建(02)

【极数系列】Flink环境搭建(02) 引言 1.linux 直接在linux上使用jdk11flink1.18.0版本部署 2.docker 使用容器部署比较方便,一键启动停止,方便参数调整 3.windows 搭建Flink 1.18.0版本需要使用Cygwin或wsl工具模拟unix环境…

优化用户体验测试应用领域:提升产品质量与用户满意度

在当今数字化时代,用户体验测试应用已经成为确保产品质量、提升用户满意度的关键工具。随着技术的不断发展,用户的期望也在不断演变,因此,为了保持竞争力,企业必须将用户体验置于产品开发的核心位置。本文将探讨用户体…

初识人工智能,一文读懂机器学习之逻辑回归知识文集(1)

🏆作者简介,普修罗双战士,一直追求不断学习和成长,在技术的道路上持续探索和实践。 🏆多年互联网行业从业经验,历任核心研发工程师,项目技术负责人。 🎉欢迎 👍点赞✍评论…

Android开发之部署opencv4

1 新建一个空项目 不再多说 2从官网下载opencv https://opencv.org/releases/ 下载opencv-4.9.0-android-sdk 3 导入模块 点击file->new->Import Module选择解压之后的opencv-android-sdk文件夹中的SDk文件夹,并将:sdk修改为:opencv(我的已安…