可以从别的电脑上找session拷备到我电脑上来伪造原电脑用户登陆吗?
这是我一直没理解session的一点。。我说和理论上可以吗?
客户端是通过会话COOKIE来获取服务器的SESSION内容的,所以有了这个会话COOKIE是可以通过其他途径同样获取到SESSION内容的。
当然首先这个SESSION还没被销毁。
可以从别的电脑上找cookie拷备到你电脑上来伪造原电脑用户登陆,一般xss就是用来干这个的。
客户端(也就是原用户的电脑)是没有session的,只有cookie,session存储在服务器中
存在本地客户端的是cookie不是session,cookie中包含sessionid。服务器收到包含sessionid的http请求后,对头字段cookie中的sessionid进行验证,并根据id取出对应的客户数据。
所以是可以伪造的不过不是伪造session而是伪造cookie
1 回答4k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
2 回答2.4k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.2k 阅读
1 回答569 阅读✓ 已解决
你没弄明白session和cookie的区别. session默认是个会话文件, 存在服务器端的, sessid就是会话文件的唯一标识,也就是文件名. 一般情况是通过cookie来传递sessid的, 因为http协议是无状态的, 所以每次都得传, 才能确定上一个请求和下一个请求的是不是同一个访问者.
那既然用sessid可以标识会话的唯一性, 那你能拿到它,自然也就可以登录别人的网站了. 你自己可以做个实验验证一下, 把
segmentfault
网站的cookie中的phpsessid拷贝到另一个浏览器上, 你会发现另一个浏览器也登录了.原理很简单,但是你要利用http协议的不安全来攻击别人, 操作起来就没有那么简单,你要嗅探局域网,如果网站用的是https,你就歇菜了.