URL检查失效:通过微软官网进行的设备代码钓鱼攻击分析

卡巴斯基安全分析师揭示一种新型钓鱼攻击:攻击者利用微软OAuth 2.0设备代码流程,在合法微软域上诱导用户输入代码,窃取访问令牌。本文解析攻击原理、真实案例及防御策略,帮助安全团队防范无需伪造URL的高级身份欺诈。

🔍 High 其他

攻击者利用OAuth 2.0设备授权流程(Device Code Flow),诱导用户访问微软官方登录页面(microsoft.com/devicelogin)并输入一次性代码,从而窃取访问令牌和敏感数据。该攻击规避了传统URL检测,因为所有操作都在合法微软域名内完成。

来源:Kaspersky Securelist | 2026-07-06 | 原文链接

🔍 关键发现

  • 攻击者利用合法的微软身份平台(Microsoft Identity Platform)设备授权端点,无需伪造域名即可实施钓鱼。
  • 用户被诱导在微软官方登录页面(https://microsoft.com/devicelogin)输入攻击者提供的设备代码,授权恶意应用访问其账户。
  • 攻击成功后,攻击者获取access_token和refresh_token,可持久化访问受害者资源,绕过MFA等常规防护。

⚔️ 攻击链分析

1. 攻击者注册恶意应用,获取client_id;2. 通过社工(如伪装为IT支持)向受害者发送设备代码和验证URL(https://microsoft.com/devicelogin);3. 受害者访问合法URL并输入代码,完成授权;4. 攻击者利用获取的令牌访问受害者邮箱、云存储等敏感数据。

🚩 失陷指标 (IOC)

  • https://login.microsoftonline.com/{tenant}/oauth2/v2.0/devicecode
  • https://microsoft.com/devicelogin

🛡️ 缓解建议

  • ✅ 启用条件访问策略,限制设备代码流仅用于受管理设备或已知IP范围。
  • ✅ 在Entra ID(Azure AD)中禁用不必要的设备授权许可,或要求管理员审批所有设备代码授权请求。
  • ✅ 对用户进行安全意识培训,强调即使URL合法,输入他人提供的设备代码也可能导致账户失陷。

涉及漏洞:[]


⚠️ 本文仅供安全研究与学习,IOC 信息请勿用于非法目的。

🤖 常见问题解答(FAQ)

❓ 设备代码钓鱼与传统钓鱼有何不同?

传统钓鱼依赖伪造域名,而设备代码钓鱼利用合法微软登录页面,用户输入攻击者提供的设备代码后,攻击者获得令牌,绕过密码和MFA。

❓ 如何检测设备代码钓鱼攻击?

监控Entra ID登录日志中异常的device_code授权事件,特别是来自非受管设备或非常用IP的授权请求,并审计应用注册的client_id。

❓ MFA能否防御设备代码钓鱼?

不能。MFA是在用户授权时触发,攻击者获取的是授权后的令牌,而非直接窃取凭据,因此MFA无法阻止已授权的令牌滥用。

[!] CONTACT_CHANNELS

如需商务合作、技术咨询或漏洞反馈,请通过以下离岸节点联系作者。

> PING_AUTHOR (@A1RedTeam)