验证码客户端回显

  • 验证码客户端回显就是指当用户向网站系统发送一条验证码(如短信验证码)的请求时,
  • 验证码会直接返回显示在前端页面中,或者可通过抓包工具截获该验证码。

危害

  • 绕过短信验证码验证进行登录或注册
  • 重置任意用户密码

漏洞原理

  • 由于开发人员的代码逻辑问题,在调用短信平台发送短信时,没有判断验证码和手机号是

否绑定,并且把验证码校验的功能放到客户端来进行,从而导致验证码在客户端回显。

  • 回显一般分两种情况:

1、验证码输出在客户端页面中

2、验证码输出在返回数据包中
验证码机制之验证码客户端回显测试

测试示例

案例

通过验证码客户端回显漏洞实现帐户绑定任意手机号码

测试方法

1、输入任意手机号码,点击发送短信验证码并抓取数据包

2、查看返回数据包,观察验证码是否回显。

3、若回显,则提交验证码。

测试

第一步:绑定手机号
验证码机制之验证码客户端回显测试
第二步 查看返回数据包
验证码机制之验证码客户端回显测试
验证码机制之验证码客户端回显测试
第三步 使用验证码进行绑定
验证码机制之验证码客户端回显测试

防御方案

1、在服务端对验证码进行校验。

2、禁止将验证码內容输出到客户端页面以及返回的数据包中。

摘抄


拖拖拉拉地熬夜不睡觉,根本没一点好处。

天一黑就赶快钻进被窝,早上跟着太阳一起醒来,这样再好不过。

——村上春树《1Q84》


相关文章: