2012-08-04 104 views
18

我不希望有人讓F5我的網站或使用一些工具頻繁地請求頁面。如何防止ASP.NET MVC應用程序中的DoS攻擊?

也就是說,阻止一個客戶端頻繁地調用Action或Controller。

我該如何執行此操作?有沒有我可以使用的包?就像AntiXSS庫一樣。

+2

您只能允許用戶每5秒發出一次HTTP請求。 StackOverflow只允許您每x次執行一些操作以節省帶寬。 – 2012-08-04 04:11:43

+1

相關:[在ASP.NET MVC中實現請求限制的最佳方式?](http://stackoverflow.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

回答

12

大多數這些功能都將在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