如何防止ASP.NET MVC应用程序中的DoS攻击?

问题描述:

我不希望有人让F5我的网站或使用一些工具频繁地请求页面。如何防止ASP.NET MVC应用程序中的DoS攻击?

也就是说,阻止一个客户端频繁地调用Action或Controller。

我该如何执行此操作?有没有我可以使用的包?就像AntiXSS库一样。

+2

您只能允许用户每5秒发出一次HTTP请求。 *只允许您每x次执行一些操作以节省带宽。 – 2012-08-04 04:11:43

+1

相关:[在ASP.NET MVC中实现请求限制的最佳方式?](http://*.com/questions/33969/best-way-to-implement-request-throttling-in-asp-net-mvc) – 2014-06-16 14:56:33

+0

@AlexW SO可以进行节流,但这还不足以阻止DOS攻击,因为它基于IP地址,可以在秒内更改一百万次,显然不是由我自己而是由黑客所致 – 2016-09-23 15:58:29

大多数这些功能都将在IIS管理器中找到。像Dynamic IP Restrictions应该帮助。通过Microsoft's Best Practices for Preventing DoS/Denial of Service Attacks阅读,这提供了一个很好的事情清单。

也根据this videoCloud Flare能够防止这些攻击与他们的免费服务。

+0

动态IP限制是否适用一个负载均衡,无状态的Web农场?它看起来不像我读的描述。我的意思是这个模块跟踪跨多台机器的IP请求,还是只跟本地机器? – 2013-10-30 18:23:17