Cookie投毒(也称为会话劫持)是一种攻击策略。攻击者通过篡改、伪造、劫持或以其他方式“污染”发回服务器的原本有效的Cookie,以窃取数据、绕过安全防护,或同时实现这两个目的。

什么是Cookie投毒?

在计算机领域,Cookie是针对特定网站和用户会话的数据,其中包括用户的兴趣或身份信息,由网站创建并存储在用户的浏览器中。网站和服务器可以使用Cookie跟踪使用趋势,例如网站上哪些页面的访问量较高;还可以定制和简化用户体验,例如优先显示与用户以往访问记录相关的内容、跟踪在线购物车中的商品,或自动填充个人信息。

攻击者可以在Cookie返回服务器之前将其截获,从中提取信息或进行篡改。攻击者还可以从头伪造Cookie,冒充用户访问更多用户数据。因此,“Cookie投毒”这一名称并不准确,因为它通常不仅指经过篡改(即“投毒”)的Cookie,还泛指从有效Cookie中窃取数据的各种方法或对Cookie的其他恶意利用。

为什么 Cookie 投毒很重要?

Cookie通常用于身份验证和跟踪用户是否已登录账户,这意味着其中包含可能被用于未经授权访问的信息。Cookie还可能包含用户输入的其他敏感数据,包括财务信息。攻击者实施Cookie投毒相对容易,他们可以利用被投毒的Cookie窃取用户身份以实施欺诈,或未经授权访问Web服务器并进一步利用漏洞。

Cookie投毒的工作原理是什么?

未以安全方式生成或传输的Cookie(或其他会话令牌)容易遭到劫持或投毒。跨站脚本攻击(XSS)是窃取Cookie的常见方式,但攻击者也可能通过数据包嗅探、暴力破解等多种方法,未经授权访问Cookie。Cookie投毒是涉及Cookie的多种恶意活动的统称,因此,Cookie投毒利用也可以准确地称为中间人攻击、会话劫持、会话固定或会话伪造等。

F5如何防止Cookie投毒?

尽管周密的应用开发可以限制Cookie中存储的敏感数据,或增加攻击者提取这些数据的难度,但Cookie的用途是识别用户、行为或两者。因此,应用将继续使用Cookie。适当的Web应用安全和会话管理(可由Web应用防火墙(WAF)提供)有助于保护身份识别数据并防御Cookie投毒。

The F5 Advanced WAF采用全代理数据检查、行为分析和机器学习,提供高级应用安全防护,包括先进的会话管理和SSL/TLS Cookie加密。通过拦截进出Web服务器的所有流量,该产品可以解密这些流量,并将其与服务器发送的信息进行比较,防止被篡改的Cookie到达服务器或应用。