行业新闻与博客

什么是会话劫持以及它是如何工作的?

对于大多数人来说,登录网站或门户是日常使用互联网的一部分。每次登录网站时,都会创建一个会话。会话是两个系统之间的通信,会话一直保持活动状态,直到用户结束通信。启动会话对于通过互联网进行通信至关重要,但也带来了会话劫持的风险。请继续阅读,了解有关会话劫持、其工作原理以及如何保护自己的更多信息。

什么是会话劫持?

会话劫持(有时称为 cookie 劫持、cookie 侧面劫持或 TCP 会话劫持)发生在攻击者接管您的互联网会话时。当您在线购物、支付账单或检查银行余额时,可能会发生这种情况。会话劫持者通常以浏览器或 Web 应用程序为目标,其目的是控制您的浏览会话以获取您的个人信息和密码。

会话劫持者会欺骗网站,让网站误以为他们就是您。此类攻击可能会对应用程序安全造成严重后果,因为它允许攻击者通过伪装成合法用户来获得对受保护帐户(及其包含的数据)的未经授权的访问。

什么是会话?

每次用户通过 HTTP 连接访问网站或应用程序时,该服务都会在打开通信线路并提供访问权限之前对用户进行身份验证(例如,通过用户名和密码)。然而,HTTP 连接本身是“无状态的”,这意味着用户执行的每个操作都是独立查看的。因此,如果我们仅依赖 HTTP,用户将必须为他们执行的每个操作或他们查看的页面重新验证自己的身份。

塞申斯克服了这一挑战。用户登录后,会在托管网站或应用程序的服务器上创建会话,然后作为初始身份验证的参考。只要会话在服务器上保持打开状态,用户就可以保持身份验证,并且可以通过注销服务来结束会话。某些服务在一段不活动时间后结束会话。

许多服务通过发出会话 ID(存储在临时会话 cookie、URL 或网站上的隐藏字段中的一串数字和字母)来创建这些会话。在某些情况下(但不是所有情况),这些会话 ID 是加密的。通常,会话 ID 基于可预测的信息,例如用户的 IP 地址。

会话劫持是如何工作的?

以下是会话劫持如何运作的假设示例:

第 1 步:互联网用户正常登录帐户。

这可能是他们的在线银行或信用卡帐户、在线商店、应用程序或门户。应用程序或网站会在用户的浏览器中安装临时会话 cookie。该 cookie 包含有关用户的信息,允许网站让用户保持身份验证和登录状态,并跟踪他们在会话期间的活动。会话 cookie 保留在浏览器中,直到用户注销(或在设定的不活动时间后自动注销)。

第 2 步:犯罪分子获取互联网用户的有效会话的访问权限。

网络犯罪分子使用各种方法来窃取会话。通常,会话劫持涉及窃取用户的会话 cookie、在 cookie 中定位会话 ID,并使用该信息来接管会话。会话 ID 也称为会话密钥。当犯罪分子获得会话 ID 时,他们可以在不被发现的情况下接管会话。

第 3 步:会话劫持者因窃取会话而获得回报。

一旦原始互联网用户继续其在线旅程,劫持者就可以利用正在进行的会话实施各种恶意行为。这可能包括从用户的银行帐户窃取资金、购买物品、窃取个人数据以进行身份盗窃,或对重要数据进行加密,然后要求赎金以归还。

会话劫持攻击通常针对具有大量活动通信会话的繁忙网络进行。这为攻击者提供了大量可供利用的会话,并为攻击者提供了一定程度的保护——因为服务器上的活动会话数量使得它们不太可能被检测到。

会话劫持的类型

跨站脚本

跨站点脚本攻击涉及网络犯罪分子利用 Web 服务器或应用程序中的安全漏洞。跨站点脚本攻击涉及攻击者将脚本注入网页。这些会导致您的网络浏览器向攻击者泄露您的会话密钥,以便他们可以接管会话。

会话端劫持(也称为会话嗅探)

在这种类型的攻击中,犯罪分子需要访问用户的网络流量。当用户使用不安全的 Wi-Fi 或参与中间人攻击时,他们可能会获得访问权限。在会话端劫持中,犯罪分子使用“数据包嗅探”来监视互联网用户的网络流量以搜索会话。这使得攻击者能够获取会话 cookie 并使用它来接管会话。

会话固定

在会话固定攻击中,犯罪分子创建一个会话 ID 并诱骗用户使用它启动会话。这可以通过向用户发送一封电子邮件来实现,其中包含攻击者想要访问的网站的登录表单的链接。用户使用虚假会话 ID 登录,为攻击者提供了可乘之机。

浏览器中间人攻击

这类似于中间人攻击,但攻击者必须首先用木马感染受害者的计算机。一旦受害者被欺骗在系统上安装恶意软件,恶意软件就会等待受害者访问目标站点。浏览器中间人恶意软件可以无形地修改交易信息,还可以在用户不知情的情况下创建额外的交易。由于请求是从受害者的计算机发起的,因此 Web 服务很难检测到这些请求是伪造的。

可预测的会话令牌 ID

许多 Web 服务器使用自定义算法或预定义模式来生成会话 ID。会话令牌越可预测,它的强度就越弱。如果攻击者可以捕获多个 ID 并分析其模式,他们也许能够预测有效的会话 ID。(这种方法可以与暴力攻击相比较。)

会话劫持与会话欺骗有何不同?

会话劫持和会话欺骗有相似之处,但不是同一类型的攻击。两者之间的主要区别在于,当合法用户已经登录到 Web 会话时,就会发生会话劫持。相比之下,当攻击者冒充用户启动新的 Web 会话(这意味着用户当时不必登录)时,就会发生会话欺骗。

这种区别意味着合法用户会经历不同的攻击。通过会话劫持,攻击者中断会话可能会导致网站或应用程序行为异常,甚至对受害者来说崩溃。但是,由于用户在会话欺骗攻击期间没有主动登录,因此他们在下一个会话期间不会遇到任何中断。

会话劫持攻击的影响

不采取措施防止会话劫持会带来许多风险。其中一些危险包括:

身份盗窃

通过未经授权访问帐户中保存的敏感个人信息,攻击者可以在被黑网站或应用程序的范围之外窃取受害者的身份。

金融盗窃

通过会话劫持,攻击者可以获得代表用户进行金融交易的能力。这可能涉及从银行账户转账或使用保存的付款信息进行购买。

恶意软件感染

如果黑客能够窃取用户的会话 ID,他们也可能能够用恶意软件感染用户的计算机。这可以使他们获得对目标计算机的控制并窃取他们的数据。

拒绝服务 (DoS) 攻击

获得用户会话控制权的黑客可能会对他们所连接的网站或服务器发起 DoS 攻击,从而中断服务或导致网站崩溃。

通过 SSO 访问其他系统

SSO 代表“单点登录”。如果启用 SSO,攻击者还可以获得对其他系统的未经授权的访问,从而进一步分散会话劫持攻击的潜在风险。这种风险对于组织来说尤其重要,其中许多组织现在为员工启用了 SSO。最终,这意味着即使是具有更强大的身份验证协议和不太可预测的会话 cookie 的高度保护的系统(例如那些存储财务或客户信息的系统),也可能只能像整个系统中最薄弱的环节一样受到保护。

会话劫持攻击示例

变焦轰炸

在 Covid-19 大流行期间,世界转向 Zoom 等视频会议应用程序。这些应用程序成为会话劫持者的热门目标,甚至赢得了“缩放轰炸”的绰号。有新闻报道称,会话劫持者加入私人视频会话,在某些情况下大喊脏话、仇恨语言并分享色情图片。作为回应,Zoom 引入了更严格的隐私保护措施,以最大程度地降低风险。

松弛

2019 年,漏洞赏金平台的一名研究人员发现了 Slack 中的一个漏洞,该漏洞允许攻击者强迫用户进行虚假会话重定向,以便窃取他们的会话 cookie。这使得攻击者可以访问 Slack 中共享的任何数据(这对于许多组织来说可能很重要)。Slack 迅速响应,并在研究人员强调该漏洞后 24 小时内修复了该漏洞。

GitLab

2017 年,一名安全研究人员在 GitLab 中发现了一个漏洞,其中用户的会话令牌可直接在 URL 中获取。进一步调查发现,GitLab 还使用了永不过期的持久会话令牌,这意味着攻击者一旦获得一个会话令牌,就可以使用它而不必担心过期。这种公开暴露和持久性令牌的组合带来了严重的风险,使用户面临通过暴力攻击进行会话劫持的各种严重攻击。GitLab 通过更改使用和存储这些令牌的方式修复了该漏洞。

如何防止会话劫持

请遵循以下会话劫持预防提示来提高您的在线安全性:

避免使用公共 Wi-Fi

避免进行银行业务、网上购物或通过公共 Wi-Fi 登录电子邮件或社交媒体帐户等重要交易。附近可能有网络犯罪分子正在使用数据包嗅探来尝试获取会话 cookie 和其他信息。

使用 VPN

如果您确实需要使用公共 Wi-Fi,请使用虚拟专用网络 (VPN) 最大限度地提高您的安全性并防止会话劫持者侵入您的会话。VPN 会屏蔽您的 IP 地址,并通过创建您的所有在线活动都经过的私人隧道来保护您的在线活动的私密性。VPN 会对您发送和接收的数据进行加密。

警惕网络钓鱼和其他在线诈骗

避免点击电子邮件中的任何链接,除非您知道该链接来自合法发件人。会话劫持者可能会向您发送一封电子邮件,其中包含可供点击的链接。该链接可能会在您的设备上安装恶意软件或将您带到登录页面,该页面将使用攻击者准备的会话 ID 将您登录到站点。

注意网站安全

信誉良好的银行、电子邮件提供商、在线零售商和社交媒体网站都有适当的保护措施来避免会话劫持。留意 URL 以 HTTPS 开头的网站 - S 代表“安全”。使用有问题的在线商店或其他可能没有强大安全性的提供商可能会让您容易受到会话劫持攻击。

使用防病毒软件

安装信誉良好的防病毒软件,该软件可以轻松检测病毒并保护您免受任何类型的恶意软件(包括攻击者用来执行会话劫持的恶意软件)的侵害。通过在所有设备上设置自动更新,使您的系统保持最新状态。

需要帮助吗?联系我们的支持团队 在线客服