目录

1.服务端验证逻辑缺陷

1.1 下面通过实例分析:

1.1.1 step1

1.1.2 step2

1.1.3 step3

1.1.4 step4

2.参数带用户名等多阶段验证

2.1 案例分析(一)

2.1.1 Step1

2.1.2 Step2

2.1.3 Step3

2.1.4 Step4

2.1.5 Step5

2.1.6 Step6

2.2 案例分析(二)

2.2.1 Step1

2.2.2 Step2

2.2.3 Step3

2.2.4 Step4

3.重置密码﹣重置后的默认密码


1.服务端验证逻辑缺陷

  • 登陆状态下修改自己的密码时,通过修改截获的数据包,将部分参数替换,从而偷龙换凤的将他人的密码修改为自己指定的密码。

1.1 下面通过实例分析:

1.1.1 step1

在登录状态下,点击修改密码。这个时候我们发现用户名变为不可修改的状态(当然我们可以通过修改前端的代码让这个用户名变为可以修改的状态)

不可修改就说明网站开发人员不想让用户修改用户名。这种情况常常出现随意修改其他用户密码的漏洞。

1.1.2 step2

我们用BP抓包,分析数据包,发现了用户名、新密码和旧密码

1.1.3 step3

将用户名改为其他用户

1.1.4 step4

发现wangkaijiang密码修改成功

2.参数带用户名等多阶段验证

密码找回流程一般包括获取短信验证码、校验短信验证码是否有效、设置新密码等三个步骤。

在第二步,校验短信验证码是否有效的结果应保存在服务端,某些网站未在服务端保存而是错误地将结果状态值下发客户端,后续又依靠前端 js 判断是否可以进入第三步。
        那么,更改应答包中的状态值,可重置其他用户的密码。

2.1 案例分析(一)

2.1.1 Step1

在密码找回页面http://wwW.XX.cn/yy/action/forgot用攻击者手机号139G8081024进入密码找回全流程, 获取短信验证码033128、输入图片验证码、输入短信验证码并提交:

2.1.2 Step2

服务器效验后,系统会有响应

2.1.3 Step3

简单分析发现,校验通过时服务端并未向客户端 set - cookie ,猜测服务端并未记录校验状态,是否进入设置新密 完全是由前端 js 基于应答状态决定的。
        那么,即便我没有短信验证码,通过将服务端下发给客户端的校验状态从“失败”改为“成功”也能成功重置找回账号密码。具体而言,

以信息搜集时找到的客服手机号139808X8888为例:输入手机号、获取短信验证码、输入图片验证码、输入错误的短信验证码123123后提交:

2.1.4 Step4

我们随便输入一个验证码,肯定会报错的

2.1.5 Step5

拦截响应,用之前抓取效验成功的数据包替换

2.1.6 Step6

顺利进入新密码设置

2.2 案例分析(二)

2.2.1 Step1

在密码找回页面http://wwW.XX.cn/yy/forgot用攻击者手机号13x080810x4进入密码找回全流程,获取短信验证码2118、输入短信验证码并提交:

2.2.2 Step2

服务端通过效验后,会有如下应答:

简单分析发现,校验通过时服务端并未向客户端 set - cookie ,将服务端下发给客户端的校验状态 code 改为“0000”,可以重置其他用户密码。

2.2.3 Step3

具体而言,以土豪手机号13888888888为例。输入手机号、获取短信验证码、输入错误的短信验证码1234后提交。由于短信验证码错误,服务端校验失败,应答如下:

2.2.4 Step4

我们把9999改为0000,发现通过校验

3.重置密码﹣重置后的默认密码

  • 在一些大型公司或者学校的的网站上,会有介绍用户注册的指导手册,里面会介绍用户的用户名和默认密码。
  • 这时可以先用默认密码尝试爆破默认密码,或者寻找重置密码的选项,重置密码后,用默认口令尝试登陆。
  • 因为可能会未授权修改网站用户的密码

逻辑漏洞——忘记密码、重置密码(案例分析、原理)相关推荐

  1. 服务器修改mysql登录密码忘了怎么办,云服务器mysql密码重置密码忘记了

    云服务器mysql密码重置密码忘记了 内容精选 换一换 弹性云服务器系统密码涉及到客户重要的私人信息,提醒您妥善保管密码.如果您忘记密码或密码过期,可以重置密码.如果弹性云服务器提前安装了密码重置插件 ...

  2. 逻辑回归模型算法研究与案例分析

    逻辑回归模型算法研究与案例分析 (白宁超 2018年9月6日15: 21:20) 导读:逻辑回归(Logistic regression)即逻辑模型,属于常见的一种分类算法.本文将从理论介绍开始,搞清 ...

  3. SRC逻辑漏洞-忘记密码/邮箱密码找回/链接token时间戳参数可逆

    链接token参数可逆 通过邮箱找回密码的同时,邮箱中将出现一个含有token的重置URL,该token即为重置凭证,从经验来看,开发人员习惯以时间戳,递增序号,关键字段作为因子,采用某种加密算法或编 ...

  4. 业务逻辑漏洞--注册-登录-改密码页面总结

    SRC漏洞挖掘过程中遇到登录框时,总是感觉自己测试不完全,东一榔头西一棒子,想起什么来测什么. 感觉这样不太行,显得不专业,于是乎总结一下,在以后的测试过程中可以作为笔记提示. 以下按照顺序测试: 注 ...

  5. mysql8 mac 忘记密码_mac下 MySql 8.0.15忘记密码重置密码

    Mysql最新版跟老版用法不一样了,重置密码的方法也改变了 1.忘记密码了就需要先免登录进入数据库 进入到mysql目录下: cd /usr/local/mysql/bin/ sudo su 终端出现 ...

  6. window安装mysql默认密码忘记_window10 安装Mysql 8.0.17以及忘记密码重置密码

    一.安装Mysql8.0.17 1:首先去官网下载安装包 下载地址:https://dev.mysql.com/downloads/mysql/ 2:将解压文件解压到你安装的目录:D:\mysql\m ...

  7. 超图iserver登录密码忘记,重置密码

    如果大家在用超图iserver发布服务的过程中将登录密码忘记,大家不要慌,iserver自带的有密码重置功能. 1.首先在登录过程中提示密码错误,具体内容如下图所示: 2.首先先停止iserver服务 ...

  8. Mysql—忘记密码重置密码报错

    忘记密码后重置密码报错:ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so i ...

  9. Win10 WSL忘记用户密码,重置密码

    win10中WSL登录是不用密码的,当需要使用用户权限但是忘记密码的时候,可以使用如下办法以root身份登录WSL并重置密码 1.以管理员身份打开 PowerShell ; 2.输入命令 wsl.ex ...

  10. 忘记windows10密码重置密码

    最近一年都在使用ubuntu干活,导致忘记了双系统的window10密码,怎么都无法进入系统.. 尝试了两种方法:一是进入带命令行的安全模式,重置失败.二是使用u盘启动盘进入winPE重置密码,成功. ...

最新文章

  1. ibatis主键自动生成
  2. 京东AI一把手周伯文被曝离职创业,曾任技术委员会主席,毕业于中科大少年班...
  3. php html中的判断,php怎么判断字符串中是否包含html标签?
  4. Spring Boot + MyBatis + MySQL读写分离
  5. vue方法传值到data_Vue 组件传值几种常用方法【总结】
  6. (1) 基于tomcat7和jdk1.7的websocket启动
  7. 【JS 逆向百例】Fiddler 插件 Hook 实战,某创帮登录逆向
  8. 今日讨论:你们测试组有公共用例库吗?
  9. mac电脑上的效率工具:alfred 4
  10. FTP客户端-C++
  11. 网站微信扫码登录回调不跳转问题
  12. Android OTA本地自动升级实现
  13. [ 应急响应 ]服务器(电脑)受到攻击该如何处理?(二)
  14. 鸿蒙系统吹了多少年了还没出,实话实说,在鸿蒙系统上,余承东吹了几次牛都没实现...
  15. 人工智能计算机战胜围棋冠军
  16. VPP-引流到自己节点的方法
  17. 股 市 运 作 原 理
  18. eplan好看的电缆图表_eplan中怎样才能把整个项目的端子图表或者电缆图表生成到我指定的位置...
  19. 2019 最全神经网络结构图画图工具介绍,没有之一!
  20. 精准发力补短板,产教融合发展论坛为“稳就业”赋能!

热门文章

  1. mysql子查询语句多列_MySQL:子查询
  2. Mac OS Android Studio 启动模拟器失败
  3. 浩辰3D软件入门教程:如何创建零件?
  4. 翻转单词顺序(python)
  5. nodejs入门视频教程 Node.js Web开发框架
  6. HTML+CSS案例京东静态界面
  7. Linux root用户及权限管理
  8. [渝粤教育] 九江职业技术学院 客户关系管理 参考 资料
  9. 山东理工大学ACM平台题答案关于C语言 1177 C语言实验——时间间隔
  10. 软件工程各阶段的评审内容