在过期的cookie中添加安全和httpOnly标志有意义吗



我们的一个客户对我们的应用程序进行了渗透测试,并报告在使用cookie时丢失了标志。

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

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

注销时,一些cookie设置了过期日期,以便删除未使用的cookiesecurehttpOnly

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

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

然而,你应该按照笔测试人员的说法去做,因为如果没有设置标志,你的应用程序中可能存在其他安全漏洞,使用此cookie可以利用这些漏洞。换句话说,如果你的应用程序在其他方面是安全的,那么cookie就无关紧要了,但它可能很重要,因为无法保证你的应用是安全的。

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

这是一个经典的案例,即一个安全漏洞本身毫无用处,但它为一个可以用来获得妥协的链添加了一个链接。

最新更新