2017-08-30 149 views
0

我想實現Antifirgery令牌到我的網站(ASP.NET MVC不)後失效防僞標記。我嘗試了文中提到的以下步驟。ASP.NET - 請求/響應

preventing cross-site request forgery (csrf) attacks in asp.net web forms

實施後,我可以看到生成_RequestVerificationToken的cookie。我的問題是,

如何失效或產生爲每個請求和響應新的令牌?

其中一個團隊正在使用Burp Suite來測試應用程序,並且他們在Repeater中發佈請求,並且能夠從服務器獲得200條成功的消息,而不是期望的是服務器應該拋出錯誤並且令牌應該在一個特定的請求/響應調用。

能否請您提出實現這個更好的辦法?

回答

0

通過在提交表單之前修改或刪除__RequestVerificationToken cookie來使其無效。

  1. 我不能解釋它比Steve Sanderson更好。
  2. 一旦設置cookie,它是通過用戶的瀏覽會話重用。您可以使用不同的令牌,因此可以使用不同的令牌。我看不出有任何理由不把它應用到所有崗位 形式和行動。
  3. 基於用戶輸入(數據庫,用戶會話,...)來修改狀態的任何動作絕對應該使用這種 技術來保護。

For more information look at the Jeremy Cook's post