2009-06-16 78 views
2

在我的asp.net項目中已經看到viewstate已經改變。無論如何檢查我的ViewState是否被篡改? (理想情況下用C#)檢測視圖狀態篡改

+0

索要代碼不會得到您的好評。我建議你發佈你的嘗試.... – 2009-06-16 12:24:34

+0

檢查[this](http://msdn.microsoft.com/en-us/library/ms178199(VS.85).aspx)有關Viewstate安全性的鏈接 – rahul 2009-06-16 12:24:57

回答

0

viewstate是使用machinekey(默認服務器mac)簽名的,但如果它只是你得到的錯誤,那麼它可能是一個傳輸錯誤或類似的錯誤(同樣,如果你運行一個農場,確保設置所有機器上的相同機器密鑰)

另外,如果您的安全後保護不在視圖狀態中存儲感性信息,請將其保存在會話中。

0

你可以在ViewState中添加一個加密校驗和,並檢查它是否仍回傳

編輯後正確的:讀書發表鳳凰的鏈接後,似乎已經有這樣的建在ASP的機制.NET,所以我的建議可能是沒用的...

0

有一個mecanism構建,檢查viewstate篡改攻擊。

您是否得到該頁面的視圖狀態無效,可能已損壞異常並懷疑被篡改?當您刪除回發之間的控件時,會發生此異常。