漏洞概述 该漏洞涉及通过登录端点进行用户枚举。攻击者可以通过发送特定的请求来验证用户名是否存在,从而获取敏感信息。 影响范围 此漏洞影响使用LemmyNet的用户,特别是那些通过登录端点进行身份验证的用户。 修复方案 1. 更改错误信息:将错误信息从 更改为 ,以减少攻击者通过错误信息推断用户名存在性的可能性。 2. 使用固定时间哈希:使用固定时间的哈希函数来验证密码,避免通过响应时间差异推断用户名是否存在。 3. 异步处理:将密码验证过程移至后台线程,避免阻塞主线程,提高系统响应速度和安全性。 POC代码 代码变更 评论与讨论 Nutomic 提到之前的虚拟哈希未能正常工作,导致验证速度过快,已更改为使用Lemmy的密码,并调整了时间。 dessalines 询问是否真的需要 ,并指出其他类似场景未使用。 Nutomic 解释了使用 的原因,以避免阻塞主线程,提高系统性能。 dessalines 最终批准了这些更改。 结论 该漏洞通过更改错误信息、使用固定时间哈希和异步处理密码验证过程得到了修复,提高了系统的安全性和性能。