asp.net form验证的问题
我大概知道asp.netform验证的时候需要给客户端Cookie写入一个票据,以后做什么操作的时候都首先判断这个票据存在否,然后再做其他操作,我想问的是如果客户端伪造一...
我大概知道asp.net form验证的时候需要给客户端Cookie 写入一个票据,以后做什么操作的时候都首先判断这个票据存在否,然后再做其他操作,我想问的是如果客户端伪造一个Cookie 是不是能骗过判断票据这个判断呢···
展开
展开全部
这就需要你对这个Cookie里面存储的东西进行加密处理了,如果不加密的话,客户伪造的Cookie是肯定可以通过你设置的判断的,并且,这个Cookie的加密方法一定要定时的去更新,因为客户知道明文,通过破译你的密文,达到了解加密的方法,这也是可以骗过验证机制的。
追问
那能不能给出你的解决方案呢···
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
cookie加密,关键数据是不会用cookie传值的
追问
我的意思是伪造一个cookie骗过票据的判断(仅仅是骗过票据的判断,比如很多票据里面都喜欢存IP地址作为票据)这个手段你觉得做得到么···
追答
ASP.NET 控件会自动给给cookie加密,如果客户端A有帐号密码,且登陆过,且COOKIE 没有过期,退出登陆后,再浏览网站会直接自动登陆。如果COOKIE 已过期,再登陆就需要重新输入帐号密码,服务器会给客户端A添加新的COOKIE,已过期的COOKIE无论在客户端是否清除,在你的服务器上都会验证失败的。现在来看客户端B,如果客户端B盗取客户端A的cookie信息,并通过其他技术把自己的IP变程客户端A的IP,如果这个cookie在你的服务器端没过期,服务器就会让他自动登陆,如果这个cookie在你的服务器上已过期,就需要重新输入帐号密码登陆。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询