Session劫持与Session-ID的安全长度
2016-01-28 19:08
225 查看
Session劫持
Session劫持从Web Session控制机制处发动***,通常是对Session令牌管理的剥夺。因为HTTP通信使用许多不同的TCP连接,Web服务器需要一个方法来识别每个用户的连接。最有用的方法是当一个客户端成功认证后,该Web服务器向该客户端浏览器发送令牌。Session令牌通常由可变长度的字符串组成,并且它可以以不同的方式存储,如在URL中,在HTTP请求的cookie报头中(request header),或在HTTP请求中的其报头,或者在HTTP请求的主体中。Session劫持***通过窃取或预测有效的Session令牌来获得未经授权Web服务器访问权限。示例
例1 Session 代理人劫持在这个例子中,我们可以看到,第一个***者使用代理来捕捉一个有效的Session令牌称为“SessionID”,然后他使用该有效Session令牌获得未经授权的Web服务器访问权限。例2 跨站点脚本******者可以通过在客户端上运行恶意代码来获取Session令牌。这个例子说明了如何***者可以利用XSS***窃取Session令牌。如果***者发送恶意的JavaScript代码到受害人访问网站中或当受害者点击链接时,JavaScript将运行***者的注入脚本。如图中所示,它可以显示当前Sessioncookie的值;使用相同的技术则可能创建将此Session发送给***者。
<SCRIPT>alert(document.cookie);</SCRIPT>
注* 防止Cookie被盗请参见: 提高NodeJS网站的安全性:Web服务器防******技巧
Session ID的安全长度
Session ID应至少为128位长,以防止蛮力Session猜测***。在WebLogic中部署中描述到应指定至少给Session ID指定128位的长度。较短的Session ID使应用程序容易遭受蛮力Session猜测***。如果***者猜测到一个身份验证的用户Session ID,他可以接管用户的Session。猜测有效Session ID所需时间的预测公式:(2^B + 1) / (2 * A * S)其中:B是Session ID的位数
A是***者可以每秒尝试数
S是有效的Session ID数量,及在任何给定时间内被猜到的数目
如果***者操纵数千个僵尸计算机,他们可以尝试每秒猜测数万个SessionID这是合理的。如果该网站的人气很高,访问量很大,这种高流量的猜测可能在一段时间内被忽视。上有效的Session ID是提供给被猜出的数量的下限是有活性的网站上,在任何给定时刻的用户的人数。然而,放弃自己的Session,而不会记录任何用户将增加这个数字。 (这是有一个短期活动Session超时许多很好的理由之一。)有64位的Session ID。对于一个大型网站,假设***者可以每秒尝试10000次的猜测,并且当前存在10000个有效的Session ID。基于这些假设,***者成功地猜测到有效Session ID的时间将小于4分钟。现在假设一个128位Session ID。同样是一个访问量非常大的网站,***者可能会尝试每秒10000次的猜测与可供猜到10000个有效的Session ID。根据这些假设,***者在预期的时间内成功地猜出一个合法的Session ID将大于292年。整理自:Insufficient Session-ID LengthSession hijacking attack【我是搬运工~~】转自:http://www.tuicool.com/articles/zArY32n
相关文章推荐
- Collabtive系统SQL注入实验
- PHP版CMS爆破工具
- 国家信息安全技术水平考试(NCSE)三级教学大纲
- 转自CISPS《十年安全售前的经验与大家分享》
- 网络与信息安全监控内容
- metasploit
- [转]为什么你要懂点信息安全
- 信息安全不可低估的30个细节
- 透视信息安全类专业 选择未来发展方向
- 第六届内网安全战略与技术论坛召开
- SOC 2.0:通向下一代安全运营的关键
- SOC 2.0:下一代安全运营中心先睹为快【转载】
- 安全基础信息安全不可低估的30个细节
- (摘录)信息安全
- 关于开展保险业信息系统安全检查工作的通知
- 2009年证券期货业网络与信息安全事件应急演练
- 奥运期间证券期货业网络与信息安全突发事件应急预案(二)
- 信息安全国家标准列表
- 员工信息安全守则
- 信息安全制度实施指南