首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

手机验证码常见漏洞 总结 任意用户密码重置

0X00 前言 手机验证码常见漏洞   手机验证码在web应用中得到越来越多的应用,通常在用户登陆,用户注册,密码重置等业务模块用手机验证码进行身份验证。...案例一: 获取短信验证码后,随意输入验证码,直接输入两次密码,可成功更改用户密码,没有对短信验证码进行验证,可能导致CSRF等问题。...0189300.html https://woo.49.gs/static/bugs/wooyun-2013-026652.html 0X02 客户端验证绕过 客户端验证是不安全的,可能导致任意账号注册、登录及重置任意用户密码等一系列问题...输入手机号获取验证码,输入任意短信验证码,发起请求,抓包,短信验证码字段设置成payloads取值范围为000000-999999进行暴力破解,根据返回响应包长度判断是否爆破成功。...案例一:任意用户密码重置 1.使用自己手机号收取验证码 2.自己的验证码和对方的手机号填上,下一步城管设置新密码 image.png 参考链接: https://woo.49.gs/static/bugs

7.5K21

【实战篇】任意密码重置验证码爆破

算是一次对登陆窗口的突破,之前也写过一期,大家可以回顾一下: 【实战篇】记一次登陆窗口的漏洞挖掘 话不多说,直接开始今天的内容吧~ Part.1 任意密码重置 任意密码重置 首先通过信息收集,我们找到了一个管理后台...: 随意输入用户名/密码,点击“获取安全码”: 会发现只有在用户名/密码正确的情况下,才能顺利获取到安全码。...不知道密码,我们就先来看看“重置密码”功能是否有漏洞可以利用: 打开后界面如下: 可以看到这里只要求输入短信验证码,并不需要输入旧密码。...爆破了一小会儿后,成功重置用户密码: Part.2 爆破安全码登陆 爆破安全码登陆 这里我们已经成功重置了一个账号的密码~ 去到登陆窗口,发现还需要输入一次验证码: 同样的套路,抓包爆破验证码: 爆破成功...比如下面这个,要求输入手机验证码才能查看: 这里输入任意验证码并开启响应包拦截。 原本的状态码“false”修改为“success”即可绕过:

2.1K30
您找到你想要的搜索结果了吗?
是的
没有找到

JS文件泄露流程导致重置管理员密码

2.必须知道站点管理员的帐号才能重置 这个管理员帐号可以猜测,常规admin、system等 3. .翻JS文件-看重置密码流程,问题出现在步骤三处 这里逻辑处理有问题,首先重置密码成功需要三个步骤,...第一个步骤是输入重置的帐号, ?...第二个流程是安全验证-但在这里没有走第二步流程,执行第一个流程后可以直接跳第三个流程-这里逻辑处理有缺陷。 第三步流程: ?...这里大概的意思是,要修改密码必须先生成密码的MD5值,然后在结合正确的管理员帐号修改密码,这里我们可以直接构造参数进行重置。 这里分为两步: 1、 生成MD5值,提取参数如下: ? ?...(总的来说就是,安装JS里的流程来说,首先要执行忘记密码操作,然后输入要重置的管理员帐号-然后才能执行第三步找回密码构造参数的操作。第二步可以忽略不计。) ---------------------

1.5K30

WEB安全新玩法 重置密码之验证流程防绕过

iFlow 业务安全加固平台能够在不修改网站程序的情况下,强制流程的顺序执行。 ----- 某网站系统在用户重置密码时,需进行算术题人机识别验证,再进入邮箱验证码验证环节,通过后才能真正地重置密码。...由于程序设计不当,攻击者可以输入任意受害者账号,并正常完成算术题验证后,直接绕过邮箱验证码验证过程,进入到重置受害者密码的环节。我们接下来会看到如何利用 iFlow 来防范这类流程绕过。...用户进入第二步进行安全验证的页面,用户邮件中的验证码在页面中输入。 [图3] 邮件验证码正确,则用户可在第三步设置新密码重置密码。...[图7] 攻击者在浏览器中可以看到密码重置成功的提示。 [图8] 至此,攻击者在未访问受害者邮箱的情况下,顺利修改了受害者的密码。...并且,iFlow 创建一个会话 (SESSION) 的存储变量 step2_ok 为 true。 第二条规则 当浏览器请求第三步操作即确认重置密码时,iFlow 拦截此请求。

1K10

密码重置漏洞的十种方法

第三种 对于用户修改密码没有鉴权,例如密码重置有三步,正常流程测到第二步,在第三步的时候修改username可以修改指定username用户的密码(这种方法不一定是死的,存在可拓展性,比如在A接口泄露的所有用户的...第五种 用户唯一凭据泄露,不管是否重置成功,返回包都带有用户唯一凭据,可以通过这个返回包的用户凭据添加到请求包里面,完成密码重置。 第六种 验证码未设置过期,可以进行爆破。...第七种 验证码未绑定用户,只对验证码作了判断,但是没有判断验证码的用户,这个时候就可以替换用户进行密码重置。...第八种 修改接受验证码的手机,邮箱,用户名,手机,邮箱,没有作统一的验证,只判断了手机号和验证码是否对应,如果判断成功就进入密码重置。...方法,先按正常密码重置流程走一次,记录好重置密码页面的url,然后在重置密码的时候,直接访问重置页面的url,若能成功访问。则存在密码重置

1.2K20

任意用户密码重置

攻击者先使用自己的账号走一遍流程,获取每个步骤的URL,记录最后一步设置新密码的URL。重置受害者密码时,在获取验证码时直接输入记录的URL跳转到设置新密码的界面进行重置。 5....Cookie重置他人密码,测试方法:第一步,先使用攻击者身份进行密码重置,直到流程最后一步设置新密码时截取数据包。...测试方法:重置密码时先使用攻击者的手机/邮箱号进行验证,直到攻击者接收到验证码,在提交验证码时截取数据包,数据包中的手机/邮箱号替换为受害者的手机/邮箱号,即可绕过对验证码正确性的检测,接着再去修改受害者的密码完成密码重置...测试方法:先使用受害者的用户名获取验证码,提交时截取数据包,数据包中接收验证码的手机/邮箱号改为攻击者的手机/邮箱号,再使用攻击者手机接收到的验证码进行提交验证,进入下一流程。 8....0x06 测试过程 大多数密码重置流程重置密码过程一般是先验证注册的邮箱或者手机号或者用户名,获取重置密码的链接或者验证码,然后访问重置密码链接或者输入验证码,最后输入新密码

2.5K20

任意用户密码重置(三):用户混淆

密码找回页面 https://my.xxxx.com/pwd,用攻击者账号 yangyangwithgnu 走完密码找回全流程。 输入用户名和图片验证码后提交: ?...大致攻击思路:首先,用攻击者账号 yangyangwithgnu 进入密码找回流程,查收重置验证码、通过校验;然后,输入新密码后提交,拦截中断该请求,暂不发至服务端,这时,PHPSESSID 关联的是...用上述思路尝试 liuwei 密码重置为 PenTest1024,前端显示重置成功: ? 尝试用 liuwei/PenTest1024 登录: ? 成功进入系统: ?...密码找回页面 http://www.xxxx.cn/getpass.html,用攻击者账号走完密码找回全流程,涉及三步请求,依次为:验证用户名是否存在、获取短信验证码、提交短信验证码和新密码。...另外,密码找回流程第三步的请求中的 vcode 参数为短信验证码,单次有效,不可复用,如何实现自动批量密码重置?经测试,将该参数置空,或者完整删除该参数,服务端不再校验短信验证码

1.8K50

记录一些逻辑漏洞与越权的姿势

权限绕过/Cookie仿冒 第三方登陆,可以修改返回包的相关数据,可能会登陆到其他的用户 密码找回 短信邮箱轰炸/短信邮箱劫持 重置任意用户密码/验证码手机用户未统一验证 批量重置用户密码密码劫持...有时候1.00也行 交易信息订单编码/导致信息泄露 整数溢出,int最大值为2147483647,超过最大值 修改充值账户 请求重放多次下单,高并发操作 如果返回当参数中有一些奇怪的参数,可以把这个而参数添加到请求包中然后重发...,1234 返回包中存在验证码 删除验证码或者cookie中的值可以爆破账号密码 短信轰炸 重放数据包 删除修改cookie,或者检测数据包是否有相关参数,直接删除或者修改,然后重放数据包 手机号前面加...+86,或者手机号后面加空格之类的,然后重发数据包 请求参数修改大小写,或者添加请求参数比如&id=1 一个站的登陆处可能做了防护,但是再找回密码处可能没有安全防护,或者在注册流程中没有安全防护,所以说多测试接口...,填写数据后抓包查看返回信息,有可能存在敏感数据返回 任意用户密码重置 目前大部分都是在修改密码处参数修改,将用户名的参数修改成其他用户名 有些是通过前端验证,使用bp修改返回数据包,如何才能知道正确的数据包是怎么样的

2.3K00

乌云——任意密码重置总结

跳过验证步骤 找到下一步的url 测试方法:首先使用自己的账号走一次流程,获取每个步骤的页面链接,然后记录输入新密码的对应链接。...重置他人用户时,获取验证码后,直接进入输入新密码对应链接到新密码的界面,输入密码重置成功。 一个新浪例子: 记得就好,现在还不怎么理解。...3、四位验证码爆破 4、今天群里老哥一个思路,获取验证码是通过验证码实例化获取,如何从其他地方获取到验证码,然后用这验证码重置密码,也是可行的。...例如,登录处获取到验证码,然后得到的验证码用到重置密码处,就成功通过验证了。 5、利用自己邮箱/手机号码,获取到正确验证码。...,通过替换手机号,可以使用自己的手机号接收验证码 还有还有一种情况比较特殊,也是手机接收验证码,但是整个验证流程没有让你输入手机号码,重置过程中,一般是第一步绑定用户名的地址,但是如果后面几个流程中还会发送用户名这个参数

1.6K20

业务安全(逻辑漏洞)

商品订购数量篡改 商品数量篡改测试是通过在业务流程中抓包修改订购商品数量等字段,如请求中的商品数量修改成任意非预期数额、负数等进行提交,查看业务系统能否以修改后的数量完成业务流程。...验证码客户端回显测试 找回密码测试中要注意验证码是否会回显在响应中,有些网站程序会选择验证码回显在响应中,来判断 用户输入的验证码是否和响应中的验证码-致,如果一致就会 通过校验。...在某网站中的找回密码功能中,业务逻辑是:由用户使用手机进行注册,然后服务端向手机发送验证码短信,用户输入验证码提交后,进入密码重置页面。...,用户回填验证码或单击链接进入密码重置页面,以此方式证明当前操作用户是账号主人; 校验成功进入重置密码页面。...接口参数账号修改流程测试为拦截前端请求,通过修改请求内的账号ID、名称或者邮箱、手机号等参数,修改后的数据发送给服务器进行欺骗达到密码重置的目的。

95720

WEB安全新玩法 防护邮箱密码重置漏洞

大部分具有账号系统的应用都会提供重置用户登录密码的功能,常见方式之一是:用户输入自己的邮箱地址或手机号,应用向这个邮箱或手机号发送验证码,用户收到的验证码输入应用中即可完成密码重置。...[图2] 用户进入到邮件系统中收取寄给 alice@mail.com 的邮件,邮件中的验证码和需要重置的登录密码填写到表单中并提交。...各个实体的交互流程如下: [表1] 1.2 攻击者访问 此处,网站在重置密码的业务处理上有个逻辑缺陷:并未确保发送邮箱验证码时的邮箱地址和设置新密码时的邮箱地址是一致的。...2.1 正常用户访问 iFlow 在图形验证码通过时,请求中的邮箱地址保存在 IP 存储中,在设置新密码时进行以下检查: 1) 该 IP 进行过发送验证码的操作; 2) 该 IP 要设置密码的邮箱地址与发送验证码时的邮箱相同...各个实体的交互流程如下: [表3] 2.2 攻击者访问 如前所示,攻击者在收到邮箱验证码之后,且未提交重设密码之前,修改了邮箱地址。

2.2K30

任意用户密码重置(四):重置凭证未校验

传送门: 任意用户密码重置(一):重置凭证泄漏 任意用户密码重置(二):重置凭证接收端可篡改 任意用户密码重置(三):用户混淆 密码找回需要鉴别用户的合法身份,证明你就是你,通常有两种做法,一是网站重置验证码发至用户绑定的邮箱或手机号...其中,验证码、密保答案就是重置密码的重要凭证。...@yeah.net 进入密码找回全流程,输入图片验证码后提交: ?...现在,我尝试 key 从 FqvICT 改为 xxxxxx 后再访问,本来心理预期看到报错页面,没想到进入了新密码提交页面,难倒所谓的重置 token 仅仅是个摆设?...按正常流程,对 chenxin 进行密码重置,输入任意密保答案均可重置密码: ? 加固措施 密码重置凭证一定要严格校验,空密保问题时禁止通过密保找回密码;服务端应限制枚举等恶意请求。

2.5K80

密码重置姿势总结​

验证码问题 验证码这块其实一直挺多问题的,开发要是没处理好的话很容易造成问题 验证码回显客户端 验证码爆破 验证码未效验 万能密码 验证码回显客户端 重置密码时,凭证为发送到手机上的验证码,但是通过拦截发送发送验证码请求对应的...但我们可以通过拦截返回包修改里面的值欺骗前端绕过验证码,如false改成true error 1改为0,可以使用自己的账号走一遍流程记录下来正确的状态码然后替换做尝试。...未效验用户字段的值 在整个重置面的过程中只对验证码和手机号做了效验,未对后面设置新密码的用户的身份进行判断,攻击者可修改用户身份来重置他人密码。修改id值也可以。...修复建议:判断手机号验证码用户是否一致 用自己的账号正常走流程,到设置新密码处抓包 ? ? ? ?...利用方法:使用攻击者的账号走重置密码流程,到最后一步也就是提交新密码时不要点击提交或者使用burp拦截请求包,在同一浏览器中打开重置密码的页面,使用受攻击者的账号走流程,到需要输入手机验证码的时候,session

2K10

PRMitM:一种可重置账号密码的中间人攻击,双因素认证也无效

全球Top 10网站在密码重置时采用的验证方式 与处理验证码的方法相同,之后密码重置过程中遇到的安全问题,攻击者也会返回给注册用户进行填写。 ?...同理,对于那些安全问题攻击者也可以要求用户进行填写,这在注册流程中是非常正常的事。获取了用户所有信息,攻击者便可进行密码重置。 有一些网站只使用安全问题就可以进行密码重置。...攻击者会声称发送了短信验证码,而实际上发送短信验证码的是攻击者正在进行密码重置的网站。...上图中的Yandex就没有注明用于Yandex服务 研究人员发现,Google在发送验证码时不会提示验证码用于密码重置。Netfix不会提示验证码来自Netflix,eBay不会提短信来自eBay。...,有的回复我们称修复漏洞(Google, LinkedIn, Yandex)。对于那些不容易攻击的网站,致谢了我们,并且称可能在将来采用我们的发现,但目前暂不会进行修复。

1.8K50

【笔记】记录Cy牛的任意密码重置姿势

#【笔记】记录Cy牛的任意密码重置姿势 0x1 验证码不失效 缺少对时间限制,导致可枚举验证码 【比较常见的是4位验证码爆破】 0x2 验证码直接返回 验证码直接出现在返回包里 【这个例子很好理解,抓包查看返回即可发现...,因此修改接收端可达到重置目的 【用户名,手机号,验证码三者未统一验证】 0x5 本地验证绕过 这个很好理解,就是密码重置的逻辑代码功能写在前端,此时可以修改返回包可绕过,还见过一种可直接禁用JS就可找回密码的...,有点奇葩 0x6 跳过验证步骤 这种方法就是逻辑流程出问题了 比如重置密码分4个步骤 1-2-3-4-成功,加入利用新账号走一遍整个密码重置流程 然后记录下每个步骤的url或者数据包 接着从1试着直接跳到...这个和0x2和0x3又有点相似了,还是因为没有完整匹配的原因,在最后一步的时候,修改用户名则可成功重置 【这个可批量重置密码】 【密码重置的功能,一定要每一步都进行匹配】 【用户id---用户手机号-...,loginid,这个参数名一般很多地方抓包都可以看到,替换隐藏参数就可以修改他人的密码等信息 0x11 个人补充 之前还见过一种密码重置,就是密码重置的时候,只判断验证码是否正确,但是没有对验证码为空做判断

59920

【补充】任意密码重置姿势

#【笔记】记录Cy牛的任意密码重置姿势 0x1 验证码不失效 缺少对时间限制,导致可枚举验证码 【比较常见的是4位验证码爆破】 0x2 验证码直接返回 验证码直接出现在返回包里 【这个例子很好理解,抓包查看返回即可发现...,因此修改接收端可达到重置目的 【用户名,手机号,验证码三者未统一验证】 0x5 本地验证绕过 这个很好理解,就是密码重置的逻辑代码功能写在前端,此时可以修改返回包可绕过,还见过一种可直接禁用JS就可找回密码的...,有点奇葩 0x6 跳过验证步骤 这种方法就是逻辑流程出问题了 比如重置密码分4个步骤 1-2-3-4-成功,加入利用新账号走一遍整个密码重置流程 然后记录下每个步骤的url或者数据包 接着从1试着直接跳到...,loginid,这个参数名一般很多地方抓包都可以看到,替换隐藏参数就可以修改他人的密码等信息 0x11 补充一【验证码为空】 之前还见过一种密码重置,就是密码重置的时候,只判断验证码是否正确,但是没有对验证码为空做判断...,此时可试试删掉验证码,看能否成功 0x12 补充二【token返回泄露】 有时候忘记密码的连接是根据一个token来字段来重置的,有时候这个token会在重置成功前就给出,这时候根据tokne泄露的就可以任意重置

60020

账号攻击的几种常见

,又如,注册流程各步骤未严格关联,导致批量注册任意账号,再如,密码找回功能各步骤未严格关联,导致任意账号密码重置。.../Wap/User/forgetpass 用攻击者账号 13908080808 进入密码找回全流程,输入短信验证码后提交: 进入新密码页面,输入后提交,拦截请求如下: 其中,PHPSESSID=p6nujg7itekpau6p1e9ibbpe86...大致攻击思路:首先,用攻击者账号 13908080808 进入密码找回流程,查收重置验证码、通过校验;然后,输入新密码后提交,拦截中断该请求,暂不发至服务端,这时,PHPSESSID 关联的是 13908080808...账号;接着,关闭浏览器的 burp 代理,新开重置流程的首页,在页面中输入普通账号 13908090133 后获取短信验证码,这时,PHPSESSID 已关联成 13908090133 了;最后,放行之前中断的请求...用上述思路尝试 13908090133 密码重置为 PenTest1024,前端显示重置成功。

83110

任意密码重置漏洞(身份认证缺失)

0x01 漏洞描述 - 任意密码重置 - 逻辑设计缺陷是由于应⽤在最初设计时由于未考虑全⾯,在登录、注册、找回密码、⽀付模块中程序的判断逻辑及程序的处理流程上存在缺陷,导致攻击者可以绕过程序的处理流程...0x02 漏洞等级 图片 0x03 漏洞验证 访问重置密码页面,输入存在的手机号用户和任意密码进行重置密码。...该系统重置密码功能,没有对手机号账户的持有者进行身份验证(例如:短信验证码验证),重放数据包即可成功重置任意用户密码。...0x04 漏洞修复 对客户端提交的修改密码请求,应对请求的用户身份与当前用户的手机号身份进行校验,判断是否有权修改用户的密码。 对短信验证码的过期时间以及提交次数进行限制,防止短信验证码被暴力破解。...输入手机号和短信验证码进行重置密码时,对该短信验证码、账号及手机号做统一严格校验。

71350

逻辑漏洞之密码找回漏洞(semcms)

一般流程 1 首先尝试正常找回密码流程,选择不同的找回方式,记录所有数据包 2 分析数据包,找到敏感部分 3 分析后台找回机制所采用的验证手段 4 修改数据包验证推测 可能产生该漏洞的情况...1、验证码爆破的,对验证码有效期和请求次数没有进行限制; 2、token验证之类的,直接验证内容返回给用户; 3、找回密码功能的进行身份验证内容未加密或者加密算法较弱,容易被猜解; 4、对用户的身份验证在前端进行...2.返回凭证 2.1 url返回验证码及token(找回密码凭证发到邮箱中,url中包含用户信息以及凭证,但是这个凭证可以重置任何用户) 2.2 密码找回凭证在页面中(通过密保问题找回密码、找回密码的答案在网页的源代码中...发现1返回的长度和其他的都不一样,那就说明验证码可能是0001 回到找回密码的界面,认证码改为0001,确认找回 ? 提示操作成功 ? 使用更改过的密码登录,登录成功 ?...抓包,uid改为1(admin的uid值为1;aaaaa的uid为2 。这里改成1是为看修改admin的密码,当然也可以换成其他的,比如3,4,5,6,7……就会修改对应uid账号的密码) ?

4.1K33

挖洞经验 | 注册、登录、密码修改页面渗透测试经验小结

我们用手机号码进行操作,输入手机号,然后点击获取验证码,后端服务器验证码发给我们的手机号,我们手机收到的验证码填入,点击注册、登录或者修改密码,后端校验验证码是否正确,正确即可成功。...BURP 就可以完成身份验证的绕过,在登录的时候输入正确的账户以及随意的密码报文拦截下来,然后选择 burp 里面的拦截返回包的功能,捕捉返回的状态码。...任意用户密码重置 几乎所有需要登录的网站都有一个忘记密码然后重置密码的功能,如果网站在密码重置功能处的代码不够严谨,将可能造成任意密码重置的逻辑漏洞。...输入我们收到的验证码,即可实现对该用户的密码进行重置。...首先使用我们自己的账号走一次流程,获取每个步骤的页面链接,然后记录页面3对应的输入新密码的链接,重置他人用户时,获取验证码后,直接输入密码修改页面链接到新密码的界面,输入密码重置成功。

1K10
领券