2013-07-25 54 views
2

我们的一位客户对我们的应用程序进行了渗透测试,并在使用Cookie时报告缺失的标志。将安全和httpOnly标志添加到过期的cookie是否有意义?

设置cookie时,我们应始终使用httpOnlysecure标志。

经过一番测试后,我意识到cookie设置时实际上使用了这个标志,但有一个例外:注销。

注销某些cookie时,设置了过去的到期日期,删除cookie,securehttpOnly未被使用。

这是否代表安全风险?在设置过期的cookie时设置这些标志是否有意义?

回答

1

不,假设您的应用程序中没有漏洞,则在注销时该标志无关紧要。

但是,您应该做钢笔测试人员说的事情,因为如果未设置标志,您的应用中可能存在其他安全缺陷,可以使用此Cookie进行利用。换句话说,如果你的应用程序在其他方面是安全的,那么这个cookie就不重要了,但它可能很重要,因为没有保证你的应用程序是安全的。

一个示例是没有正确终止或关闭会话的应用程序。注销cookie被发送到没有标志的客户端,因此以某种方式受到损害,如MitM或Wire Sniffing。攻击者将cookie提交回应用程序以及旨在利用漏洞的任何其他任意数据,从而触发漏洞并通过复活前一个或接收一个新的(如着名的NULL会话攻击)来获得实时会话。 。

这是一个无用的单个安全漏洞的典型案例,但增加了一个链接,可以用来获得折衷。

+0

你的前两段话是说两种不同的东西? – PeeHaa

+0

对于某些情况下,“不安全”的cookie是jsessionidsso(Tomcat中的单点登录)。在注销并在服务器端执行session.invalidate()时,它设置为过期。 – Tinchogob

+0

@PeeHaa我试图澄清。我想说的是,如果应用程序中没有其他漏洞(这不太可能),那么就不需要标记此cookie。然而,可能还有其他漏洞,因此最好不必要地标记cookie,而不是给攻击者链中的额外链接。 –

相关问题