《Web测试囧事》——3.4 账号关联过的手机号会一直收到短信验证码

简介:

本节书摘来自华章计算机《Web测试囧事》一书中的第3章,第3.4节,作者 黄勇 雷辉 徐潇 杨雪敏,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.4 账号关联过的手机号会一直收到短信验证码

就像现在很多注重用户安全的公司一样,小蔡的公司也决定对用户的账户增加一个强制的功能,就是需要用户绑定手机,这样能让用户第一时间得到异常登录的信息,还可以通过手机安全登录码进行二次验证,然后才能登录网站,如图3-8所示。

添加了绑定手机的功能,就意味着还需要添加修改绑定手机的功能,因为不能限制用户只使用同一个手机号。

image

在测试添加和修改绑定手机号的过程中,小蔡发现了一个有意思的问题:当用户第一次使用手机号绑定时,系统不会出错;如果这个手机号之前被绑定过,虽然已经取消了绑定,但是被重新绑定到别的账户时,系统会提示这个手机号已经存在,不能继续绑定。

小蔡明确记得在测试取消绑定时,系统返回解绑成功,在前台也看不到绑定的手机号了,所以问题就被缩小到后台解绑的处理过程中。

这一次小蔡并没有直接去找负责开发这一模块的人员寻求帮助,而是想锻炼自己定位和解决问题的能力,于是她使用SQL语句查询后台数据库里有关被解绑的手机号。经过一系列的查询,她发现解绑的手机号在保存用户信息的表里都被删除了,但是为用户发送登录码和异常登录信息的表里还存在有解绑手机号的记录。

当进行到这一步,小蔡大胆地推测,在解绑手机的时候,系统只是单纯地删除了用户信息表里的数据,就在前台提示用户处理成功,但是对于其他关联的数据,并没有处理。而在绑定手机的时候,系统逻辑会判断是否有重复的数据,这就造成了解绑的手机号不能重新被绑定。

当小蔡把这一发现汇报给老牛的时候,老牛敏锐地指出,其实这个问题还隐含了一个更大的风险:解绑的手机号依然可以收到系统发送的验证码,如果其他人别有用心,就可以利用这个漏洞,使用户蒙受损失。

好险,幸亏小蔡及时发现了这个问题。通过这个缺陷,小蔡意识到:对于增删改的操作,不仅需要验证前台返回的结果,同时需要在后台进行验证,确保前后台信息的一致性和完备性。而做到这一点,基本的SQL查询语句是测试人员需要熟悉的。

image
image
image

相关文章
|
1月前
|
Web App开发 前端开发 JavaScript
探索Python科学计算的边界:利用Selenium进行Web应用性能测试与优化
【10月更文挑战第6天】随着互联网技术的发展,Web应用程序已经成为人们日常生活和工作中不可或缺的一部分。这些应用不仅需要提供丰富的功能,还必须具备良好的性能表现以保证用户体验。性能测试是确保Web应用能够快速响应用户请求并处理大量并发访问的关键步骤之一。本文将探讨如何使用Python结合Selenium来进行Web应用的性能测试,并通过实际代码示例展示如何识别瓶颈及优化应用。
94 5
|
29天前
|
测试技术
自动化测试项目实战笔记(三):测试用户注册(验证码错误,成功,出现弹框时处理)
本文是关于自动化测试项目实战笔记,主要介绍了如何测试用户注册功能,包括验证码错误、注册成功以及弹框处理的测试步骤和代码实现。
79 2
自动化测试项目实战笔记(三):测试用户注册(验证码错误,成功,出现弹框时处理)
|
10天前
|
Web App开发 定位技术 iOS开发
Playwright 是一个强大的工具,用于在各种浏览器上测试应用,并模拟真实设备如手机和平板。通过配置 `playwright.devices`,可以轻松模拟不同设备的用户代理、屏幕尺寸、视口等特性。此外,Playwright 还支持模拟地理位置、区域设置、时区、权限(如通知)和配色方案,使测试更加全面和真实。例如,可以在配置文件中设置全局的区域设置和时区,然后在特定测试中进行覆盖。同时,还可以动态更改地理位置和媒体类型,以适应不同的测试需求。
Playwright 是一个强大的工具,用于在各种浏览器上测试应用,并模拟真实设备如手机和平板。通过配置 `playwright.devices`,可以轻松模拟不同设备的用户代理、屏幕尺寸、视口等特性。此外,Playwright 还支持模拟地理位置、区域设置、时区、权限(如通知)和配色方案,使测试更加全面和真实。例如,可以在配置文件中设置全局的区域设置和时区,然后在特定测试中进行覆盖。同时,还可以动态更改地理位置和媒体类型,以适应不同的测试需求。
16 1
|
22天前
Discuz! X3.5插件云诺-阿里云短信手机登录 会员登录后也无法查看附件图片的问题解决方法
Discuz! X3.5插件云诺-阿里云短信手机登录 会员登录后也无法查看附件图片的问题解决方法
34 2
|
5天前
|
Web App开发 测试技术 数据安全/隐私保护
自动化测试的魔法:使用Python进行Web应用测试
【10月更文挑战第32天】本文将带你走进自动化测试的世界,通过Python和Selenium库的力量,展示如何轻松对Web应用进行自动化测试。我们将一起探索编写简单而强大的测试脚本的秘诀,并理解如何利用这些脚本来确保我们的软件质量。无论你是测试新手还是希望提升自动化测试技能的开发者,这篇文章都将为你打开一扇门,让你看到自动化测试不仅可行,而且充满乐趣。
|
1月前
|
SQL 存储 数据可视化
手机短信SQL分析技巧与方法
在手机短信应用中,SQL分析扮演着至关重要的角色
|
29天前
|
人工智能 算法 测试技术
自动化测试项目实战笔记(二):解决验证码识别问题
这篇文章介绍了三种自动化测试中验证码识别的方法:使用Python的pytesseract和PIL模块、利用第三方API如万维易源,以及使用开源的ddddocr库,还提到了一些注意事项,比如如何获取验证码区域的截图。
64 2
|
8天前
|
Web App开发 设计模式 JavaScript
自动化测试之美:如何利用Selenium实现Web应用的高效测试
【10月更文挑战第29天】在软件开发的世界中,测试是确保产品质量的关键步骤。本文将带你了解如何使用Selenium这一强大的自动化测试工具,提高Web应用测试的效率和准确性。通过实际案例,我们将探索Selenium的核心功能及其在现代软件开发中的应用,旨在帮助读者掌握自动化测试的精髓,从而提升软件测试工作的整体效能。
|
1月前
|
安全 Linux Shell
Kali渗透测试:使用Metasploit对Web应用的攻击
Kali渗透测试:使用Metasploit对Web应用的攻击
|
1月前
|
数据采集 消息中间件 API
Python爬虫验证码识别——手机验证码的自动化处理
Python爬虫验证码识别——手机验证码的自动化处理
下一篇
无影云桌面