JAVA年度安全 第三周 SESSION COOKIE SECURE 标识

http://www.jtmelton.com/2012/01/17/year-of-security-for-java-week-3-session-cookie-secure-flag/ 

What is it and why do I care ?

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

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

what should I do about it 

应对方法很简单。你必须在session cookie添加secure标识(如果有可能的话最好保证请求中的所有cookies都是通过Https方式传输)

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

Cookie: jsessionid=AS348AF929FK219CKA9FK3B79870H;

添加secure标识:

Cookie: jsessionid=AS348AF929FK219CKA9FK3B79870H; secure;

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

<session-config>
  <cookie-config>
    <secure>true</secure>
  </cookie-config>
</session-config>



如你所见,解决这个问题很简单。每个人都应该解决这个问题。

References

http://blog.mozilla.com/webappsec/2011/03/31/enabling-browser-security-in-web-applications/http://michael-coates.blogspot.com/2011/03/enabling-browser-security-in-web.htmlhttps://www.owasp.org/index.php/SecureFlag

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值