前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >会话cookie中缺少secure属性

会话cookie中缺少secure属性

作者头像
季鸟猴
发布2022-11-14 19:44:32
3.6K0
发布2022-11-14 19:44:32
举报
文章被收录于专栏:季鸟猴的分享季鸟猴的分享

安全问题解析

Session cookies (或者包含JSSESSIONID的cookie)是指用来管理web应用的session会话的cookies.这些cookie中保存特定使用者的session ID标识,而且相同的session ID以及session生命周期内相关的数据也在服务器端保存。在web应用中最常用的session管理方式是通过每次请求的时候将cookies传送到服务器端来进行session识别。

解决方案以及带来的安全性

你可以设置附加的secure标识来提示浏览器只能通过Https(加密方式)方式来传输cookie,Http(未加密方式)方式则不可以。这种方式来保证你的session cookie对于攻击者是不可见的,避免中间人攻击(Man-in-the-Middle Attack,简称“MITM攻击”)。这并不是一个完美的session安全管理方案,却是一个重要的步骤。

具体做法,这里以Tomcat为例

方式很简洁。你可以甚至可以手工设置这个标识,如果你在Servlet3或者更新的环境中开发,只需要在web.xml简单的配置来实现。你只要在web.xml中添加如下片段:

代码语言:javascript
复制
<session-config>
  <cookie-config>
    <secure>true</secure>
  </cookie-config>
</session-config>

attention : 但是这种会导致,http的时候登陆失败,因为登陆一般是cookie中有sessionID ,现在非http无法存放sessionID了 就没发完成登陆了。

思路总结和验证

在session cookie添加secure标识(如果有可能的话最好保证请求中的所有cookies都是通过Https方式传输)

如下是示例:未添加secure标识的session cookie-可能会被泄露 Cookie: jsessionid=AS348AF929FK219CKA9FK3B79870H;

添加secure标识后: Cookie: jsessionid=AS348AF929FK219CKA9FK3B79870H; secure;

Q.E.D.

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安全问题解析
  • 解决方案以及带来的安全性
  • 具体做法,这里以Tomcat为例
  • 思路总结和验证
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档