session漏洞:知道别人的sessionid就能强制访问需登录的页面

askquestion_007 2013-06-04 10:01:03
www.example.com不论是部署在tomcat5或6下按以下步骤均可强制登录:
www.example.com/secure.jsp是一个需要登录才能访问的页面
1. 用firefox登录该页面,然后用firebug查看cookie中的sessionId,比如等于XXX123
2. 用IE9访问链接www.example.com/secure.jsp;jsessionid=XXX123,无法查看,但当把cookie设置为禁用时
则可以访问到该页面。(说明先从cookie中查找sessionId,如果没有再用链接中的jsessionid,很自然的逻辑)
3. 换台电脑用IE8访问www.example.com/secure.jsp;jsessionid=XXX123,不论是否禁用cookie均访问成功

疑问:
1. 通过抓包工具很容易看到别人的sessionId,这样通过附加jsessionid且不是能为所欲为
2. 为何IE8不禁用cookie也能成功,难以理解 (chrome不同版本竟然也类似于IE9/8)

这个安全漏洞大家关注过么,如何解决?
...全文
6236 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
中华雪碧 2014-09-21
  • 打赏
  • 举报
回复
首先要能抓到sessionid才行。其次,一些重要的功能都有其他的验证方式,比如支付宝每次转账:有短信验证,安全证书验证,支付密码等等
杰少_ 2013-06-06
  • 打赏
  • 举报
回复
if(user==null){ 请登录 }
askquestion_007 2013-06-05
  • 打赏
  • 举报
回复
跟浏览器没有关系,因为chrome也一样,另外url重定向不可取,因为有正常用户如果禁用了cookie是需要通过jsessionid访问的,不能重定向
鸡肋啊 2013-06-05
  • 打赏
  • 举报
回复
引用 楼主 askquestion_007 的回复:
www.example.com不论是部署在tomcat5或6下按以下步骤均可强制登录: www.example.com/secure.jsp是一个需要登录才能访问的页面 1. 用firefox登录该页面,然后用firebug查看cookie中的sessionId,比如等于XXX123 2. 用IE9访问链接www.example.com/secure.jsp;jsessionid=XXX123,无法查看,但当把cookie设置为禁用时 则可以访问到该页面。(说明先从cookie中查找sessionId,如果没有再用链接中的jsessionid,很自然的逻辑) 3. 换台电脑用IE8访问www.example.com/secure.jsp;jsessionid=XXX123,不论是否禁用cookie均访问成功 疑问: 1. 通过抓包工具很容易看到别人的sessionId,这样通过附加jsessionid且不是能为所欲为 2. 为何IE8不禁用cookie也能成功,难以理解 (chrome不同版本竟然也类似于IE9/8) 这个安全漏洞大家关注过么,如何解决?
是不是浏览器的漏洞不清楚,不过你加个URL重定向应该可以避免这个问题
boy_3211 2013-06-05
  • 打赏
  • 举报
回复
如果换一个tomcat的版本,会不会出现这样的情况? 或者直接不要用cookie,直接用session,这样是否可行? 每个IE都会多多少少存在一些漏洞,或者跟本地的某个配置有关,或者跟某个插件有关,这些事不好说。
askquestion_007 2013-06-05
  • 打赏
  • 举报
回复
没人留意过这个问题?
askquestion_007 2013-06-05
  • 打赏
  • 举报
回复
只有自己实现sessionid机制,比如加盐绑定ip地址,但ip同样可以伪造 5555555555
askquestion_007 2013-06-05
  • 打赏
  • 举报
回复
重置session也没用啊,只要我想截获的那个人处于登录状态,就会在cookie中存在sessionid(不论你怎么变),我通过抓包工具抓到cookie得到最新的sessionid,就可以强制访问
小丑哥_V5 2013-06-05
  • 打赏
  • 举报
回复
引用 6 楼 shadowsick 的回复:
现在一般处理这个问题都是登录后,重新更新session,象security那样重新生成一个session tomcat7应该是有改进这个漏洞,好像是加入了随机数,具体你可以看下tomcat7的新特性,防止session伪造攻击
还有session劫持
小丑哥_V5 2013-06-05
  • 打赏
  • 举报
回复
现在一般处理这个问题都是登录后,重新更新session,象security那样重新生成一个session tomcat7应该是有改进这个漏洞,好像是加入了随机数,具体你可以看下tomcat7的新特性,防止session伪造攻击
askquestion_007 2013-06-05
  • 打赏
  • 举报
回复
有没有人关注该问题?

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧