什么是凭证填充(Credential stuffing)?
凭证填充是一种网络攻击,也是我们习惯称的“撞库”,利用从一项服务上的数据泄露中获得的登录凭据尝试登录到另一个不相关的服务。
例如,攻击者可能通过攻破一个大型百货商店而获取大量用户名和对应密码,并使用相同的登录凭据尝试登录到某个国际银行的网站。攻击者猜测这些百货商店客户中的某些人在该银行也有帐户,并且他们使用了和百货商店同样的用户名和密码。
很多人可能习惯将其与“蛮力攻击”相提并论,但它们之间存在明显区别。
OWASP 将凭证填充归类为蛮力攻击的子集。但严格来讲,凭证填充与传统的暴力攻击有很大不同。暴力攻击尝试在情境背景或线索的情况下猜测密码,有时按照常规密码设置建议随机套用字符。凭证填充利用的是泄露数据,可能正确的答案在数量上得到了精简。
防止暴力攻击的有效方法是使用由多个字符组成的强密码,包括大写字母、数字和特殊字符。但是密码强度不能防止凭证填充。密码的强弱无关紧要–如果密码在不同的帐户之间共享,那它依然会受损于凭证填充。
数据说话:凭证填充攻击现状
HaveIBeenPwned.com(HIBP)——由安全研究员Troy Hunt运营的免费数据泄露通知服务——跟踪了来自410起数据泄露事件的超过85 亿份泄露凭证。这还只是来自公开数据集或在地下论坛上广泛分发的数据集中的凭据,还有许多数据转储仍然是私有的,仅供一小部分黑客使用,所以,泄露凭证的规模可想而知。
鉴于地下黑市正在销售支持自动凭证填充攻击的被盗凭证和专用工具,这就意味着发动此类攻击不需要任何特殊技能或知识,任何能拿出几百美元购买工具和数据的人都可以实施凭证填充攻击。
2020年,安全和内容交付公司Akamai在其发布的《互联网现状报告》中指出,仅失败的凭证攻击尝试就高达1930亿次,相比2019年的470亿次,使用凭证的登录攻击尝试数量猛增了310%+。而且,有些行业比其他行业更容易成为攻击目标——例如,仅金融服务行业就经历了 34.5 亿次凭证填充攻击。
Akamai于2021年5月发布的最新报告指出,凭证填充攻击数量出现了几次高峰,其中包括2020年末的一天,发生了超过10亿次攻击。研究人员认为,这些攻击应该与犯罪经济中发生的事件存在关联。
报告称,2020年末出现的凭证填充攻击高峰与2020年第一季度和第二季度的几起重大数据泄露事件有关,一开始在几个地下论坛的犯罪分子中流传。一旦这些被泄露的凭证开始传播开,恶意行为者就会用其针对各种目标进行攻击测试,其中影响最深的就是金融机构。
凭证填充攻击“加速器”
统计学上讲,凭证填充攻击的成功率非常低,但凭证数据集合的交易体量之大让攻击者觉得即便成功率低也依然值得尝试。
这些集合内含成千上万甚至数以亿计的登录凭证。以0.1%的成功率来算,如果攻击者持有一百万组凭证,则能够获取约 1,000 个成功破解的帐户。即使只有一小部分破解帐户带来可盈利的数据(通常形式是信用卡卡号或是钓鱼攻击中所使用的敏感数据),也值得发动这种攻击。
而且,得益于人们习惯重复使用密码,凭证填充攻击成功率也有了一定增长。数据指出,高达约85%的用户将相同的登录凭据重复用于多种服务。只要这种做法继续下去,凭证填充将继续保持有效。
此外,地下市场中出售的可用于发送凭证填充攻击的被盗凭证和工具,也进一步加剧了此类攻击,因为即便是没有任何技能和专业知识储备的人,也能通过几百美元购买到合适的工具和数据,成功发动攻击。
机器人技术的进步也使得凭证填充成为一种可行性攻击。Web 应用程序登录表单内置的安全功能往往包括蓄意时延机制,并且在用户多次尝试登录失败时会将其IP地址禁用。现代凭证填充软件会利用机器人同时尝试多方登录,而表面看起来登录是在各种设备类型上进行,且来自多个IP地址,借此绕开这些保护机制。恶意机器人的目的在于让攻击者的登录尝试有别于典型的登录流量,且这种方法十分奏效。
通常,唯一能让受害公司察觉到遭受攻击的迹象是登录尝试总体数量的增加。即使这样,受害的公司也很难在不影响合法用户登录服务的情况下阻止这些恶意尝试。
凭证填充带来的合规风险
自欧盟《通用数据保护法案》GDPR生效以来,世界各国监管机构对于数据保护都表现的极为重视,甚至出现了多起巨额罚款事件。
GDPR提出,个人数据泄露是指“由于违反安全政策而导致传输、储存、处理中的个人数据被意外或非法损毁、丢失、更改或未经同意而被公开或访问。”所以,即使是使用已泄露数据进行凭证填充攻击,但是企业自身的安全防护工作没有能够避免被未经授权的访问,也属于违规的一种。
同时,美国《健康保险携带和责任法案》(HIPAA)也规定“以HIPAA隐私规则所不允许的方式获取、访问、使用或披露个人医疗信息,等于损害安全性或隐私。”即使被非法访问的数据是被加密的,但是系统和数据受到了未经授权的攻击,也属于HIPAA隐私权规则所不允许的披露。
2018年,信用评级公司穆迪(Moody's)将“网络安全风险”纳入现有信用评级标准,受评者承受网络攻击的能力将被量化,融入最终的评级结果中。信用评级广泛影响到投资者在选择投资对象时所考虑的风险评估以及投资决定。对上市企业来说,重新考虑其网络安全和合规性方法,尤其是随着法规变得越来越难以遵守。不仅如此,针对特定的行业,也将面对更多不同的处罚规定。
如何检测凭证填充?
凭证填充攻击是通过僵尸网络和自动化工具发起的,这些工具支持使用代理将恶意请求分发到不同的 IP 地址。此外,攻击者经常配置他们的工具来模仿合法的用户代理。
所有这些使得防御者很难区分凭证填充攻击和合法登录尝试,尤其是在高流量网站上,突然涌入的登录请求并不罕见。也就是说,短时间内登录失败率的增加可能是凭证填充攻击正在进行的明显迹象。
与此同时,一些商业Web应用程序防火墙和服务使用更先进的行为技术来检测可疑的登录尝试,网站所有者可以采取措施防止此类攻击。
如何防止和缓解凭证填充?
一种有效的缓解措施是实施和鼓励使用多因素身份验证(MFA)。尽管一些自动网络钓鱼和帐户接管工具可以绕过 MFA,但这些攻击需要更多资源,而且比凭证填充更难集体实施。
由于多因素身份验证在一定程度上会影响用户体验,所以许多组织只是建议用户启用而不强制执行。如果觉得对所有用户账号强制执行多因素身份验证太过影响业务,折衷方案是为确定面临更大风险的用户自动启用它,例如,在他们的账户遭遇大量异常的登录尝试失败后。
很多大型企业已经开始主动监控公共数据转储,并检查受影响的电子邮件地址是否也存在于他们的系统中。对于在他们的服务中找到的此类帐户,即便其是在其他地方遭到的入侵,他们也会强制重置密码并强烈建议启用多因素身份验证。
想要监控员工使用工作电子邮件设置的帐户是否受到外部漏洞影响的公司,可以使用 HIBP 等服务为其整个域名设置警报。HIBP的公共API甚至被用于开发各种编程语言的脚本,这些脚本可以集成到网站或移动应用程序中。
最后,密码卫生应该成为任何公司员工安全意识培训的一部分。密码重用是导致凭证填充攻击的重要原因,因此无论是在工作中还是在家里,都应强烈反对这种做法。
用户可以使用密码管理器为每个在线帐户生成唯一且复杂的密码。如果在公共数据转储中检测到用户的电子邮件地址,其中一些应用程序甚至会自动通知用户。
总结
凭证填充会始终存在。由于无法完全消除这种行为,因此企业组织和用户能做的就是增加凭证填充攻击的困难性。弱密码和密码重用是账户安全的祸根;无论我们谈论的是游戏、零售、媒体和娱乐或是其他任何行业,这一点都至关重要。如果密码太弱或在多个账户中重复使用相同的密码,它终有一天会被泄露。人们需要提高对这些事实的认识,推广密码管理器和多因素身份验证亦是如此。
本文翻译自:
https://www.csoonline.com/article/3448558/credential-stuffing-explained-how-to-prevent-detect-and-defend-against-it.html