用户名枚举
用户名枚举 是什么?
用户名枚举账户枚举的一种特定形式,通过应用响应确认某个用户名是否存在,从而帮助攻击者更有针对性地发起后续攻击。
用户名枚举是账户枚举的一种特定形式,只是被探测的标识符是用户名,而非邮箱或手机号。区分 "用户不存在" 和 "密码错误" 的登录页、显示 handle 是否存在的找回密码流程、对未知用户返回 404、对密码错误返回 401 的 API、以及在注册时提示 handle 已被占用的表单,都会形成这种判定预言机。掌握有效用户名列表后,攻击者可以以低速、低尝试次数进行密码喷洒,针对性地实施社会工程,或在不同服务间关联同一身份。常见对策包括统一的错误信息、通用的密码重置提示、速率限制、检测到滥用时启用的 CAPTCHA,以及通过 MFA 降低后续影响。
● 示例
- 01
登录 API 对未知用户返回 HTTP 404,对密码错误的有效用户返回 HTTP 401。
- 02
找回密码表单对有效 handle 提示 "请检查邮箱",对无效 handle 直接显示 "用户不存在"。
● 常见问题
用户名枚举 是什么?
账户枚举的一种特定形式,通过应用响应确认某个用户名是否存在,从而帮助攻击者更有针对性地发起后续攻击。 它属于网络安全的 身份与访问 分类。
用户名枚举 是什么意思?
账户枚举的一种特定形式,通过应用响应确认某个用户名是否存在,从而帮助攻击者更有针对性地发起后续攻击。
用户名枚举 是如何工作的?
用户名枚举是账户枚举的一种特定形式,只是被探测的标识符是用户名,而非邮箱或手机号。区分 "用户不存在" 和 "密码错误" 的登录页、显示 handle 是否存在的找回密码流程、对未知用户返回 404、对密码错误返回 401 的 API、以及在注册时提示 handle 已被占用的表单,都会形成这种判定预言机。掌握有效用户名列表后,攻击者可以以低速、低尝试次数进行密码喷洒,针对性地实施社会工程,或在不同服务间关联同一身份。常见对策包括统一的错误信息、通用的密码重置提示、速率限制、检测到滥用时启用的 CAPTCHA,以及通过 MFA 降低后续影响。
如何防御 用户名枚举?
针对 用户名枚举 的防御通常结合技术控制与运营实践,详见上方完整定义。
用户名枚举 还有哪些其他名称?
常见的别称包括: 用户枚举, 登录枚举。
● 相关术语
- identity-access№ 008
账户枚举
利用应用响应差异来判断目标系统中存在哪些账户、邮箱或手机号的攻击。
- attacks№ 800
密码喷洒攻击
低速广撒网式攻击:用少量常见密码尝试大量账户,以避开账户锁定和速率限制阈值。
- attacks№ 232
撞库攻击
利用某一服务泄露的大量用户名/密码组合,在其他服务上自动重放登录,利用用户密码复用接管账户的攻击。
- attacks№ 821
网络钓鱼
一种社会工程攻击,攻击者冒充可信方,诱骗受害者泄露凭据、转账或运行恶意软件。
- network-security№ 904
限速
限速对某个标识(IP、用户、API key 或令牌)在一段时间内的请求数量加以约束,用以保护 API 和应用免受滥用、爬取和暴力破解。