是否足以根据用户名进行网站登录限制?

时间:2013-10-24 06:01:09

标签: security login throttling

例如,如果用户fred123在过去X分钟内登录Y次失败,那么我会阻止fred123尝试登录一段时间时间但在那段时间内,其他用户不会被阻止登录。这还不够好吗?

似乎它会起作用,因为一个暴力破坏者只能尝试每个用户名X次。我会将XY设置为较低的数字 - 可能都小于10。

2 个答案:

答案 0 :(得分:1)

您假设强力登录始终以相同的用户名为目标并尝试使用不同的密码。如果这是真的,那就没关系了。

但是,假设攻击者有一个来自您服务器的用户名列表,他们可以尝试使用明显的密码,例如“密码”,并逐步浏览每个用户以查看是否有人在使用它。这将完全绕过你的攻击可能发生的理论。

更好的系统是记录传入用户的IP地址,并计算在已知时间段内从该IP发生的失败尝试次数。如果超过一定数量,则阻止该IP尝试一段时间。如果是其他人试图使用他们的用户名登录,那么这样做对用户的干扰就会减少。

Linux有一个名为fail2ban的类似系统,它为尝试登录服务器的人采用这种方法。

您还应该尝试考虑您的网站的功能以及如何危及安全性。

答案 1 :(得分:0)

这是一个开始,但如果你对失败的登录尝试感到偏执,那么我也会限制ip地址。

如果你真的非常偏执,我会扼杀全球失败的尝试,并增加每次尝试的锁定时间,内部让我们说10分钟的窗口