15.2 密码找回凭证直接返回给客户端
有些信息系统在密码找回功能的设计上存在逻辑漏洞,可能会将用于用户自证身份的
信息的密码找回凭证以各种各样的方式返回到客户端。这样攻击者只要通过在本地抓取数
据包并对其内容加以分析就能获取到其他用户的密码找回凭证,从而冒充该用户重置密
码,如图 15-8 所示。
图 15-8 测试流程图
15.2.1 密码找回凭证暴露在请求链接中
步骤一:进入某直播网站登录处,单击忘记密码,选择通过注册手机找回密码,如图
15-9 所示。
图 15-9 通过注册手机找回密码
步骤二:输入手机号码,单击获取验证码,然后使用 Firebug 查看请求链接,发现验
证码直接出现在请求链接中,如图 15-10 所示。
图 15-10 验证码出现在请求链接中
步骤三:直接输入请求链接中暴露出来的验证码即可修改密码。
15.2.2 加密验证字符串返回给客户端
步骤一:进入某电商官网按正常流程执行找回密码功能,填写好邮箱和图片验证码,
进入下一步,然后使用抓包工具抓取请求包。
步骤二:分析返回的数据包,发现其中包含了一个加密字符串,将其记录下来,如图
15-11 所示。
图 15-11 抓包返回数据结果
步骤三:之后,邮箱中会收到一个找回密码用的验证码。将该验证码在页面上填好,
单击下一步按钮即可进入密码重置页面,如图 15-12 所示。
步骤四:仔细观察发现,密码重置页面 URL 中的加密验证字符串和之前返回数据包中
的加密字符串是同一个,如图 15-10 和图 15-11 所示。既然如此,则可以绕过邮箱验证码校
验,直接利用抓包工具获取到的加密字符串构造到 URL 中进行任意密码重置,如图 15-12
所示。成功重置并登录了官方客服的账号,如图 15-13 所示。
图 15-12 密码重置页面
图 15-13 密码重置并登录成功
15.2.3 网页源代码中隐藏着密保答案
步骤一:进入某邮箱网站官网,单击“找回密码”按钮,再单击“网上申诉”链接,如图
15-14 所示。
步骤二:在网上申诉页面直接查看源代码,发现源代码中不但有密码提示问题,还在
Hide 表单里隐藏着问题答案。通过该方式,可获得任意用户修改密码问题答案,从而可以
修改其他用户邮箱密码,如图 15-15 所示。
图 15-14 网上申诉链接
图 15-15 密保答案泄露
15.2.4 短信验证码返回给客户端
步骤一:进入某商城网站首页,单击忘记密码。
步骤二:使用一个已注册的手机号码,通过短信验证方式找回密码,如图 15-16 所
示。
图 15-16 通过短信验证方式找回密码
步骤三:输入图片验证码,单击获取短信验证码,如图 15-17 所示。
图 15-17 获取验证码
步骤四:此时抓取数据包,发现服务端直接将短信验证码 646868 返回给了客户端,将
短信验证码填写到验证码处即可成功重置其密码。同理,通过该方式,可以重置其他用户
的密码,如图 15-18 所示。
图 15-18 返回短信验证码
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论