
read receipts
没人猜测你的密码。他们只是重复使用了。
那个掏空了你旧游戏账户的攻击使用的密码,是你在更重要的地方输入过的——证据可能就在你的垃圾邮件文件夹里。
某个数据中心里的机器人正在用你的电子邮件地址尝试130个不同的网站,而且它已经知道了密码。不是猜测。不是通用密码字典。正是那个你之前输入过的字符串——因为你在某个被攻破的地方输入过,攻击者赌你懒得够狠,会在两个地方用同一个密码。
这个赌注的成功率高得惊人。谷歌和哈里斯民调进行的一项调查发现,65% 的人在多个网站上重复使用同一密码,其中一些人承认几乎在所有地方都用一个密码。你大概读到这个数字时想,当然,其他人。这就是整个商业模式。攻击者不是在指望你这个具体的人很粗心。他们是指望被盗列表中的 65% 很粗心,而且他们只需要其中一小部分成功。
这就是凭证填充(credential stuffing),名称完全是字面意思。有人拿到一份泄露的电子邮件和密码对——Have I Been Pwned 现在索引了超过 14 亿个受损账户,来自数千次数据泄露——然后把这些对应关系"填充"到互联网上各个网站的登录表单。银行。流媒体服务。忠诚度计划。你的电子邮件本身。他们把这个流程自动化,轮换代理 IP 以避免看起来可疑,让数量庞大来完成这项工作。
而且数量确实很庞大。Akamai(处理了很大一部分网络流量)在一年内记录了数百亿次凭证填充尝试,某些报告的年度数字超过一百亿。一个被攻破的密码不是打开一扇门。它是一把万能钥匙,快速地被试遍街上的每一把锁,由永远不知疲倦的东西来操作。
这是应该重塑你对它的理解的部分。你重复使用那个密码的登录页面不一定非得被攻破。泄露密码的弱网站——一个已关闭的论坛、2014年的某家零售商、一个小型琐事应用——把钥匙交给了攻击者,让他们可以进入强网站。你的银行可能有完美的安全防护,但仍然可能失败,因为保护它的密码已经坐在某个文本文件里被以微不足道的价格出售,来源于一个安全防护堪比纸屏风的地方。
那么你怎么知道自己是否在这些数据库中?通常,你已经被告知过了。不是通过安全简报——是通过你的垃圾邮件文件夹。那些"异常登录尝试"、"确认你的账户"、"我们注意到来自新设备的登录"的电子邮件,你条件反射地删除它们,但它们常常是真实的、合法的警报,因为机器人尝试了你的凭证并触发了速率限制。真实的泄露通知和真实的登录警报经常被扫入垃圾邮件,就像冒充它们的假邮件一样。信号就在那里。它只是被埋在了看起来一样的噪音下面。
修复方法很枯燥,但有效。停止重复使用密码——密码管理器让每个登录都成为唯一的随机字符串,这样一个网站的泄露只会影响一个账户,而不是所有账户。开启双因素认证,这样即使密码被盗,也会在第二步失败。还要实际检查一下你的地址是否在已知的数据泄露中;Have I Been Pwned 会免费告诉你,而且现在大多数密码管理器都能自动标记重复使用和受损的条目。
令人不安的真相是,针对你最努力工作的攻击者不是穿着连帽衫的黑客。它是一个脚本,运行一个列表,利用几乎每个人都有但几乎每个人都认为不适用于自己的这一个习惯。
来源
- Have I Been Pwned — Breached account dataset, 14B+ compromised accounts indexed
- Google / Harris Poll — Online security survey on password reuse habits
- Akamai State of the Internet — Credential stuffing attack volume reporting