首页 > 其他分享 >手机验证码漏洞挖掘(任意手机号注册,任意用户密码重置等等)

手机验证码漏洞挖掘(任意手机号注册,任意用户密码重置等等)

时间:2024-11-16 11:45:56浏览次数:3  
标签:手机号 任意 重置 验证码 发送 漏洞 bp 数据包

一.短信验证码爆破漏洞挖掘

1.漏洞原理

服务端未对验证时间,次数做出限制,存在爆破的可能性。简单的系统可以直接爆破,但做过一些防护的系统还得进行一些绕过进行爆破。

对与4位验证码:0000~9999的10000次,五分钟之内。

对于6位验证码:1000000位,五分钟之内跑不完。


2.爆破方法(没有次数限制的)

(1)4位

我们输入电话号码发送验证码后随便输入,用bp打开拦截进行抓包,发送到intruder模块并在验证码位置添加payload,payload类型选择数值,从0000到9999间隔为1,最小及最大整数位为4。b01ff658642e4383bc78d38c2cade9c6.png

最后开始攻击,有10000种可能,大约1分钟就能跑完。

(2)6位

由于六位数的验证码,可能性太大,一台bp十分钟之内跑不完,我们可以多开bp或者多开虚拟机分区域同时进行破解。*直接把数据包复制其它bp,在范围里做分区。

小技巧(我们用自己的手机号输入然后发送验证码,假如验证码786453,在用bp跑的时候把数字范围设为78600和78700,直接把破解结果拿去忽悠)


二.短信验证码回显漏洞挖掘

1.漏洞原理

验证码回显是指验证码在发送的时候会存在数据包中,通过观察回显的数据包中的数据找到验证码。87b3cc6c0ac24bb6b7315db2812fd553.jpeg

我们在浏览器上发送手机号给服务器,服务器接收到后发送验证码给手机这是正常验证码的流程。

c3d3774a35e9499ca6fefca9ec4305b6.jpeg

我们在浏览器上发送手机号给服务器,服务器接收到后不仅把验证码发送给手机还发送给了浏览器,我们在自己的电脑上就可以利用响应查看验证码信息。

2.方法

我们随便输入手机号及密码,点击获取验证码,开启拦截,把这个数据包拦截下来。把数据包发送到重放模块点击发送,查看响应包里的数据,如果有漏洞,就会有code:验证码(有可能直接显示有可能需要解密)。


三.验证码与手机未绑定认证关系(多用与注册及找回等等)

1.漏洞原理

手机验证码的短信一般是只能使用一次,但是如果手机验证码和手机号没有绑定认证关系,就会出现【A手机收到的验证码B手机也可以使用】。

也就是我们用A手机去获取验证码之后把电话号码改为B手机的电话号码就可以注册B用户的账户。bc648de6e3d0499ab001fa17772deaf2.png

2.方法

不用bp直接在浏览器界面操作(参考上图以及文字说明即可)。


四.验证码转发漏洞

1.漏洞原理

有些开发人员在接收手机号的时候采用的是数组接收,或者是遍历手机号,没有对手机号进行校验,我们就可以同时发送验证码到两个手机,从而达到绕过。ba1362d185c6432d8453107340a1a502.jpeg

2.方法

我们打开拦截把数据包发送到repeater,然后在手机号那加个逗号或者空格输入另一个手机号发送查看响应是否存在漏洞,也可以复制参数。

如下

(1)phone=188888888,19999999

(2)phone=12314532&phone=124142352

(3)phone=123141341

         phone=214124241

就可以用自己手机号收到的验证码用来注册别人的手机号


五.手机短信轰炸漏洞

 

 

 

 

标签:手机号,任意,重置,验证码,发送,漏洞,bp,数据包
From: https://blog.csdn.net/2401_87837110/article/details/143808696

相关文章

  • 使用 Tcl 实现滑动验证码识别
    滑动验证码是一种常见的验证方式,用于验证用户操作的真实性。以下是使用Tcl实现滑动验证码识别的简单示例。功能概述程序的主要功能包括:读取滑动验证码的图片。分析滑块与缺口位置。模拟滑块移动,完成验证。代码实现tcl引入必要的库packagerequireImgpackagerequire......
  • 使用 Chapel 实现滑动验证码识别
    滑动验证码识别是一种基于图像处理的技术,用于识别滑块的缺口位置。本篇文章将演示如何使用Chapel语言实现一个简单的滑动验证码识别程序。Chapel简介Chapel是一种并行编程语言,适合数据密集型计算任务。我们可以利用其强大的数组和数据处理能力完成图像分析。环境准备安装Ch......
  • 使用 Neko 编程语言实现简单的滑动验证码识别
    滑动验证码是一种常见的安全验证方式,要求用户将图块拖动到正确位置。本文将使用Neko编程语言实现一个简单的滑动验证码识别程序,通过基本的图像处理技术自动识别图块匹配位置。实现步骤加载图片:使用Neko的图像处理库加载滑块和背景图片。图像预处理:转换为灰度图并进行边缘......
  • 【Pikachu】任意文件上传实战
    将过去和羁绊全部丢弃,不要吝惜那为了梦想流下的泪水。1.不安全的文件上传漏洞概述不安全的文件上传漏洞概述文件上传功能在web应用系统很常见,比如很多网站注册的时候需要上传头像、上传附件等等。当用户点击上传按钮后,后台会对上传的文件进行判断比如是否是指定的类型、......
  • 使用 Wren 语言处理登录图片验证码的自动化方法
    在自动化测试中,处理验证码图像通常是一个挑战,尤其是在登录过程中。验证码是每次都会发生变化的图片,自动化工具需要能够读取这些图像并通过图像识别技术来解码图像内容。本文将介绍如何使用Wren语言来处理登录中的图片验证码。Wren是一种轻量级、高效的编程语言,适合嵌入式系统......
  • 使用 Nim 语言处理登录图片验证码的自动化方法
    在自动化测试中,处理验证码通常是一个难题,尤其是在登录流程中。验证码图像每次刷新时都会发生变化,因此需要一种方式来自动化识别这些验证码。常见的处理方法有两种:获取验证码图片URL并下载:抓取验证码的URL地址来直接下载图片。然而,由于验证码每次都会刷新,直接访问URL获取的......
  • 2024-11-13:求出所有子序列的能量和。用go语言,给定一个整数数组nums和一个正整数k, 定义
    2024-11-13:求出所有子序列的能量和。用go语言,给定一个整数数组nums和一个正整数k,定义一个子序列的能量为子序列中任意两个元素之间的差值绝对值的最小值。找出nums中长度为k的所有子序列的能量和,对结果取模10^9+7后返回。输入:nums=[1,2,3,4],k=3。输出:4。解释:......
  • 使用 Turing 破解滑块验证码
    滑块验证码是互联网中常见的一种防机器人机制,它要求用户通过拖动滑块来将其与背景图像对齐,从而验证用户的身份。本文将演示如何使用Turing编程语言模拟破解滑块验证码。滑块验证码原理滑块验证码通常由两部分组成:背景图像:展示了一个不完整的图像。滑块图像:包含了缺失的部......
  • 2024-11-13:求出所有子序列的能量和。用go语言,给定一个整数数组nums和一个正整数k, 定义
    2024-11-13:求出所有子序列的能量和。用go语言,给定一个整数数组nums和一个正整数k,定义一个子序列的能量为子序列中任意两个元素之间的差值绝对值的最小值。找出nums中长度为k的所有子序列的能量和,对结果取模10^9+7后返回。输入:nums=[1,2,3,4],k=3。输出:4。解释:nums......
  • 如何重置已锁定的手机现在解决了
    “我的vivo手机已锁定,现在无法解锁。我可以在没有密码的情况下重置它吗?但是重置它的正确步骤是什么?”在可访问的vivo手机上执行恢复出厂设置很简单,但如果您的vivo手机被锁定怎么办?您知道如何重置已锁定的Samsun手机吗?如您所知,如果您忘记了密码,则无法直接解锁或访问。那么,重......