# SAP Cloud SDK for Python OAuth2 SSRF credential theft (CVE-2026-89111)

> SAP disclosed a maximum-severity (CVSS 10.0) OAuth2 server-side request forgery flaw in the SAP Cloud SDK for Python (sap-cloud-sdk < 0.45.2) affecting multi-tenant SAP BTP applications. An unauthenticated remote attacker who controls the tenant_subdomain parameter can redirect OAuth2 token requests to an attacker-controlled server and exfiltrate client credentials.

- **Published:** 2026-10-13T14:05:58Z
- **Last reviewed:** 2026-10-15T13:32:59.274Z
- **Canonical:** https://intel.threadlinqs.com/threat/TL-2026-3414
- **ID:** TL-2026-3414
- **Severity:** CRITICAL (CVSS 10)
- **Category:** VULNERABILITY
- **Status:** ACTIVE
- **Detections:** 9 · **IOCs:** 15 (full data via the Threadlinqs MCP server — Purple tier)
- **CVEs:** CVE-2026-89111, CVE-2026-89110, CVE-2026-89108

## Description

CVE-2026-89111 (CWE-918) affects the SAP Cloud SDK for Python, versions prior to 0.45.2, when used in multi-tenant SAP Business Technology Platform (BTP) applications. The SDK substitutes a tenant_subdomain value into the OAuth2 token URL without sufficient validation. An attacker who can influence this parameter can cause the application to send its OAuth2 token request, including client credentials, to a server the attacker controls. NVD scores the flaw CVSS 3.1 10.0 (AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N).

The fix in sap-cloud-sdk 0.45.2 validates tenant_subdomain against RFC 1123 DNS label rules before it is substituted into token URLs. For consumers that cannot upgrade immediately, SAP and the GitHub advisory (GHSA-4mv3-jxxm-9cx2) recommend validating tenant_subdomain against a known allowlist of registered tenant subdomains before passing it to any SDK call. The advisory credits reporter @SunandM and includes no proof-of-concept code. The sources report no confirmed in-the-wild exploitation, no IOCs and no attribution for this CVE.

The October 2026 SAP Security Patch Day (20 flaws fixed) also fixed two other critical issues. CVE-2026-89110 (CVSS 9.9, CWE-749) is missing authorization in SAP NetWeaver Visual Composer VC70RUNTIME 7.50. A low-privileged attacker can invoke internal operations on a preconfigured remote system (SAP Note 3797111). CVE-2026-89108 (CVSS 9.1, CWE-862) is missing authorization in SAP Manufacturing Integration and Intelligence XMII 15.4 and 15.5. An attacker with MII administrator credentials can provision a privileged account on the underlying Java application server (SAP Note 3798788). BleepingComputer notes that the earlier maximum-severity SAP flaws CVE-2026-58231 (Commerce Cloud, August 2026) and CVE-2026-44756 (SAP Kernel, September 2026; Onapsis research) were actively exploited. It also notes that CISA tracks 14 SAP flaws in its KEV catalog. Status ACTIVE reflects the exposure window for unpatched deployments, not confirmed exploitation.

## MITRE ATT&CK

- T1190 Exploit Public-Facing Application
- T1212 Exploitation for Credential Access
- T1528 Steal Application Access Token
- T1078.004 Valid Accounts: Cloud Accounts
- T1550.001 Use Alternate Authentication Material: Application Access Token
- T1136 Create Account

## Sources

- [SAP warns of maximum severity OAuth2 SSRF security flaw](https://www.bleepingcomputer.com/news/security/sap-warns-of-maximum-severity-oauth2-ssrf-security-flaw/)
- [GHSA-4mv3-jxxm-9cx2: OAuth2 SSRF in SAP Cloud SDK for Python](https://github.com/SAP/cloud-sdk-python/security/advisories/GHSA-4mv3-jxxm-9cx2)
- [NVD CVE-2026-89111](https://services.nvd.nist.gov/rest/json/cves/2.0?cveId=CVE-2026-89111)
- [NVD CVE-2026-89110](https://services.nvd.nist.gov/rest/json/cves/2.0?cveId=CVE-2026-89110)
- [NVD CVE-2026-89108](https://services.nvd.nist.gov/rest/json/cves/2.0?cveId=CVE-2026-89108)
- [SAP Security Patch Day](https://url.sap/sapsecuritypatchday)
- [SAP Note 3797111 (CVE-2026-89110)](https://me.sap.com/notes/3797111)
- [SAP Note 3798788 (CVE-2026-89108)](https://me.sap.com/notes/3798788)

## Full data

Detection queries (Splunk SPL / Microsoft KQL / Sigma) and IOC values require the Threadlinqs MCP server (Purple tier): https://intel.threadlinqs.com/mcp

Canonical: https://intel.threadlinqs.com/threat/TL-2026-3414
