网页手机号抓取程序(记录一个验证码暴力破解的案例,安全问题不容忽视呀。。)

优采云 发布时间: 2021-11-04 02:09

  网页手机号抓取程序(记录一个验证码暴力破解的案例,安全问题不容忽视呀。。)

  记录一个暴力破解验证码的案例。安全问题不容忽视。

  某公司收到用户反馈,该应用存在安全漏洞。无需手机即可通过技术手段获取验证码,直接修改密码成功。如果用户密码被他人修改成功,直接关系到资产丢失的问题,这无疑是一个非常严重的漏洞。

  他通过与用户的沟通,使用暴力打数据库的手段匹配正确的验证码。由于后端服务没有次数限制,可以多次试错,通过程序发送请求,轻松获取正确的验证码。从而修改用户密码。

  回过头来看看正常的密码重置过程

  漏洞演练

  首先去注册一个账号,如果手机号已经存在,会提示当前用户已经注册,通过随机生成手机号,测试当前应用是否已经注册,如果已经注册,进入忘记密码页面,使用手机号验证码方式找回账号。

  忘记密码页面,在上面输入手机号,点击发送验证码,后台会向手机号发送验证码,这个验证码现在只有两个人知道:

  当然,直接调用账号所有者验证代码是不可能的,所以先从后端服务说起。

  只需输入四位验证码,点击重置密码,就会发送验证码的界面。该请求伴随着客户端输入的验证码。请求被捕获,人为构造验证码与数据库发生冲突。直到成功为止。

  由于验证码是四位数,范围锁定在0000~9999。继续请求并使用该号码,直到响应中返回成功状态和令牌字符串。

  

  将token字符串、新密码、手机号码作为参数传递给修改密码的接口。请求成功后,密码修改成功。

  问题分析

  1、为什么接口验证码参数没有加密?

  这个验证码参数其实是经过加密的,但是因为在很老的历史版本中,采用明文传输,为了兼容,在较低版本的请求下,后端通过明文传输正常接收和处理。

  2、验证码验证接口,没有次数限制?

  这是根本原因。用户帐户是一项非常重要和基础的业务。后台修改密码的次数和风险控制界面没有限制。试错N次后直接取消验证码验证,直接视为失败。.

  这个问题属于安全范畴,日常工作中不会注意。这也反映了测试学员在日常工作中需要通过各种复杂的业务问题提高对风险的预判能力,丰富项目测试经验。这才是真正的*敏*感*词*。

  我觉得上面是一个很好的案例,可以分享给大家,共同学习。

  另外,安利是一款简单易用的界面测试工具——burp套件。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线