在讨论安全问题时,我的团队中的开发人员询问是否有办法判断viewstate是否已被篡改。我很尴尬地说我不知道答案。我告诉他我会发现,但我想我会在这里给某人一个机会先回答。我知道有一些自动验证,但如果没有启用事件验证,有没有办法手动完成?
答案 0 :(得分:6)
EnableViewStateMac页面指令
答案 1 :(得分:2)
默认情况下,ViewState是MIME编码的,并使用MAC密钥(来自计算机或来自web.config文件)进行散列,这有助于防止篡改(即解码爆炸)。如果您希望分别进一步保护和减少开销,也可以加密和压缩ViewState。请参阅MS ViewState和CodeProject.com
答案 2 :(得分:0)
您可以手动执行此操作,但您只需实现已经存在的相同算法。在页面上禁用ViewState验证通常是一个坏主意。