同一个密码用在好几个网站:撞库是怎么一个个撞开账户的
搜"撞库",中文结果几乎清一色是写给网站运维看的:加图形验证码、限制请求频率、封高频 IP、上人机识别。那是平台那一侧的功课。你这一侧能做的其实只有一件事,而且做完这一件就够了——让别处泄露的那一组账号密码,在你的其他账户上用不了。这篇讲清这条链条怎么走到交易所账户,以及为什么"我的密码很复杂"救不了你。
撞库不是猜密码
这是最该先纠正的一点。OWASP 给撞库(credential stuffing)的定义是:把窃取到的用户名与密码配对,自动化地灌进网站登录表单,以此非法进入用户账户;它属于暴力破解的一个子类,区别在于暴力破解是"猜",撞库用的是已经在别处泄露、确认能用的真实配对。
这个区别决定了一切。你把密码设成十六位混合字符,防的是猜;可一旦这串字符原样从某个论坛、某个购物站漏出去,复杂度一点忙都帮不上——对方不需要破解,他手上就是明文。复杂度和唯一性是两件事,各防各的:复杂度防猜解,唯一性防连锁。
一次泄露,怎么变成你的账户被登
整条链子通常是这样跑的:
- 源头往往和你的钱无关。一个多年没登的论坛、一个买过一次东西的小电商、一个抢过券的 App 被拖库,你当年注册用的邮箱和密码进了流通数据。
- 不止是拖库这一条路。专偷凭据的木马会直接翻浏览器里保存的密码库,把结果打包送进同一批数据。也就是说,即使你注册过的网站都没出事,你自己的电脑中过一次招,效果一样。
- 数据被清洗成配对表。邮箱、密码、有时还带手机号,整理成可以直接喂给程序的格式。
- 自动化去各处试。请求从大量不同 IP 发出来,一个站一个站、一个账号一个账号地试。对每个具体账号来说成本近乎为零,成不成都无所谓,量堆上去总有开的。
- 试出来的按价值分拣。能登进去的账号被归类、标价、转手,交易所账号在这张价目表上排得很靠前。
注意第五步:被撞开和被动手之间往往隔着一段时间。你的账号可能几周前就在某份"可用"清单里了,只是还没排到。所以别用"我最近没出事"来判断自己安全。
为什么交易所账户排在前面
银行账户被登进去,对方还要面对转账限额、收款方核验、可回滚的清算流程。交易所账户不一样:登进去本身就已经能做很多事——把资产换成另一种币、在 C2C 挂单、建一把带权限的 API、往白名单里加一个地址等冷却期过。链上转出去的部分基本不可撤销。
这也解释了为什么"账户里没多少钱"不构成理由。一个通过了实名的账户,本身就是可以被利用的通道;而且能撞开它的那组密码,八成也开着你的邮箱——邮箱是所有账户的找回入口,损失不会停在一处。
怎么知道自己中没中
三个能自己做的动作,按可靠程度排:
- 用密码管理器内建的泄露检查。主流管理器都会拿你保存的条目和已知泄露数据比对,直接列出"这条已泄露""这条你在 5 个站点重复用了"。这是最省事、也最安全的查法。
- 用只填邮箱地址的公开查询服务。它告诉你这个邮箱出现在哪些已公开的泄露事件里。查不到不代表没泄露:很多数据要流通很久才会被公开收录。
- 看账户自己的记录。登录设备列表里有没有对不上的城市和时间、有没有你没触发过的验证码短信。怎么看见设备管理与异常登录;无缘无故收到验证码,本身就是有人正拿着你的账号在试的信号。
把链条剪断的三步
- 一站一个密码,先从三类账户改起。不必一夜之间全改完。按顺序来:邮箱、交易所、能动钱的(银行、支付)。这三类改成互不相同、别处从未用过的,链条最要命的一段就断了。
- 用密码管理器生成和保存,别靠脑子。唯一性做到底的前提是你不用记。管理器的主密码要够长、只用于它、并且给管理器本身开二次验证。相对而言,把密码全存在浏览器里更值得警惕——偷凭据的木马正是奔着那个库去的。
- 给账户加第二把锁,让密码不足以成事。验证器、硬件安全密钥或 Passkey,加上提币白名单,作用是把"密码正确"和"能把资产拿走"彻底分开。几种方式的取舍见二次验证 2FA 完全指南。
做完这三步,可以用账户安全体检过一遍,看还差哪几项。
三个还在流传的误解
下面三条在中文的密码建议里出现频率很高,但和现行的权威口令规范(NIST SP 800-63B)对不上:
| 流传的说法 | 规范里的现行要求 |
|---|---|
| 密码必须包含大小写、数字和符号 | 验证方不得强加字符组合规则;长度比字符种类重要,并且应至少允许 64 位长度 |
| 每 90 天换一次密码更安全 | 验证方不得要求用户定期更换口令,只有在有证据表明口令已泄露时才强制更换 |
| 只要够复杂就不会被撞开 | 设置或修改口令时须与已知的常用、可预测或已泄露口令黑名单比对——因为撞库拼的是"这串有没有在别处出现过",不是复杂度 |
为什么强制轮换反而被劝退?因为被逼着每季度换一次的人,多半是在原密码后面加个数字。规则看着变严了,实际可猜性更高,还顺手鼓励了复用。真正有效的是那条不太性感的老建议:够长、一站一个、存在管理器里。
常见问题
我的密码很复杂,还需要一站一个吗?
需要。撞库不猜密码,它用的是别处泄露出来的真实配对,所以你的密码有多复杂并不影响这一步——泄露的是原文,再复杂也照抄不误。复杂度防的是暴力猜解,唯一性防的才是撞库,两件事各管各的。真正决定你会不会被连锁撞开的,是同一组密码在几个站点用过。
定期换密码还有必要吗?
按 NIST SP 800-63B 的现行要求,验证方不得要求用户定期更换口令,只有在有证据表明口令已被泄露时才强制更换。原因是强制轮换会把人逼成在原密码后面加数字,反而更好猜。把力气花在一站一个、够长、并且用密码管理器保存上,比按月换一次有用得多。
怎么知道我的账号在不在泄露库里?
用你自己密码管理器内建的泄露检查功能,或者用只需要填邮箱地址的公开查询服务。
绝对不要为了检测而把密码本身输进任何第三方网站的输入框——那正是钓鱼站最喜欢的伪装。另外要知道,查不到不等于没泄露,很多数据在流通很久之后才会被公开收录。
账户里没多少钱,被撞开了也无所谓吧?
资产多少不是唯一代价。一个能登进去的交易所账户,可以被用来完成实名过的转账通道、发起 C2C 交易、留下 API 或提币白名单,等你以后往里充值再动手。而且同一组密码往往还开着你的邮箱,邮箱是所有账户的找回入口,损失不会停在这一个账户上。
用浏览器记住密码算不算安全的做法?
它解决了记不住的问题,但没解决被顺走的问题:专门偷凭据的木马第一件事就是翻浏览器保存的密码库,然后把结果卖进撞库用的数据里。相对稳妥的做法是用独立的密码管理器、给它设一个只用于它的强主密码并开启二次验证,且不要在公用或来路不明的设备上登录这个管理器。
参考来源
- OWASP · Credential stuffing 定义与和暴力破解的区别(owasp.org,本站复核 2026-08-30)
- NIST SP 800-63B · 口令长度、禁止强加字符组合规则、禁止定期轮换、泄露口令黑名单比对(NIST 800-63B,本站复核 2026-08-30)
- 币安官方帮助中心 · 账户安全与双重验证相关条目(binance.com/zh-CN/support,以官方当前页面为准;本站以真实浏览器复核 2026-08-30)