13 会话管理的安全怎么测?token 过期、注销失效怎么验证?
2026/9/17...大约 2 分钟
13|会话管理的安全怎么测?token 过期、注销失效怎么验证?
开场先给命题:会话凭证(cookie、session、token、JWT)就是临时身份——它的一切安全问题都等价于身份冒用。围绕「生成、存活、销毁」全生命周期测。
回答思路
第一步:生成面
- 随机性是否足够(token 可预测就能伪造别人身份)
- JWT 的签名算法是否安全(none 算法绕过、弱密钥可爆破)
- 凭证里是否塞了敏感信息(JWT payload 只是 base64,裸读)
第二步:存活面
- 过期时间设置(永久有效的 token 等于永久后门)
- 过期后的行为(过期请求应被拒,而不是自动续期)
- 刷新机制(refresh token 的单次使用和轮换)
- 多端登录策略(一处改密全部下线才对)
第三步:销毁面(重灾区,必测项)
- 注销后旧 token 是否还可用(最经典漏洞)
- 改密后旧 token 是否失效
- 权限变更后旧凭证是否即时收缩
第四步:测试手法给操作链(对照实验)
- 登录拿 token A → 注销 → 用 token A 重放核心接口,看是否 401
- 登录拿 token A → 改密码 → 用 token A 重放
- 管理后台降权某用户 → 用其旧 token 调管理接口
一组对照实验讲完,可信度拉满。
收尾:讲 JWT 的特殊性
无状态设计让「服务端主动作废某个 token」变得困难(黑名单机制是补丁)——测 JWT 系统要额外关注注销兜底和密钥轮换。
考察重点
| 维度 | 说明 |
|---|---|
| 企业动机 | 注销不失效、改密不下线这类漏洞在漏洞平台常年高发且全靠人工发现——企业要能把这个信任链测全的人 |
| 过线标准 | 生命周期三段(生成存活销毁)+ 注销失效的对照实验 |
| 区分度 | JWT none 算法、refresh 轮换、密钥轮换这些细节说的是真研究过的 |
| 加分项 | 对照实验式的测试设计(体现实验思维) |
| 减分项 | 会话安全只会「测测过期时间对不对」,生命周期视角缺失 |
来源
整理自知识星球帖《面试情报 05|安全测试 20 题》,返回题库。