2

我有一个包含受保护内容的网站,最近我开始收到很多关于登录失败的电子邮件警报。这真的很烦人,平均在一两分钟内尝试一次。

因为我将网站托管在专用的 Windows 机器上并记录 IP,所以我意识到这些请求不是来自我网站的常规访问者(因为 statcounter 不记录 IP),而是来自许多不同 IP 地址的自动脚本(主要来自乌克兰,但主要是反向 DNS 无法找到它们)。

我在 Windows 防火墙中创建了一个阻止规则,并开始添加我在日志文件中找到的所有地址,但它们很多。我已经添加了大约 50 个(10 个 IP 的 5 倍),这只会让它们停止几个小时,然后新的 IP 开始出现。

我实际上是一名软件程序员,管理真正的服务器并不是我最好的一面。有什么工具可以用来防止这些攻击吗?

4

2 回答 2

4

您应该在代码中实现速率限制器。

如果您在 5 分钟内从同一 IP 收到超过(例如)4 个失败的登录请求,则需要验证码才能进行下一次登录。
Google 帐户登录页面正是这样做的。

于 2011-09-14T17:34:53.370 回答
1

它不是一种工具,但一种可能有用的做法是在您的页面上不包含“登录”一词,并且不要将您的 aspx 页面命名为“登录”。这可能有助于防止正在寻找相关常用关键字的爬虫找到您的登录页面。

使用看起来像文本的图像替换包含“登录”的文本链接并更改登录表单的名称可能会大大防止爬虫甚至找到您的登录页面。

例子:

<a href="li.aspx"><img src="li.png" /></a>
于 2011-09-14T17:37:55.060 回答