| 网站首页 | 资讯 | Hack | 漏洞 | 网管 | 编程 | 培训 | 品黑页 | 软件 | 论坛 | 动画 | 视频 | 经典 | 教学站 | 黑客点睛 | 
服务导航 我要发布 主力频道 空间域名 精华收集 服务器出租 黑客培训 光盘刻录 特色服务 解决方案 我要投诉
您现在的位置: 华夏黑客同盟 >> Hack >> 脚本漏洞攻击 >> 正文 用户登录 新用户注册
[组图]Session Fixation 攻防实战           ★★★ 【字体:
Session Fixation 攻防实战
作者:IT168 文章来源:IT168 点击数: 更新时间:2008-9-22

  最近笔者在网上看到一个新文章《JSESSIONID Regeneration in Struts 2》,讲的是一段代码,在STRUTS 2框架中,防御Session Fixation攻击。笔者比较老土,看不懂英文,还好能看懂代码,发现这是一种平时开发中(至少自己是这样),从来没注意过的攻击。关于这种攻击,刺在自己博客上写了篇文章《关于Session Fixation》。我在邮件列表,和文章后面跟帖讨论了下,但是仍然感觉自己说的不是很清晰,毕竟没有实战,所以实践了一下自己的想法,重新写篇文章补充下。注:为了保证质量,本文假设读者对cookie和session基本概念和特性已经掌握。

  这是一个很常见的登录过程,首先验证用户名密码是否正确,正确后,干掉当前session。然后重新获取一个新session,继续执行赋予用户管理权限。关键就是,这段代码干掉了当前的session。当服务器和客户端之间的session销毁时,因为客户端仍然向服务器发送数据,所以服务器会自动的新生成一个session。为什么以前的session不能用呢?

  在作者刚看到邮件的时候,一直看不明白,因为站在程序员的角度,作者不知道为啥非要让session销毁了。如果不消毁session,程序一样正确执行,攻击者不知道管理员密码,一样进不来。如果这个人知道管理员密码,那么对于程序本身来说,这个人就已经是一个程序所期望的管理员了。但是换个角度想一下,管理员在管理网站的时候,通常都做些什么?在管理员登陆前,他还只是一个普通的浏览者,会去浏览一些公开页面,他可能在哪里发现了问题,需要进后台处理一下,于是他就登录了。就在这个很普通的过程中,如果程序没有在认证成功后,销毁session,则管理员在登录前和登录后,session是同一个。假设我们能够在前台,使用了XSS一类手段,获得了这个session,等他一旦登录,就“野鸡变凤凰”了。

  在以往的XSS攻击、CSRF攻击中,我们总是把目光放在管理员登陆后,XSS他、CSRF他。都没有想过,如果管理员登陆后,不浏览XSS页面,怎么攻击?看到这段防御代码,作者突然想到了一种攻击手段,只要管理员曾经浏览过XSS页面(这时候只是普通用户),就能在他登录后,即使不再浏览XSS页面,也能攻击到。

  为了详细的描述和重现这种攻击方式,作者特意下载了动网BBS 8最新版本。首先做两个实验,来验证动网是否存在这个漏洞:

  1、在登录前,查看自己的SESSIONID,管理员前台登录后,再查看SESSIONID,登录后台,再查看。发现这个值没有变动。就是说动网存在这个漏洞,登录前后,SESSIONID没有变。

  2、为了保证实验成功,需要知道动网的后台是否仅仅通过SESSION来验证身份。登录后,抓包。修改包中的信息,修改username,提交,返回数据表明可以同过。再修改SESSIONID,却出现“本页面为管理员专。。。”字样,没有通过认证。这说明动网后台是仅仅通过session验证的,而不是cookie。

  证明了这个漏洞的存在,下面就利用这个漏洞,攻击登录前的管理员。动网论坛的用户身份模式,可以很好的诠释这种攻击,用过动网的读者都知道,浏览动网的用户分为以下几种级别:“未注册用户”、“注册用户”、“前台管理员”、“后台管理员”。我们先架设好攻击环境,之后让一个未登陆的管理员,浏览论坛的XSS页面,之后登录到后台。

  总体来看,利用这样的漏洞,需要以下一些东西:

  1、a.php,一个脚本,用来接收XSS页面传来的SESSIONID,然后保存在haha.txt,可以放在任何一个支持php的空间里。

  2、go.py,没隔5秒,请求一次haha.txt,获得SESSIONID值。之后把获得的SESSIONID值放入请求的COOKIE中,请求后台页面的“添加管理员功能”。

  3、一个前台的XSS漏洞,这个漏洞我们自己可以构造出来。

  作者为了仅仅说明这个问题,而不是大量的制造攻击,所以单独为动网写了个对应的脚本,go.py这个脚本,请求了动网后台的“添加管理员功能”。他会一直去请求,不管管理员有没有登录,在登录前,会收到“本页面为管理员专。。。”字样。但是管理员一旦登录,就会请求成功这个功能。

  下图可以说明这次模拟实验:

  

  第一步。首先架设好辅助攻击的服务器,服务器中有两个文件,一个是a.php。这个文件用来接收XSS发来的SESSIONID信息,然后保存为haha.txt。

[1] [2] 下一页

责任编辑:朱倩  联系方式  Email:朱倩
电话:51228163
  • 上一篇黑客:

  • 下一篇黑客: 没有了
  • (只显示最新5条。评论内容只代表网友观点,与本站立场无关!)
    姓 名:
    * 游客填写  ·注册用户
    主 页:
    评 分:
    1分 2分 3分 4分 5分
    评论内容:
    验证码: *
  • 请遵守《互联网电子公告服务管理规定》及中华人民共和国其他各项有关法律法规。
  • 严禁发表危害国家安全、损害国家利益、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容的评论 。
  • 用户需对自己在使用本站服务过程中的行为承担法律责任(直接或间接导致的)。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表网友个人观点,与本网站立场无关。
  • 最新hack更新
    最新推荐资讯
    相关黑客
    一次WinRoute后门攻防
    MSN 信息安全攻防实战
    内网攻防感悟
    溢出攻击的攻防实战
    黑客攻防之PPPoE验证以及对其的利
    实战分析 一次WinRoute后门攻防
    无线攻防:破解WEP密钥
    SQL注入漏洞攻防必杀技
    攻防兼有 瞬间掌控 虚拟主机攻防
    IIS常见漏洞攻防实战
    最新会员软件
    最新推荐视频
    最新推荐动画

    Copyright @ 2005 77169.Net Inc. All rights reserved. 华夏黑客同盟 版权所有
    北京市电信通提供网络带宽

    mailto:webmaster@77169.net
    咨询QQ号:836982 / 59280880
    联系站长 QQ38588913
    热线电话: 86-10-67634029/676229433
    京ICP证041431号