为什么XSS仍然重要:MSRC对25年威胁的视角
跨站脚本(XSS)作为已知漏洞类别已存在二十年,但它仍然在现代应用中不断出现,包括那些使用最新框架和云原生架构构建的应用。在微软,我们仍然持续收到来自各个服务的XSS报告,从传统门户网站到新部署的单页应用。尽管浏览器安全、内容安全策略(CSP)和默认安全库有所进步,XSS仍然是具有现实后果的持续威胁向量。
这就是我们分享这个系列的原因:探讨XSS为何仍然重要,微软如何应对检测和缓解,以及我们从真实事件中学到了什么。无论您是审查漏洞赏金提交的安全工程师,还是构建默认安全组件的开发人员,理解XSS不断演变的性质对于防御现代Web生态系统都至关重要。
微软安全响应中心(MSRC)的团队处理过绕过传统缓解措施、利用微妙DOM行为并与其他漏洞链接以实现有影响力结果的XSS案例。其中一些案例有资格获得赏金奖励,并推动了内部工具改进或策略变更。虽然第一篇博客聚焦于问题框架,但未来的博客文章将分享可操作的教训和最佳实践,帮助保护客户安全。
真实案例洞察:MSRC XSS报告揭示的内容
尽管是最古老的已知Web漏洞之一,跨站脚本(XSS)继续主导微软的安全案例格局。截至2025年中,MSRC自2024年1月以来已缓解超过970个XSS案例。这些案例涵盖了广泛的范围,从低影响的自跨站脚本到具有严重严重性的零点击存储型XSS。它们为不断演变的威胁格局和微软的响应策略提供了独特视角。
XSS数据统计(2024年7月-2025年7月)
- 15%的所有重要或严重MSRC案例是XSS
- 在265个XSS案例中,263个被评为重要严重性,2个被评为严重严重性
- XSS赏金奖励支付总额为912,300美元
- 单个最高赏金奖励为20,000美元,用于高影响案例,如令牌盗窃或零点击攻击
微软生态系统中的模式
跨站脚本(XSS)漏洞已在参与我们赏金计划的广泛微软服务中报告,包括Microsoft Copilot赏金计划、Microsoft 365赏金计划、Microsoft Dynamics 365和Power Platform赏金计划、Microsoft Identity赏金计划、Microsoft Azure赏金计划以及Xbox赏金计划。
报告由内部和外部安全研究人员提交,通常突出显示清理逻辑的绕过、基于DOM的漏洞以及现代Web框架中的边缘情况行为。
这些模式强化了主动验证、安全设计原则以及与安全研究社区持续互动以加强整个微软生态系统保护的重要性。
什么使XSS具有影响力?
并非所有XSS漏洞对客户构成相同级别的风险。在微软,我们优先考虑直接影响客户安全的基于案例的因素,如可利用性、数据敏感性、所需的用户交互和现实世界影响。我们评估背后的指导原则很简单:在大多数客户最关心的地方降低风险。
无论是可能泄露敏感数据的零点击漏洞利用,还是高流量服务中清理逻辑的绕过,我们的重点是识别和缓解最有可能影响客户信任和安全的漏洞。为支持安全研究社区,我们分享MSRC如何评估XSS严重性并区分严重和较低严重性问题。这种透明度帮助研究人员理解他们的发现如何贡献于客户保护,以及他们的努力在哪些方面可以产生最大影响。
MSRC如何分类XSS严重性
为优先保护客户,MSRC使用结合数据分类和利用条件的矩阵评估XSS漏洞,以确定严重性。这种方法有助于确保最有影响的问题获得最高优先级。
数据分类 | 严重性 | 示例 |
---|---|---|
高度机密 | 严重 | 零点击XSS,泄露会话令牌或敏感Cookie |
机密 | 重要 | 需要用户交互但仍暴露会话令牌的XSS |
一般/公共 | 中等/低 | 公共页面上无敏感数据暴露或需要自跨站脚本的XSS |
影响严重性的其他因素包括用户交互、攻击者先决条件和环境条件。
例如,在login.microsoftonline.com上识别的漏洞可能由于域的敏感性最初被评为严重。但是,如果成功利用需要多个用户交互或依赖于攻击者控制的重定向,严重性可能更准确地评估为重要。这反映了微软的情境风险评估方法,其中可利用性和现实世界影响是确定严重性的关键因素。
服务标准:符合资格和超出范围的内容
范围内:
- 在具有会话令牌或Cookie访问权限的微软域中执行的存储或反射型XSS
- 绕过CSP并在特权上下文中执行的基于DOM的XSS
- 影响认证用户的零点击或单点击有效载荷
超出范围:
PDF上下文中的JavaScript执行(PDF中的XSS) PDF文件中的JavaScript执行通常不符合微软的服务标准。虽然PDF可能支持有限的脚本,如表单字段验证,但它们的执行上下文比HTML文档受到显著更多限制,并缺乏基于域的权限。要符合服务资格,报告必须证明从PDF受限环境明显逃逸到更广泛或更特权的执行上下文。
自跨站脚本 利用需要受害者手动将有效载荷粘贴到浏览器开发者控制台的场景不符合微软的服务标准。这些案例依赖于故意的用户操作,超出了可利用、可服务漏洞的范围。
仅在非标准浏览器或扩展中执行的XSS 仅在非标准或不受支持的环境中(如过时的浏览器或传统平台如Internet Explorer)执行的跨站脚本(XSS)漏洞不符合微软的服务标准。这些场景超出了支持配置的范围,并不反映现代、真实世界的使用模式。要符合服务资格,漏洞必须证明在当前、支持的浏览器环境中的影响。
XSS提交清单
可重现性
- 提供清晰、分步的重现说明
- 包含可靠、最小的概念验证(PoC)
- 在多个浏览器中测试(如Edge、Chrome)
- 确保有效载荷在没有开发工具或控制台访问的情况下工作
可利用性
- 使用零次或一次用户交互触发
- 在微软拥有的域上执行
- 绕过CSP或其他缓解措施
- 影响认证用户或敏感工作流
影响
- 导致令牌盗窃、会话劫持或数据外泄
- 暴露机密或高度机密数据
- 以可扩展/持久方式存储或反射
文档
- 包含截图或视频演示
- 解释正在跨越的安全边界
- 清楚说明预期与实际行为
下一步:深入探讨XSS有效载荷链接
在我们即将到来的博客系列中,我们将更仔细地研究链接XSS有效载荷的技术机制。我们将探索多语言攻击和DOM操纵等高级技术,然后将重点转向帮助缓解这些威胁的深度防御策略。
您可以期待以下实用指导:
- 实施强大的输入验证
- 应用情境感知输出编码
- 强制执行内容安全策略(CSP)
- 利用自动转义用户输入的现代框架
在我们准备深入这些主题时,我们鼓励您通过此Microsoft Learn资源探索跨站脚本(XSS)的基础知识:XSS注入的黑客指南。
作者
Carlston Mills,安全保证工程,MSRC
Sonal Shrivastava,安全研究员,MSRC
Kul Subedi,高级安全研究员,MSRC
致谢
特别感谢Michael Hendrickx、Bruce Robinson和Jarek Stanley对本博客的贡献。