
四个攻击者无需登录即可利用的漏洞在今天作为 SAP 月度 Security Patch Day 的一部分得到修复——厂商给这四个漏洞的评分均为 10.0,即 CVSS 最高分。
其中三个位于 SAP NetWeaver 应用服务器(SAP 系统所运行的软件)中,一个位于 Web Dispatcher 中,后者从互联网接收 Web 请求并将其转发给该服务器。
厂商表示,Web Dispatcher 和负责处理服务器 Web 流量的 Internet Communication Manager(ICM)中的漏洞,可能让能够通过网络访问该软件的攻击者执行代码。
服务器 SAML 2.0 服务提供程序(负责将用户登录交由身份提供程序处理)中的漏洞,可能让攻击者在某些使用 SAML 单点登录的系统上以任意用户身份登录。
SAP Gateway(负责将该服务器与其他 SAP 系统和程序连接)中的漏洞,可能让攻击者冒充系统自身的一台服务器并执行未经授权的操作。
这四个漏洞都不需要任何用户操作即可生效。
受影响版本与 SAP Note
根据 SAP 的 11 月安全公告,每个漏洞都在各自的 Note 中修复,受影响版本因组件而异。这些 Note 位于需要登录的 SAP for Me 中,厂商强烈建议优先应用它们。
| CVE | 组件 | SAP Note | 受影响版本 |
|---|---|---|---|
| CVE-2026-76964 | Internet Communication Manager (ICM), SAP NetWeaver AS ABAP | Note 3778530 | KRNL64UC 7.53, KERNEL 7.53, 7.54, 7.77, 7.93, 9.16, 9.18, 9.20 |
| CVE-2026-89126 | SAP Web Dispatcher | Note 3778556 | HDB 2.00, KRNL64UC 7.53, WEBDISP 7.53, 7.54, 7.77, 7.93, 9.16, XS_ADVANCED_RUNTIME 1.00, SAP_EXTENDED_APP_SERVICES 1, KERNEL 7.53, 7.54, 7.77, 7.93, 9.16, 9.18, 9.20 |
| CVE-2026-89103 | SAP Gateway | Note 3798345 | KRNL64NUC 7.22, 7.22EXT, KRNL64UC 7.22, 7.22EXT, 7.53, 8.04, KERNEL 7.22, 7.53, 7.54, 7.77, 7.93, 8.04, 9.16, 9.20, 9.21 |
| CVE-2026-120017 | SAML2 service provider, SAP NetWeaver AS ABAP and ABAP Platform | Note 3849308 | SAP_BASIS 702, 731, 740, 750, 751, 752, 753, 754, 755, 756, 757, 758, 816, 920, 921, 922 |
据 SAP 安全公司 Onapsis 称,已停止维护的内核同样受到影响。该公司研究人员发现了 ICM、Web Dispatcher 和 Gateway 漏洞。其 ICM2SHELL 公告针对 ICM 和 Web Dispatcher 漏洞列出了内核 7.40、7.41、7.42、7.45、7.49、7.73、7.81、7.85 和 7.89;其 PROXYGATE 公告针对 Gateway 漏洞列出了相同的内核,外加 7.20 和 7.21。这些内核可能不会获得修复,需要升级到仍在维护的版本。
每个漏洞能造成什么后果
厂商表示,在受影响的 SAML 配置中,攻击者还可以利用 CVE-2026-120017 以特权用户身份登录。随后可能造成完全失陷,甚至可能波及已连接的系统。
同一软件中的另一个 SAML 漏洞 CVE-2026-44748 已于 6 月 9 日修复,需要攻击者拥有普通用户账户。
在 ICM 漏洞(CVE-2026-76964)和 Web Dispatcher 漏洞(CVE-2026-89126)中,构造的网络流量可能破坏内存。成功的攻击者随后可以执行代码并完全攻陷系统。
Onapsis 表示,这两个漏洞源自同一个缺陷——其称之为 ICM2SHELL——位于 ICM 和 Web Dispatcher 共用的内核代码中,该代码用于将拆分的 WebSocket 消息重新组装。它向厂商提供了一个可用的利用程序,能以 <sid>adm(拥有 SAP 安装的账户)身份执行操作系统命令。
同一个缺陷可以让这两个组件中的任意一个崩溃,而 Web Dispatcher 一旦崩溃,在其重启期间,它背后的所有 SAP 系统都会被切断。WebSocket 支持默认开启,因此即便没有任何应用使用它,系统也处于暴露状态;双栈系统则会通过其 ABAP 栈受到影响。该公司的研究人员尚未看到该缺陷被用于攻击。
SAP Gateway 使用访问控制列表来决定哪些外部程序可以连接它、它可以启动哪些程序,以及它可以为其他方中继哪些连接。在 CVE-2026-89103 中,网关以高权限启用其默认列表,从而使外部攻击者被当作系统自身的应用服务器之一。该攻击者随后就能在应用环境中执行未经授权的操作。
发现该缺陷的研究人员将其称为 PROXYGATE。他们表示,系统是否暴露取决于网关的代理列表 prxyinfo,或者在缺少该列表时取决于某个配置参数,而不取决于大多数加固指南所涵盖的 secinfo 和 reginfo 列表。在代理设置允许的情况下,构造的请求会让网关把外部攻击者当作自己的应用服务器之一,随后它就能以 <sid>adm 身份为攻击者执行操作系统命令。
该缺陷影响任何运行网关的系统,包括 AS Java、双栈和独立网关安装。研究人员在与厂商共享的概念验证中端到端演示了该攻击,并且他们尚未看到该缺陷被用于攻击。
应对措施
RedRays 是一家今天审阅了 SAP for Me 中相关说明的公司。在其 Patch Day 分析中,它建议在一次滚动更新中同时更新内核和所有 Web Dispatcher。该次更新应达到覆盖本月全部 17 项内核与 Web Dispatcher 修复的级别。
该公司对每个缺陷的建议如下(另有注明来源者除外):
- SAML2(CVE-2026-120017)。在某些配置下,服务提供方未检查传入断言上的签名。任何使用 SAML2 进行浏览器登录的 AS ABAP 系统——例如位于身份提供方之后的 Fiori Launchpad 或 Web GUI——在证明并非如此之前都应视为在影响范围内。没有变通办法,因此更正说明或所列的支持包是唯一的修复方式。该公司的 SAML2 分析还建议在事务 SAML2 中审查每一个受信任的身份提供方,并检查审计日志中来自意外来源的特权用户的 SAML 登录记录。
- SAP Gateway(CVE-2026-89103)。Onapsis 建议首先检查代理列表 prxyinfo。宽松的列表——对广泛网络或任意主机开放——会使系统在任何补丁级别下都处于暴露状态,因此应加以限制,首先从可从互联网访问的网关开始。在不存在 prxyinfo 文件的情况下,由配置参数 gw/acl_mode_proxy 决定,其出厂设置为 0,即允许所有代理连接。内核 7.93 和 9.16 已有该参数,需要将其设置为 1;内核 7.22、7.53、7.54、7.77 和 8.04 通过内核补丁获得该参数;9.20 和 9.21 也会获得内核补丁。仅打内核补丁,而没有限制性的 prxyinfo 或将 gw/acl_mode_proxy 设置为 1,并不能使系统脱离影响范围。没有官方变通办法,但限制性的 prxyinfo 可在补丁到位前降低暴露程度;该公司还建议将网关端口(33NN 和 48NN)限制为需要 RFC 访问的主机。
- ICM(CVE-2026-76964)。长度字段无效的 WebSocket 控制帧会在任何登录之前造成堆越界写。SAP NetWeaver AS Java 不受影响,修复通过 dw.sar 和 SP Stack Kernel 提供。根据 RedRays 的 ICM 分析,如果用户只能通过 Web Dispatcher 访问 ICM,那么将该 Web Dispatcher 打到 FAQ note 3778788 中列出的级别,暂时就能为 ICM 提供防护。前提是没有人能直接访问 ICM 端口。ICM2SHELL 公告补充说,该防护在配置为路由器(PROT=ROUTER)的 Web Dispatcher 上不起作用。公告还警告说,在 7.93 版本上,更高的补丁级别并不总是意味着已经修复:补丁级别 419 仍然存在漏洞,只有更新后的 401 Stack Kernel、402(发布后)以及 420 或更高版本才包含修复。关闭 WebSocket 支持作为最后手段可以阻止该漏洞,但会破坏依赖它的功能。
- Web Dispatcher(CVE-2026-89126)。它与 ICM 漏洞有相同的根本原因。它影响独立和嵌入式的 Web Dispatcher,包括 SAP HANA XS Classic 和 XS Advanced 中的那些,但不影响 SAP Content Server。该公司的 Web Dispatcher 分析列出了补丁路径:独立实例使用 SAPWEBDISP.SAR,嵌入式实例使用 dw.sar 或 SP Stack Kernel,HANA XS Classic 使用 SPS08 修订版 089.05 或 SPS07 修订版 079.11,XS Advanced 使用 1.5.4 或更高版本。在补丁到位之前,关闭 WebSocket 支持是有效的,但该 note 警告说这会影响 ABAP Push Channels 和一些 Fiori 功能。先找出所有 Web Dispatcher,因为漏掉一个实例就会让漏洞保持敞开。
(本文于 2026 年 11 月 10 日发布后更新,加入了发现 ICM、Web Dispatcher 和 Gateway 漏洞的研究人员提供的细节。)
2026 年 11 月 10 日更正:早先版本将 SAP Gateway 漏洞与 secinfo 和 reginfo 列表联系起来,并称从 7.93 起的内核已带有 gw/acl_mode_proxy 参数,但发现该漏洞的研究人员表示,是否暴露取决于代理列表、prxyinfo 或该参数,而内核 8.04 只有打上补丁才会获得该参数。