首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ViewState和安全设置生成错误

ViewState和安全设置生成错误
EN

Stack Overflow用户
提问于 2009-10-15 20:46:28
回答 1查看 258关注 0票数 1

我有一个奇怪的重复错误,我认为是与视图状态和安全设置有关。此错误每天在我客户的一个站点上出现1至6次:

来源: System.Web错误在: /detail.aspx?CaseID=1852

错误消息:无法验证数据.

堆栈跟踪: at System.Web.Configuration.MachineKeySection.**EncryptOrDecryptData(**Boolean fEncrypt,Byte[] buf,Byte[]修饰符,Int32 start,Int32 length,IVType ivType,布尔useValidationSymAlgo) at System.Web.UI.ObjectStateFormatter.Deserialize(String inputString)

在线研究已经导致了一个死胡同。我相信这与安全和ViewState有关。因为这是一个电子商务网站,我采取了额外的步骤,以防止一些待遇,包括XSS和CSFR。以下是我所采取的步骤:

Attacks)

  • Created
  • 打开了HTTPOnly Cookies (在安全Cookie标志上防止XSS样式ViewStateUserKey )(保护XSS样式Attacks)
  • Created a Basepage,所有页面都继承它而不是页面),在基本页中,我覆盖OnInit并将ViewStateUserKey设置为SessionID (在默认情况下,可以是overwritten)
  • ViewState加密Enabled

),以防止某些CSFR样式Attacks)

  • Explicitly启用validateRequest (默认情况下,但可以是overwritten)

  • ViewState加密Enabled

)

该网站托管在Win2003虚拟服务器上,使用ASP.NET 3.5 SP1AJAX。该页面没有使用缓存,我发现一些文章认为,当您将ViewStateUserKey键设置为唯一值(如SessionID )时,会出现问题。如果在浏览器中关闭cookie并尝试查看创建此错误的页面之一,则可以复制此错误。

注意,错误消息没有提到MAC失败。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-10-16 13:57:12

我的理论是,那些经历这个错误的人是在有代理/缓存服务器的网络上。我的解决方案是只在ViewStateUserKey是安全连接时设置它。大多数代理/缓存服务器只设置为缓存HTTP连接,而不是安全连接。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1574949

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档