我正试图解决ATG/JBoss/Tomcat站点上的会话固定/劫持/劫持问题。看来,到目前为止,最公共的建议是:会话劫持:抑制会话ID的过滤器的优点/缺点
授予新的会话用户登录时,这可以防止攻击者能够预测受害者的会话ID。我首先尝试了这种方法,但我担心it may not work in my case
使用servlet filter可以在URL中传递会话ID(SID)时使会话无效。该过滤器还可以防止URL重写以创建链接w/SID
#2的优缺点是什么?有些我已经想到了:
优点:
- 这似乎是比#1一个更广泛的保护:#1防止恶意URL被传递给受害人,#2防止任何手段获取SID(不安全的无线网络,对机器的访问等) - 你不能仅仅传递你想要使用请求参数的SID!
缺点:
- 会话管理会出手的用户,无需启用Cookie。
- 如果用户点击指定的链接w/jsessionid,普通用户将被注销,但由于过滤器的行为,我不相信系统中会有任何合法链接。
好点。这些漏洞的存在是否被认为是方法2的赞成或反对?我注意到CSRF的一个常见修复实际上是使用URL重写,感叹。 – 2010-11-03 19:33:29
@Adam Rabung他们是无关的。我不知道url-rewriting如何停止csrf ...(http://www.owasp.org/index。php/Cross-Site_Request_Forgery_%28CSRF%29_Prevention_Cheat_Sheet) – rook 2010-11-03 21:47:40
url重写会导致一个唯一的id(有效会话id)在url中,这使得构建一个有效的csrf链接变得非常困难。我认为。 – 2010-11-03 23:49:17