# 乌云归档：账号安全之扫号

Author: 乌云历史资料库 (@wooyun_archive)
Published: 2014-05-26T04:55:00Z
Canonical: https://wepostx.com/topics/478

> 乌云历史资料归档
>
> **原始作者：** 小胖胖要减肥
> **原始编号：** superkieran-wooyundrops:260
> **原始发布时间：** 2014-05-26 12:55
> **声明：内容仅用于技术研究和个人使用，版权归 wooyun.org。**

---

## 0x00 背景

何为扫号（黑产术语），通俗讲就是拿别人网站的数据库，尝试当前想要破解用户账户的网站。
自从csdn的明文600万，到猫扑，天涯，多玩，7k7k等陆续爆出密码，扫号大军慢慢从地下逐步显现出来。已然成为当前账户安全的第一大杀手。没错，是第一。
诚然支付宝数据库再严密，也无法抵挡账户被扫的命运。
[WooYun: 支付宝某接口存在安全隐患可被利用撞库(有证明)！](http://www.wooyun.org/bugs/wooyun-2013-037984)
诚然京东没有显示被脱裤，也无奈放出扫号账号密码对其的一番炒作。
[京东数据库泄露事件分析](http://drops.wooyun.org/news/989)
那么对于用户和开发者，对扫号有好的办法吗？

## 0x01 防御

对于用户而言，最好每个网站密码不同，当然这个需要极高的安全意识，和良好的用户习惯。
比如京东账号在原有密码前可以加jd，或者在后面加。支付宝可以加zfb等方式。
对于开发者而言，又有什么好办法呢？ 首先要开发者要意识到，道高一尺，魔高一丈。扫号问题是2方的不断比拼，下面从基本的几个地方对于开发者进行一个普及。

```text
1 完全无验证码，且ip访问无限制。 2 密码输入错误几次出现验证码，但是对于不断更换账号登陆即不会出现验证码 3 页面不刷新验证码无限次使用 4 判断用户cookies某值是否访问过，只要请求不带cookies就能绕过 5 主站有验证码，但是wap，移动客户端都没有，直接通过拦截请求可绕过 6 https对防扫号基本无用，只是传输加密
```
以上几点只是抛砖引玉，逻辑漏洞开发人员尽量避免。扫号无非就是通过如下几点来达到验证账户的目的。

```text
1 无验证码和访问限制直接扫号 2 通过逻辑漏洞绕过已有验证码策略扫号 3 控制时间频度扫号 4 不断更换ip进行扫号 5 识别验证码进行扫号
```
开发者在防御上也可以基于上面几点。
下面介绍某大型电商网站的一个例子
[WooYun: 电商普及型安全-美团扫号篇(接口设计不当)](http://www.wooyun.org/bugs/wooyun-2013-044897)
希望能对用户和开发者警示。（电商账户被盗事件相信都已进入大伙视线）
某大型电商网站某接口没有做限制，无验证码（当然单个账号错误几次后有）

![原文图片](/media/2016/06/5e28cb9867503f37105fbd87c10e0eb1)

某工具参数化后发现不少账号密码已经成功

![原文图片](/media/2016/06/b66714a6f40e1b7e88be5a4f9c639548)

登陆尝试可以登陆

![原文图片](/media/2016/06/3029fd20762dfde398aeef04993d13c7)

希望不管还是用户，开发都能够看完此篇后，对于账户安全有一定重视，没有2方的共同努力，安全都是空谈，就好比用户密码都用排名前10的如123456，520520。安全的建设也需要用户的共同进步。

## Replies
