如何防止暴力破解攻击?

6

我正在处理认证和添加暴力保护。 我不确定应该如何继续。

我应该仅对特定IP地址的15次尝试失败后进行阻止,还是应该将其与用户名绑定? 应该同时设置验证码阈值和绝对截止时间吗?

是否应该遵循其他模式?


知道您使用的是什么类型的系统将会很有帮助。Linux/Windows?Apache? - hafichuk
@hafi 我提到了网站。我正在制作一个身份验证库,可以在ASP.Net上运行,因此平台取决于谁使用我的库。 - Earlz
我更担心的是拒绝服务攻击。 - CodesInChaos
这是相当主观的;我已经尝试调整它更多地偏向于“好”的主观方面而非“坏”的主观方面。另外,别忘了我们有一个用于一般安全问题的网站[security.SE]。 - user1228
@Will,请你把这个问题迁移到那里。我在提问时没有考虑到这一点,但是因为它不是直接的代码,所以在那里更合适。 - Earlz
@Earlz:我打算联系他们的版主,看看是否欢迎这样做。这仍然有点主观,如果SO的版主移动不合适的问题,姐妹站点的版主会非常生气(在[meta]上搜索“toilet”就知道我是什么意思)。如果他们同意,其中一个版主可以标记它进行迁移。 - user1228
1个回答

5
如果有人试图使用暴力破解,他可能会有一系列IP地址可供使用。您可以在每次尝试后增加延迟,并使其针对特定的用户名。验证码可以被攻破(程度不同),因此设置一个验证码阈值、一个“减慢速度”的阈值,然后将其封锁一个小时。
请注意,以这种方式进行暴力破解非常愚蠢,所以我更担心攻击者通过注入或其他方式从数据库中获取密码副本。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接