Cookie欺骗的原理
当访问asp.net网站时(这里用的是chrome), 如下图所示:
然后点击“审查元素”菜单时,如下所示:
再查看"Resources"下的Cookie,你会发现,存在一个叫ASP.NET_SessionId的Cookie变量,如下所示:
Session,通常服务端使用方式Session["uid"]获取到的值就是你的用户名。A与B访问该页面,服务器返回Session["uid"]的值不同。为什么?那是通过个ASP.NET_SessionId的Cookie变量来区分不同的Client的。但Client访问服务器后,服务器给每个Client分配的该值不同。那么通过这个唯一值就可以获取Session["uid"]的值。如下图
那么好,看图说话。很清楚,传给服务器的sessionID不同,那么服务器就会认为你是另一个人。如何伪装成另一个人呢?如果修改自己Cookie的ASP.NET_SessionId呢?我是同时用FireFox和IE同时登入一个需要登录的网页。然后FIREFOX安装Web Develop插件,IE安装了HttpWatch。 这样从IE的HttpWatch中查看Cookie。将ASP.NET_SessionId的值复制。然后在FireFox中的Web Develop下修改当前ASP.NET_SessionId的值。粘帖刚才复制的。然后再点击Firefox中的页面就会发现登入人已经更换为IE中登入的那个帐号了。
posted on 2012-04-01 16:25 malaikuangren 阅读(999) 评论(0) 编辑 收藏 举报