2013-12-19 54 views
0

爲了防止.NET 4.0 MVC Web應用程序中的跨站點僞造攻擊,我們使用@Html.AntiForgeryToken()生成了每頁CSRF令牌。令牌驗證是在每個請求處理中使用由框架在各自的控制器和操作中提供的api來實現的。如何使用防僞技術防止.NET 4.0 MVC Web應用程序中的跨站點僞造攻擊(重放攻擊)

當來自客戶端瀏覽器的請求被追蹤並再次從具有此跟蹤數據的代理工具發送時,服務器應用程序將接受它並且不顯示驗證錯誤。

跟蹤數據將包含生成的令牌值(__RequestVerificationToken)與請求主體。

該應用程序啓用了SSL(自簽名)並託管在HTTPS中。

工具能夠從請求主體複製驗證的令牌,並且他可以用這個舊的令牌發送新的請求。即驗證的令牌仍然可用。任何方式使無效或刪除已經生成的表單令牌。

我們想知道,是否有其他安全措施要考慮防止跨站點攻擊。

回答

2

你描述的攻擊是中間人/重放攻擊,而不是CSRF攻擊。 MVC的反CSRF API確實支持重放保護,但是設置這個並不重要,並且聽起來不像這樣,它肯定會解決你的問題。例如,如果我可以使用MITM您的應用程序,那麼我可以完全訪問您的身份驗證Cookie。我只需要能夠登錄就可以了,而且我不必擔心我的CSRF令牌是否有效,因爲我可以讓服務器隨時爲我生成新的有效的CSRF令牌。

您試圖解決的確切情況是什麼?