随着攻击者越来越多地使用复杂的攻击,通过强化环境防范令牌被盗和令牌重播来防范数据外泄至关重要。 尽管具有挑战性,但你可以采取简单的步骤来减少攻击面,并增加攻击者成功窃取和重播令牌的成本。 保护令牌的可靠策略需要多层纵深防御策略,其中包括:
- 部署抗钓鱼认证
- 强化设备免受基于恶意软件的攻击
- 使用基于设备的条件访问和基于风险的条件访问
- 尽可能强制实施设备绑定令牌
- 实现基于网络的强制措施
本文档总结了令牌的基础知识、令牌被盗的方式,并提供可以采取的具体步骤来缓解环境中成功攻击的风险。 由于Microsoft Entra 中的复杂性和各种令牌,因此一些主题已通用化,但可能不会涵盖所有边缘情况。 但是,本指南涵盖了公共客户端的大多数方案。 机密客户 场景不在范围内。
基于密码的攻击仍由Microsoft看到的超过 99% 的攻击构成,是大多数已泄露标识的根本原因。 组织应部署防钓鱼 MFA 作为其标识的防线。 这样做会迫使对手调整他们的策略,转移到下一个逻辑攻击途径,这可能是令牌盗窃。 “虽然令牌被盗导致身份泄露比密码攻击少得多,但我们的检测表明,事件已增加到每天估计 39,000 起。 此外,在过去的一年里,我们看到了 AiTM 网络钓鱼攻击的 146 个% 上升,当攻击者欺骗用户点击链接并代表攻击者完成 MFA 时,就会发生这种情况。* 虽然部署防钓鱼 MFA 应该是首要任务,但组织还应开始准备令牌盗窃缓解策略,因为令牌盗窃攻击途径会随着时间的推移而继续增加。 随着基于密码的攻击逐渐失去效力,保护令牌免遭盗窃显得更加重要。
* 从 2024 年Microsoft数字防御报告 (第 40 页)
什么是代币?
令牌是在各种身份验证和授权过程中用于授予对资源的访问权限的数字对象。 他们验证用户或工作负荷的身份,并授予对资源的访问权限,而无需传输每个事务的密码或凭据。 令牌以安全格式封装有关用户标识及其权限的信息,确保敏感信息在身份验证过程中保持受保护。
在数字环境中,令牌通过启用安全高效的身份验证机制,在增强安全性方面发挥了重要作用。 它们通过尽量减少通过网络公开凭据,帮助降低凭据被盗的风险。 但是,他们具有一个特征,即如果设备或网络遭到入侵,攻击者可能会泄露它们。 然后,攻击者可以使用这些令牌作为已登录用户访问资源。
令牌类型摘要
有许多类型的令牌,但它们通常分为两类之一:
- 登录会话 – 这些令牌维护用户的登录状态,允许用户访问资源,而无需频繁重新进行身份验证。 这些信息将传递给标识提供者,以请求属于应用程序会话类别的令牌。 它们也称为 OAuth 2.0 标准中的刷新令牌。
- 应用会话 - 这些令牌授权访问特定应用程序。 它们生存期较短,在客户端和应用程序之间播放。 它们也称为 OAuth 2.0 标准中的访问令牌。
令牌也可能因客户端应用程序而异。 与 Outlook 和 Teams 等本机应用相比,通过浏览器访问的 Web 应用程序有时会使用不同类型的令牌。
最佳做法是,你应该优先保护登录会话令牌,因为这些令牌可以持续数周或数月,以防止被盗后可能导致持久的未授权访问。
这两个令牌系列之间的另一个区别:登录会话令牌的设计是可吊销的,而应用会话通常不是。 例如,仅当应用程序已集成持续访问评估时,才能撤销 Entra ID 访问令牌。
令牌类型 | 颁发者 | 目的 | 范围限定为资源 | 生存期 | 可撤销的 | 可再生 |
---|---|---|---|---|---|---|
主刷新令牌(PRT) | Entra ID | 请求访问令牌 | 没有 – 但可以请求任何资源的访问令牌 | 14 天* | 是的 | 是的 |
刷新令牌 | Entra ID | 请求访问令牌 | 是的 | 90 天* | 是的 | 是的 |
访问令牌 | Entra ID | 访问资源 | 是的 | 时长不定,60-90分钟 | 是,如果具备 CAE 资格 | 否 |
应用身份验证 Cookie | Web 应用 | 访问资源 | 是的 | 由应用程序确定 | 取决于应用程序 | 否 |
*滚动窗口 – 每次使用令牌时都会重启生存期。
令牌盗窃攻击途径
攻击者可以使用许多不同的攻击途径来窃取令牌。 一旦令牌被盗,攻击者就可以模拟用户,获得未经授权的访问,甚至泄露敏感数据。 这些攻击途径的一些示例包括:
- 中间攻击者:一种中间人(MitM)攻击的复杂形式。 在此方案中,攻击者将自己定位在两个通信方之间,拦截和可能改变通信,而无需任何一方知道。 此方案允许攻击者捕获敏感信息,例如凭据、会话 Cookie 和其他数据,甚至绕过多重身份验证等安全措施。 详细了解中间人网络钓鱼攻击。
- 恶意软件:恶意软件可以通过渗透系统并监视网络流量或访问存储的数据,从设备窃取令牌。 安装后,恶意软件可以通过截获设备和合法服务之间的通信来捕获身份验证令牌、会话 Cookie 或其他凭据。 它还可以利用漏洞直接从内存或存储中提取令牌。
在本文中,我们主要侧重于如何击败针对最终用户的攻击,例如之前列出的攻击。 本文未提供服务器端或应用程序入侵等攻击途径。 若要缓解此类攻击,组织应遵循以下一般最佳做法:
- 保护应用程序的身份验证
- 确保应用程序的权限最小化
- 避免在服务器端日志中捕获和保留令牌
- 监控具有访问其他资源权限的 OAuth 应用程序,防止遭到入侵
后续步骤
若要了解如何保护Microsoft Entra ID 中的令牌,请继续 保护Microsoft Entra ID 中的令牌。