一句话回答: 撞库(credential stuffing)是这样一种攻击:犯罪者拿一次泄漏里流出的「用户名+密码」组合,自动地在许多其他网站上逐个尝试,赌人们会重复使用密码。它便宜、自动化,还常常得手,因为密码复用泛滥。能把它彻底挡住的两样东西:处处用唯一密码(这样一次泄漏无法被复用)和 2FA(这样光有正确密码也不够)——这正是「即便密码被盗,验证码依然要紧」的原因。

当一个网站被攻破,被盗的密码不只伤害那个站。攻击者把数以百万计的凭证喂进机器人,拿去别处到处试——你的邮箱、银行、购物账号。这就是撞库,账号被接管最常见的方式之一;搞懂它,就能明白 2FA 那点小麻烦为何值得。
一、撞库怎么运作
这攻击规模工业化,概念却简单:
- 一次泄漏倾泻出数百万「邮箱/密码」组合(常被出售或公开流出)。
- 攻击者把它们装进自动化工具,在数百个站点上逐对尝试。
- 凡是某人复用了那个密码的地方,登录就成功。
- 攻击者接管账号——或把可用组合卖掉。
尝试数百万次登录几乎不花钱,所以哪怕成功率很低也有利可图。整场攻击骑在一个人类习惯上:密码复用。
二、它为什么这么好使
| 因素 | 为什么帮到攻击者 |
|---|---|
| 密码复用 | 一次泄漏解锁多个站点 |
| 自动化 | 数百万次尝试、便宜 |
| 庞大的泄漏库 | 有试不完的凭证 |
| 没有 2FA | 正确密码 = 完全访问 |
令人不适的真相是:撞库得手,不是因为高明的黑客技术,而是因为太多人在多处用同一个密码。是你复用的密码在替攻击者干活。
三、真正能挡住它的两道防线
- 处处用唯一密码: 若每个站点都有自己的密码,一处泄漏就无法在别处被复用。密码管理器让这变得可行。
- 开启 2FA: 即便攻击者有你正确的密码,他也会撞上第二因子——一条短信码、验证器 App 或通行密钥——那是他没有的。光靠撞来的密码,他寸步难行。
两者协同:唯一密码限制任何泄漏的爆炸半径,2FA 则即使发生复用也让被盗密码失效。这就是服务如此卖力推 2FA 的核心原因。
四、如果你用在线号码收码,这意味着什么
撞库正是验证码所防御的场景。当一个登录还要求一个你无 SIM 卡在线收的码时,拿着你泄漏密码的攻击者仍进不来——码从不到他那儿。你的第二因子把「密码被盗」变成一件无关紧要的事。
有个值得注意的反面:如果你开始收到没申请的登录码,那是「你密码已经在外面、正被撞库」的信号。别输那个码——把它当作「去改那个密码」的提示,这和验证码机器人诈骗背后的警惕是同一个。
常见问题
Q:撞库和暴力破解有什么不同? 暴力破解从零猜密码;撞库复用从别处泄漏出的真实密码。撞库有效得多,因为那些密码是真的——只是被复用了。
Q:2FA 真能挡住撞库吗? 能。即便有你正确的密码,攻击者也被他没有的第二因子挡住。2FA 是对抗账号接管最有效的防御之一。
Q:我收到一个没申请的登录码——意味着什么? 很可能有人拿到了你的密码并触发了登录。别输那个码;立刻改掉那个密码,并确保它是唯一的。
小结
撞库把泄漏的密码武器化,拿去到处尝试,凡你复用过的地方就得手。唯一密码控制损害范围,2FA 则彻底让被盗密码失效——这正是「恰在你密码已落入攻击者之手时,验证码在保护你」的原因。