从登录、提权、超时、退出和账号恢复五个时点检查会话,确认失效由服务端真正执行。

界面显示“已退出”,并不能证明旧会话已经失效。如果服务端仍接受原来的凭证,清理浏览器界面只是视觉变化。会话测试应关注权限在关键时点是否真实更新。
五个时点分别验证
| 时点 | 要回答的问题 |
|---|---|
| 登录成功 | 匿名阶段的会话标识是否按设计更新 |
| 角色或权限变化 | 旧权限是否继续被缓存使用 |
| 空闲或绝对超时 | 服务端是否拒绝过期会话 |
| 主动退出 | 原会话是否失去受保护操作能力 |
| 账号恢复或风险处置 | 其他设备会话是否按策略撤销 |
OWASP 会话指南强调,在身份或权限级别变化后更新会话标识,并由服务端执行超时与失效。测试账号的旧凭证只应在受控环境短暂用于验证,完成后清理,不写入报告。
Cookie 属性也要检查,但不能只看属性
根据应用需求配置 Secure、HttpOnly、SameSite 和作用域。它们分别约束传输、脚本读取及跨站行为等,不能替代服务端的授权判断。尤其不要把 HttpOnly 理解成页面有 XSS 也不会产生风险。
多节点部署容易遗漏状态同步
若会话数据分布在多个节点,应从不同入口复测退出与权限变更。缓存或复制延迟可能造成短时间差异,需要明确一致性目标和允许窗口。令牌形式的会话则应说明有效期、撤销机制与刷新策略。
验收同时观察正常用户是否频繁丢失工作。对长表单可以提供到期提示和安全的草稿恢复,避免为了体验把有效期无限延长。最终记录应描述“哪类会话在什么条件下失效”,而不是只写“Cookie 配置正常”。
参考:OWASP:Session Management Cheat Sheet。核对日期:2026年10月4日。
