最近工作要求解决下web的项目的漏洞问题,扫描漏洞是用的AppScan工具,其中此篇文章是关于会话标识未更新问题的。下面就把这块东西分享出来。
原创文章,转载请注明
-----------------------------------------正题-------------------------
测试类型:
应用程序级别测试
威胁分类:
会话定置
原因:
Web 应用程序编程或配置不安全
安全性风险:
可能会窃取或操纵客户会话和cookie,它们可能用于模仿合法用户,从而使黑客能够以该用户身份查看或变更用户记录以及执行事务
受影响产品:
该问题可能会影响各种类型的产品。
引用:
“Session Fixation Vulnerability in Web-based Applications”,作者:Mitja Kolsek - Acros Security
PHP Manual, Session Handling Functions, Sessions and security技术描述:
技术描述:
在认证用户或者以其他方式建立新用户会话时,如果不使任何现有会话标识失效,攻击者就有机会窃取已认证的会话。通常在以下情况下会观察到这样
的场景:
[1] Web 应用程序在没有首先废除现有会话的情况下认证用户,也就是说,继续使用已与用户关联的会话
[2] 攻击者能够强制对用户使用已知会话标识,这样一旦用户进行认证,攻击者就有权访问已认证的会话
[3] 应用程序或容器使用可预测的会话标识。
在会话固定漏洞的普通探索过程中,攻击者在web 应用程序上创建新会话,并记录关联的会话标识。然后,攻击者致使受害者使用该会话标识针对服务
器进行关联,并可能进行认证,这样攻击者就能够通过活动会话访问用户的帐户。AppScan 发现在登录过程之前和之后的会话标识未更新,这意味着有
可能发生假冒用户的情况。远程攻击者预先知道了会话标识值,就能够假冒已登录的合法用户的身份。
攻击流程:
a) 攻击者使用受害者的浏览器来打开易受攻击的站点的登录表单。
b) 一旦打开表单,攻击者就写下会话标识值,然后等待。
c) 在受害者登录到易受攻击的站点时,其会话标识不会更新。
d) 然后攻击者可利用会话标识值来假冒受害的用户,并以该用户的身份操作。
会话标识值可通过利用“跨站点脚本编制”脆弱性(导致受害者的浏览器在联系易受攻击的站点时使用预定义的会话标识)来获取,或者通过发起“会话固
定”攻击(将导致站点向受害者的浏览器提供预定义的会话标识)来获取。