返回介绍

9.3 验证码客户端回显测试

发布于 2024-10-11 00:03:33 字数 1433 浏览 0 评论 0 收藏 0

9.3.1 测试原理和方法

当验证码在客户端生成而非服务器端生成时,就会造成此类问题。当客户端需要和服

务器进行交互发送验证码时,可借助浏览器的工具查看客户端与服务器进行交互的详细信

息。

9.3.2 测试过程

攻击者进入找回密码页面,输入手机号与证件号,获取验证码,服务器会向手机发送

验证码,通过浏览器工具查看返回包信息,如果返回包中包含验证码,证明存在此类问

题,如图 9-13 所示。

图 9-13 验证码客户端回显测试流程

以某 P2P 金融平台为例。

步骤一:使用浏览器访问该网站,在找回密码页面中任意输入一个手机号码和开户证

件号,如图 9-14 所示。

图 9-14 输入手机号与证件号

步骤二:单击“下一步”按钮,即可向该手机发送短信验证码。按 F12 键启用浏览器调

试工具可看到短信验证码在本地生成,如图 9-15 所示。

图 9-15 查看本地生成的验证码

步骤三:输入本地生成的验证码,如图 9-16 所示。

图 9-16 输入验证码

进入重置密码页面,如图 9-17 所示。

图 9-17 进入密码重置页面

步骤四:重置密码成功,如图 9-18 所示。

图 9-18 重置成功

9.3.3 修复建议

针对验证码在客户端回显的情况,建议采取如下措施来预防此类问题:

(1)禁止验证码在本地客户端生成,应采用服务器端验证码生成机制;

(2)设置验证码的时效性,如 180 秒过期;

(3)验证码应随机生成,且使用一次即失效。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文