首页 网络安全 安全学院 查看内容

逻辑漏洞,三种类型任意用户密码重置

2017-3-6 10:26 |来自: 互联网 3725 4

摘要: 三种类型的任意用户密码重置,基本覆盖了百分之八十的密码找回漏洞类型,自己记录了一下,来分享给大家。漏洞类型1(或者可以说是这种类型包含了两种类型)(四位数验证码未做输入次数限制)漏洞的依靠多种因素产生 ...

三种类型的任意用户密码重置,基本覆盖了百分之八十的密码找回漏洞类型,自己记录了一下,来分享给大家。

漏洞类型1(或者可以说是这种类型包含了两种类型)

(四位数验证码未做输入次数限制)

漏洞的依靠多种因素产生下面是产生因素:

1.找回密码处泄露了用户手机号

2.手机验证码为4位数未对验证码输入次数限制造成可被爆破可以看到在源码处能够查询到用户的手机号码,程序员在设计之初未做到加密

输入用户账户就能看到绑定的手机号修复建议:

这里的隐藏就变的毫无意义,验证码调整为6位数设置每小时或者每天输入次数

漏洞类型2可以看到这是一个常规的密码找回功能

输入了一个测试账户然后输入手机验证码1234,当然这个不可能是发送过来的验证码。

然后抓取返回状态包进行欺骗浏览器验证成功

这是一个正确的返回包,为什说正确呢?因为1234本来就不是一个正确的验证码所以返回给了我们一个error,大家可以看到其中未带cookies,这种的返回包很大程度上存在这种漏洞,包括权7 8

我们要先输入正确的验证码得到正确的返回包ok,true就是一个返回值,服务器返回给我们本地浏览器的,本地浏览器判断该返回值是error还是true,如果error显示错误,如果true显示正确并进入下一步

我们替换掉那个error为true从而到了第三步骤,也就是密码重置确认界面,在这个界面大家要注意到一个情况

如果输入密码后只带了密码进行传输的post数据包,而没有再次验证 验证码,那就能修改成功。

如果带了,则反之。

漏洞类型3可以看到,这是一个密码确认界面,也就是上面类型2的最后一个步骤,在这个步骤出错的几率很高

查看源码输入你更改的 用户名。从小红色圈中可以看到value=“admin”

大家记住这种的就代表操作的参数是可控的,如果用户名为黑色那就不可操控,如果用户值为红色那就可操控。(我这样说能懂?)

可操控就代表可以在这一步修改任意用户密码。只需要把红色的值admin替换为你要改的用户名。

当然有一种情况不能更改,那就是在你确认后他会再次像服务器请求判断该用户与验证码是否是一起的。下面简单意思说一下

比如验证码为1

用户名为2

1=2 对应关系

第三步骤的漏洞就是

1=*

随机任何用户都可以使用这个验证码

而如果

1=2

在你确认密码后再次验证

1=2

那就利用不了

本文转自:诚殷网络论坛

本文出处: http://www.toutiao.com/a6393871666510741761/
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

返回顶部