使JSESSIONID安全,从无安全上下文中创建登录问题

时间:2013-06-07 05:46:14

标签: java security jsp session

我已经获得了JSESSIONID,并使其成为HttpOnly。现在问题来了,我无法从不安全的页面(http协议)登录我的应用程序。如果JSEESIONID是安全的并且HttpOnly,有没有办法从安全页面(https)移动到不安全的页面(http),反之亦然。

1 个答案:

答案 0 :(得分:0)

  

如果JSEESIONID为secure

,有没有办法从安全页面(https)转移到不安全页面(http),反之亦然

没有一个cookie。 secure的重点是停止将明确发送的cookie发送到HTTP页面,窃听者可以在其中发布并使用它来访问HTTPS页面。

要建立一个系统,其中HTTP cookie的危害也不会破坏HTTPS cookie,您必须拥有两个具有不同名称和值的单独会话cookie。例如:一个http_session cookie,没有secure只有网站的HTTP版本读取,而https_session cookie只有secure,只有HTTPS版本读取。登录过程必须设置两个cookie,并且必须修改会话系统以将两个会话ID绑定到同一个会话存储包。

  

我无法从不安全的页面登录我的应用程序

不得允许从HTTP页面登录。即使表单提交安全地发送到HTTPS地址,最终用户也无法告知这种情况,因此中间人攻击者可以轻松篡改登录表单以使其成为可能在建立HTTPS连接之前泄漏密码。 HTTP登录表单是一个典型的安全错误。

通常,在不损害安全性或可靠性的情况下,在站点内部交换HTTP和HTTPS之间很难做到正确。这很少值得。如果您有HTTPS地址,那么通常只能通过该地址提供服务。