// 1 CRITICAL · 5 ZERO-DAY · 6 CVE · 4 EXPLOIT · 2 ADVISORY NELLE ULTIME 24H→
SAP ha correto il 13 ottobre 2026 una vulnerabilità SSRF di gravità massima nel Cloud SDK for Python . Il difetto, tracciato come CVE-2026-89111 con punteggio CVSS
{"main_topic":"cve","topics":["cybersecurity","vulnerabilita","sap","python","oauth2","ssrf","patch"]}

SAP ha correto il 13 ottobre 2026 una vulnerabilità SSRF di gravità massima nel Cloud SDK for Python. Il difetto, tracciato come CVE-2026-89111 con punteggio CVSS 10.0, consente a un attaccante remoto e non autenticato di deviare richieste token OAuth2 manipolando il parametro tenant_subdomain, catturando le credenziali client di applicazioni multi-tenant su SAP Business Technology Platform. Il bug espone un pattern architetturale ricorrente nei sistemi cloud enterprise: la fiducia implicita in un input tenant che, se non validato, annulla l'intero isolamento tra ambienti condivisi.

Punti chiave
  • CVE-2026-89111 ha CVSS 10.0, il punteggio massimo: l'attacco è remoto, non richiede autenticazione né interazione dell'utente.
  • Il vettore è il parametro tenant_subdomain nel flusso OAuth2 del SAP Cloud SDK for Python, non sottoposto a validazione prima dell'invio della richiesta token.
  • L'attaccante redirige le richieste a un server controllato, esfiltrando credenziali client con accesso potenziale a tutti i tenant dell'organizzazione.
  • La patch è disponibile nella versione 0.45.2; tutte le versioni precedenti sono vulnerabili. La mitigazione temporanea richiede un allowlist di subdomain tenant registrati.

Il meccanismo: come un parametro tenant compromette l'intero stack OAuth2

Il SAP Cloud SDK for Python è il toolkit ufficiale per sviluppare agenti AI e applicazioni Python su SAP BTP. Secondo le fonti primarie, il difetto risiede nella gestione del parametro tenant_subdomain durante il flusso di acquisizione token OAuth2: il valore fornito dall'applicazione consumer viene incorporato direttamente nella richiesta senza verifica di appartenenza ai tenant effettivamente registrati.

Un attaccante che controlla il tenant_subdomain — tramite input utente, header manipolato o altro vettore applicativo — può forzare il Cloud SDK a contattare un endpoint arbitrario al posto del server autorizzazioni legittimo di SAP. Il server dell'attaccante riceve quindi la richiesta token contenente le credenziali client OAuth2, completo di secret e parametri di autenticazione.

La gravità massima del punteggio CVSS deriva dalla combinazione di fattori esplosivi: AV:N (attacco da rete), AC:L (complessità bassa), PR:N (nessun privilegio richiesto), UI:N (nessuna interazione utente) e S:C (scope changed, impatto oltre il boundary di sicurezza del componente vulnerabile). La stringa di scoring completa è CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N. Il rischio è massimizzato in ambienti SAP BTP multi-tenant, dove le credenziali esfiltrate possono aprire accesso trasversale tra tenant distinti.

"The SAP Cloud SDK for Python contains an OAuth2 SSRF vulnerability affecting multi-tenant BTP applications. An attacker who controls the tenant_subdomain parameter can redirect OAuth2 token requests to an attacker-controlled server, causing client credentials to be exfiltrated" — Advisory SAP, citato da BleepingComputer

October 2026 Patch Day: 20 vulnerabilità SAP nel complesso

L'October 2026 SAP Security Patch Day ha incluso la correzione di 20 vulnerabilità secondo BleepingComputer. CVE-2026-89111 emerge come la più critica del bundle per la combinazione di accessibilità remota, assenza di requisiti di autenticazione e impatto su credenziali centrali di identità.

Il contesto storico è rilevante: CISA ha aggiunto 14 vulnerabilità SAP al catalogo Known Exploited Vulnerabilities dal novembre 2021, di cui 3 legate a attacchi ransomware. Sebbene CVE-2026-89111 non sia attualmente nel KEV, il pattern SSRF/OAuth2 è particolarmente appetibile per attacchi automatizzati a larga scala in ambienti cloud condivisi.

La versione corretta è la 0.45.2 del SAP Cloud SDK for Python; tutte le versioni precedenti risultano affette. Il dossier non specifica se esistano versioni intermedie o prerelease con fix parziale. Non è noto il numero esatto di sistemi esposti o di organizzazioni che utilizzano il componente in configurazioni multi-tenant vulnerabili.

Cosa fare adesso

Per le organizzazioni che impiegano il SAP Cloud SDK for Python in applicazioni BTP, le azioni prioritarie documentate nelle fonti sono le seguenti:

  • Aggiornare immediatamente alla versione 0.45.2 o successiva del SAP Cloud SDK for Python: questa è l'unica correzione definitiva citata nelle fonti primarie.
  • Validare il parametro tenant_subdomain contro un allowlist di subdomain registrati prima di passarlo a qualsiasi chiamata SDK: mitigazione temporanea esplicitamente indicata nell'advisory SAP per i sistemi che non possono aggiornare tempestivamente.
  • Verificare i log di accesso OAuth2 per richieste token con tenant_subdomain anomali o verso endpoint non autorizzati: la fonte non documenta indicatori di compromissione specifici, ma il controllo del flusso OAuth2 è il punto di monitoraggio naturale.
  • Controllare le applicazioni multi-tenant per assicurarsi che il parametro tenant_subdomain non derivi direttamente da input non attendibili: la vulnerabilità richiede che l'attaccante influenzi questo specifico parametro, quindi la postura di validazione ingresso è rilevante.

Il pattern architetturale: fiducia implicita nei sistemi multi-tenant

La lettura tecnica va oltre il singolo CVE. CVE-2026-89111 incarna un anti-pattern diffuso nelle piattaforme cloud enterprise: il trattamento del tenant come identificatore di routing piuttosto che come entità autenticata e verificata. In architetture multi-tenant, il subdomain è spesso usato per isolamento logico e routing; quando il framework considera il valore fornito come affidabile per costruire URL di servizio critici, il confine tra tenant diventa illusorio.

L'OAuth2, progettato per delega controllata, diventa qui veicolo di esfiltrazione: le credenziali client, normalmente protette dal server autorizzazioni legittimo, vengono recapitate a un endpoint arbitrario. Il rischio non è solo il furto iniziale, ma la persistenza: con credenziali client valide, l'attaccante può ottenere token di accesso validi per le API protette del tenant, muovendosi lateralmente con legittimità tecnica.

La fonte non specifica se esistano proof-of-concept pubblici o sfruttamento in-the-wild non documentato. Non è chiaro chi abbia scoperto la vulnerabilità — ricercatore esterno, vendor interno o terza parte. Non emerge inoltre un record NVD ufficiale per CVE-2026-89111 nei materiali forniti, circostanza che può rallentare la classificazione automatica in alcuni sistemi di gestione vulnerabilità enterprise.

Per le grandi organizzazioni con ambienti SAP BTP condivisi tra business unit o filiali, la combinazione di CVSS 10.0 e assenza di requisito di autenticazione rende questa vulnerabilità prioritaria rispetto a molte altre dello stesso patch day. Il costo dell'aggiornamento è contenuto — una patch di libreria Python — mentre il costo potenziale della compromissione OAuth2 multi-tenant è difficilmente quantificabile.

Domande frequenti

La mia applicazione usa il Cloud SDK in modalità single-tenant: è a rischio? Le fonti primarie enfatizzano l'impatto massimo in ambienti multi-tenant. Il meccanismo tecnico richiede il controllo del tenant_subdomain; se l'applicazione non espone questo parametro a input esterno, la superficie di attacco si riduce. Tuttavia, l'advisory SAP e le fonti non escludono esplicitamente configurazioni single-tenant dal rischio teorico.

Perché il punteggio CVSS è 10.0 se non c'è impatto sulla disponibilità (A:N)? La stringa CVSS:3.1 mostra A:N (assenza di impatto sulla disponibilità), ma compensa con S:C (scope changed, il componente vulnerabile ha un boundary di sicurezza separato dall'asset impattato) e punteggi massimi su Confidenzialità e Integrità. In sistemi multi-tenant, S:C è il moltiplicatore che spinge il punteggio al massimo assoluto.

Esistono strumenti per verificare se la mia versione è vulnerabile? Le fonti non citano strumenti di rilevamento automatici. La verifica manuale consiste nel controllare la versione installata del pacchetto Python: valori inferiori a 0.45.2 indicano esposizione.

Le informazioni sono state verificate sulle fonti citate e aggiornate al momento della pubblicazione.

Fonti


Fonti e riferimenti
  1. rescana.com
  2. bleepingcomputer.com
  3. nvd.nist.gov