内容提要
2024年3月31日,PyPI用户报告未授权的双重身份验证(2FA)活动。管理员冻结了约120个可疑账户,并要求未启用2FA的用户重新验证邮箱。4月1日,进一步冻结了54个账户,未发现包裹篡改证据。用户应采取措施保护账户,包括使用独特密码和启用2FA。
延伸解读
事件性质:疑似撞库攻击
文章指出,此次事件与撞库攻击特征相似,即攻击者利用从其他服务泄露中获得的凭证尝试登录PyPI账户。但PyPI未观察到登录端点请求率异常,且认证速率限制也未显示异常活动。这表明攻击者可能使用了低频率、分散的尝试,以规避检测。
2FA的关键防护作用
文章强调,2FA正是为了防范此类攻击而设计。即使攻击者拥有正确的用户名和密码,仍需提供第二因素才能访问账户。因此,未启用2FA的账户在此次事件中面临更高风险,PyPI要求所有用户启用2FA,并建议保存恢复代码。
应对措施与用户行动
事件发生后,PyPI冻结了约174个可疑账户,并对未启用2FA的账户强制要求邮箱重新验证,同时使37万个邮箱验证失效。用户应使用唯一密码、验证邮箱、启用2FA、检查包和协作者,以保护账户安全。
Q&A
PyPI发生了什么未授权活动?
2024年3月31日,PyPI用户报告未授权的双重身份验证(2FA)活动,用户收到通知称他们已启用2FA,但他们并未进行此操作。
PyPI管理员采取了哪些措施来应对这一事件?
管理员冻结了约120个可疑账户,并要求未启用2FA的用户重新验证邮箱。
事件中是否发现了包裹篡改的证据?
未发现包裹篡改的证据,调查主要集中在未授权账户访问上。
用户应该如何保护他们的PyPI账户?
用户应使用独特密码、验证邮箱、启用2FA,并保存恢复代码。
事件的性质与什么攻击类型相似?
该事件与凭证填充攻击(credential stuffing attack)相似,攻击者使用其他服务泄露的凭证尝试登录PyPI账户。
PyPI如何防止使用被泄露的密码?
PyPI通过与Have I Been Pwned API集成,检查登录时使用的密码是否被泄露,从而防止使用被泄露的密码。