文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
13.3 接口调用参数篡改测试
13.3.1 测试原理和方法
在短信、邮件调用业务环节中,例如短信验证码、邮件验证码。修改对应请求中手机
号或邮箱地址参数值提交后,如果修改后的手机号或邮箱收到系统发送的信息,则表示接
口数据调用参数可篡改。
13.3.2 测试过程
如图 13-17 所示,攻击者拥有账号 B,用户拥有账号 A。攻击者对账号 A 进行密码找回
操作,服务器给账号 A 的邮箱或者手机发送密码重置信息,攻击者进入验证码验证环
节,此时攻击者单击“重新发送验证码”并拦截重新发送这个请求,将请求中的接收验证码
用户的邮箱或者手机修改为自己的。如果接收到密码重置信息,则存在漏洞。
图 13-17 接口调用参数篡改测试流程图
测试过程以某手机 App 系统为例。
步骤一:如图 13-18 所示,在短信验证码页面单击“重新发送”同时抓取数据包。
图 13-18 发送验证码并使用 Burp Suite 抓包
步骤二:如图 13-19 所示,在截取数据中将 param.telno 参数(指定发送手机号码)修
改为其他手机号码。
图 13-19 Burp Suite 修改参数值
步骤三:如图 13-20 所示,修改后被指定的手机号收到相应验证码短信。
图 13-20 确认漏洞
13.3.3 修复建议
(1)会话 Session 中存储重要的凭证,在忘记密码、重新发送验证码等业务中,从
Session 获取用户凭证而不是从客户请求的参数中获取。
(2)从客户端处获取手机号、邮箱等账号信息,要与 Session 中的凭证进行对比,
验证通过后才允许进行业务操作。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论