标题 简介 类型 公开时间
关联规则 关联知识 关联工具 关联文档 关联抓包
参考1(官网)
参考2
参考3
详情
[SAFE-ID: JIWO-2024-3356]   作者: 影 发表于: [2023-11-03]

本文共 [141] 位读者顶过

1 概要

  如果 Web 应用中会话 ID 的生成规则不完善,用户的会话 ID 就有可能被他人成功预测,从而造成会话劫持。为了避免生成可预测的会话 ID 而引入安全隐患,应当停止自己实现会话管理机制,而使用久经考验的编程语言或中间件(PHP、Java/J2EE、ASP.NET 等)提供的会话管理机制。 [出自:jiwo.org]

2 常见的会话ID生成方法

  为了预测会话 ID 的生成规则,首先就需要对常见的会话 ID 生成规则有所了解。会话 ID 的生成大多都是基于以下项目。

(1)用户 ID 或邮箱地址

(2)远程 IP 地址

(3)日期与时间(UNIX 时间戳或年月日时分秒的字符串)

(4)随机数

生成会话 ID 时,有时会原封不动地使用上述值,有时也会选取几种组合使用,然后再进行加密(十六进制或 Base64)或者散列函数处理。

3 使用推测出的会话 ID 尝试伪装

  攻击者推测出会话 ID 之后,就会在对象应用中试用。如果攻击取得成功,会话就会处于有效的状态,因此攻击者能立刻得到攻击是否成功的反馈。

4 伪装造成的影响

  攻击者成功伪装成用户后,就能够以用户的权限使用对象应用中的所有功能,如查看重要信息、发布 / 更新 / 删除数据或文章、购物、转账等。

  但是,那些浏览前需要再次输入密码的页面,即使伪装成功后也无法访问。因为会话劫持的攻击者并不知道用户的密码。因此,关键处理前要求用户再次输入密码(再认证),是防范会话劫持的辅助性对策。

  另一方面,如果更改密码时不需要输入当前密码,攻击者就能够通过更改密码而掌握用户的密码,这时攻击将造成更大的危害。

评论

暂无
发表评论
 返回顶部 
热度(141)
 关注微信