2008-09-16 60 views
1

在討論安全問題時,我的團隊中的開發人員詢問是否有方法來判斷viewstate是否被篡改。我很尷尬地說,我不知道答案。我告訴他我會發現,但是我以爲我會給這裏的某個人一個首先回答的機會。我知道有一些自動驗證,但如果事件驗證未啓用,是否有辦法手動執行?如何判斷ASP.Net應用程序中的viewstate是否被篡改?

回答

6

EnableViewStateMac頁面指令

+1

更具體地說,您可以在逐頁基礎上或在web.config中啓用EnableViewStateMac。 – 2008-09-16 04:01:51

0

你也許可以做手工,但你只是要實現相同的算法,已經存在的爲您服務。禁用頁面上的ViewState驗證通常是一個糟糕的主意。

2

ViewState默認情況下是MIME編碼的,並用MAC密鑰(來自機器或web.config文件)進行哈希處理,這有助於防止篡改(即解碼爆炸)。你也可以加密和壓縮ViewState,如果你喜歡進一步保護和更少的開銷,分別。請參閱MS ViewStateCodeProject.com

相關問題