asp.net – 我可以在html源代码中看到ViewStateUserKey吗?
在使用4.0框架的asp.net webforms应用程序中,我们将ViewStateUserKey设置为一个唯一值,以阻止跨站点请求伪造漏洞.
我们最近没有通过漏洞测试,因为测试人员说他无法“观察”html源代码中存在的漏洞.我希望我可以简单地解码ViewState并查看ViewStateUserKey,但是,当我解码视图状态(使用Fiddler2 ViewState检查器或其中一个在线解码器站点,如http://ignatu.co.uk/ViewStateDecoder.aspx)时,我看不到ViewStateUserKey.我可以在viewstate中看到值,混合了一堆乱码,但ViewStateUserKey本身似乎是在乱码中编码的. 例如,这里是解码的视图状态(使用Fiddler2 ViewState检查器),一个页面具有一个DropDownList控件,其中包含4个值(Text1,Text2,Text3,Text4),您可以看到与乱码混合的值: ?-1665646599dfddddfText11gText22gText33gText44gddd?"H~E* =91??;??O!??;?O?B?g 这是同一页面,ViewStateUserKey设置为静态值“cat”(我知道当设置为静态值时,ViewStateUserKey没有用). ?-1665646599dfddddfText11gText22gText33gText44gddd?Gpb????c??uy?l????F3??>?h?~ 观点结束时的胡言乱语发生了变化;似乎ViewStateUserKey隐藏在乱码中.但有没有办法向漏洞测试人员证明这一点? 注意,如果我将enableViewStateMAC设置为“false”(当然在生产中永远不会这样做),我会得到不同的乱码,但我仍然无法在html源代码中看到ViewStateUserKey. 解决方法
ViewStateUserKey值通常不包含在有效负载本身的一部分中.相反,它是一种特殊的修饰符,在计算加密MAC(有效载荷末尾的乱码)时与有效载荷混合在一起.但由于MAC功能不可逆,因此无法根据MAC推断其ViewStateUserKey是什么.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ASP.NET中的SMTP头注入?
- EFCore 5 新特性 SaveChangesInterceptor
- asp.net-mvc – 如何根据用户在ASP.NET MVC中的选择对列表进
- .NET Core多平台开发体验[1]: Windows
- asp.net-mvc-3 – mvc razor editortemplate中的脚本
- 如何使用Entity Framework创建数据集并在asp.net中填充数据
- asp.net – Crystal Report仅显示第一页
- asp.net – 未定义Page_ClientValidate
- asp.net-mvc-4 – 如何在MVC 4中创建自定义WebSecurity.Log
- asp.net-mvc – 查找会话状态的所有使用
- Asp.net MVC中使用JQuery插件ajaxFileUpload上传
- ASP.NET检测到有潜在危险的 Request.Form 值解决
- asp.net – 使用Excel VBA从aspx页面表中检索数据
- asp.net-mvc – Jquery AJAX成功没有被Coded UI测
- 解决:目录不存在。<br>参数名: directoryVirtua
- asp.net – 如何防止网页上的CSS缓存?
- 如何检测当前应用程序池是否在IIS7.5和Asp.Net 3
- 如何在asp.net(C#)中创建动态页面?
- asp.net – 如何解决错误:当应用程序未在UserIn
- asp.net – 指向同一页面的动作链接