SAP OVERPASS CVE-2026-44756: una RCE CVSS 10 prima che SAP ti identifichi
CVE-2026-44756 (OVERPASS) è una RCE CVSS 10 per corruzione di memoria nel kernel SAP, raggiungibile pre-auth via HTTP, SAP GUI e RFC. Patch, hunting e come vederla sul filo.
L'8 settembre 2026 SAP ha rilasciato una patch di kernel per un bug che non chiede mai chi sei. CVE-2026-44756, battezzata OVERPASS, è una falla CVSS 10.0 di corruzione di memoria nel kernel SAP condiviso, individuata e segnalata da Onapsis. Una singola richiesta malformata esegue comandi di sistema operativo sull'host SAP con i privilegi dell'account amministrativo SAP — prima che il sistema valuti un solo ruolo, oggetto di autorizzazione o policy di logon. Non c'è credenziale da rubare, non c'è sessione da dirottare, non c'è privilegio da scalare. Il codice che gestisce male la tua richiesta gira per primo.
Per gran parte delle aziende il parco SAP è l'ultima cosa che viene sottoposta a pentest e la prima che chiuderebbe la baracca se cadesse. OVERPASS è il tipo di scoperta che trasforma il "a SAP ci pensiamo il prossimo trimestre" in una finestra di change d'emergenza nella stessa settimana.
Cos'è davvero SAP OVERPASS
Il codice vulnerabile vive nell'elaborazione dell'Extended Passport (EPP). L'EPP è un meccanismo diagnostico: all'apertura di una nuova sessione, SAP allega un passaporto che permette agli amministratori di tracciare una chiamata mentre si dirama in un landscape distribuito — quale server l'ha gestita, quale componente, quanto è durato ogni hop. È idraulica genuinamente utile. Ed è anche analizzata proprio all'inizio della connessione, che è esattamente il problema.
Secondo Onapsis Research Labs, OVERPASS è una validazione dei limiti mancante durante la deserializzazione dei dati EPP: il kernel si fida di un campo lunghezza fornito dall'esterno e legge o scrive oltre i confini del buffer che gli è stato assegnato. Un header EPP malformato innesca una violazione di memory-safety nel processo che lo ha ricevuto. Poiché l'EPP viene gestito prima dell'autenticazione, l'attaccante raggiunge il percorso di codice che corrompe la memoria con nient'altro che accesso di rete a un servizio SAP in ascolto.
Il resoconto di The Hacker News è diretto su cosa ottiene un attaccante riuscito: leggere il secure store SAP per credenziali di database e hash delle password, estrarre quelle credenziali per il movimento laterale, modificare dati di business e riscrivere i binari SAP. L'esecuzione di comandi gira con i privilegi dell'account di servizio SAP — l'identità <sid>adm che possiede l'intera istanza. Possedere quell'account significa possedere l'ERP.
"Ma i nostri sistemi SAP non sono su internet." — Non lo erano nemmeno la maggior parte delle centinaia di istanze NetWeaver compromesse nel 2025. Un bug di kernel raggiungibile via RFC non ha bisogno di internet; gli basta un punto d'appoggio ovunque si parlino i protocolli SAP, il che in un landscape reale significa ogni application server, ogni message server e ogni host di integrazione che dialoga con loro.
Perché SAP è un bersaglio che vale questo sforzo
OVERPASS non è arrivata nel vuoto. Ad aprile 2025, CVE-2025-31324 — una falla di upload di file non autenticato nel Metadata Uploader del Visual Composer di NetWeaver, anch'essa CVSS 10.0 — è stata trovata sotto sfruttamento attivo. CISA l'ha aggiunta al catalogo Known Exploited Vulnerabilities il 29 aprile 2025. Onapsis e Mandiant (di Google) hanno tracciato centinaia di compromissioni confermate tra utility, manifatturiero e oil & gas, con un sospetto initial-access broker che caricava webshell per preparare il terreno al ransomware. Quella campagna ha dimostrato la tesi che gli attaccanti collaudavano da anni: SAP è dove vivono il denaro, i dati anagrafici e il controllo operativo, ed è cronicamente sotto-monitorato.
OVERPASS non è nemmeno una classe di bug inedita. Il kernel SAP e la deserializzazione RFC continuano a produrre la stessa forma di RCE non autenticata: CVE-2025-42944 (deserializzazione RMI-P4, non autenticata via una porta P4 aperta) e vecchie RCE ABAP di NetWeaver percorrono lo stesso sentiero. Quando la stessa primitiva ricorre attraverso più release di kernel, "patchato lo scorso trimestre" non equivale a "al sicuro" — la prossima variante di payload malformato è a un ciclo di ricerca di distanza.
E OVERPASS è arrivata in compagnia nel Patch Day SAP di settembre. Tre dei quattro critici bypassano del tutto l'autenticazione:
| CVE | CVSS | Componente | Problema |
|---|---|---|---|
| CVE-2026-44756 (OVERPASS) | 10.0 | Kernel SAP (EPP) | RCE pre-auth per corruzione di memoria |
| CVE-2026-58240 (S4GET) | 9.8 | NetWeaver Message Server | Autenticazione mancante |
| CVE-2026-76969 | 9.4 | SAP Cloud CAP | Divulgazione di credenziali |
| CVE-2026-66768 | 9.0 | NetWeaver SAP GUI for Java | Controllo di accesso improprio |
Una finestra di patch che chiude solo OVERPASS e lascia aperta S4GET non ha sistemato l'esposizione pre-auth — l'ha spostata di una porta.
Tre porte sullo stesso bug di kernel
Il motivo per cui OVERPASS si guadagna un 10.0 invece di un 9.x è la raggiungibilità. Il percorso di codice EPP vulnerabile sta dietro tre ingressi indipendenti:
- Il livello web — l'Internet Communication Manager (ICM) e il Web Dispatcher, che elaborano l'Extended Passport su HTTP/S. È la porta più probabilmente esposta oltre la LAN aziendale.
- Il livello SAP GUI — il Dispatcher che accetta connessioni DIAG dai client pesanti. Raggiungibile da qualsiasi subnet di workstation che dialoga con l'application server.
- Il livello RFC — l'EPP scambiato tra sistemi SAP sulle connessioni Remote Function Call. È il raggio d'esplosione interno: la fiducia RFC tra sistemi fa sì che un'istanza compromessa raggiunga le vicine.
Una sola patch di kernel chiude tutti e tre. Ma i tre ingressi contano enormemente nell'interim, perché un controllo che ispeziona solo l'HTTP non fa nulla per i percorsi RFC e DIAG — e RFC è esattamente il percorso che userà un attaccante che ha già un punto d'appoggio.
Perché i tuoi log SAP non ti salveranno
Ecco la trappola operativa. SAP ha una superficie di audit rispettabile — il Security Audit Log (SAL), il system log, i log del gateway. I team che monitorano SAP monitorano quelli. OVERPASS rende quel monitoraggio cieco in due direzioni contemporaneamente.
Primo, l'header EPP malformato viene elaborato prima che SAP autentichi la sessione. Non c'è utente, non c'è evento di logon riuscito o fallito, non c'è nulla che il Security Audit Log possa registrare sulla richiesta che corrompe la memoria. Il log applicativo comincia il suo racconto dopo il punto in cui l'attaccante ha già vinto.
Secondo, una volta che l'exploit va a segno, il codice gira come <sid>adm — l'account che possiede i file del SAL, la directory di trace e gli stessi binari SAP. Un attaccante con quell'identità può ruotare, troncare o riscrivere proprio i log che un hunter consulterebbe. Prove che vivono sull'host compromesso, scritte da un account che l'attaccante ora controlla, sono prove di cui non ti puoi fidare.
Ciò che l'attaccante non può riscrivere è la rete. La richiesta EPP malformata è dovuta arrivare via ICM, DIAG o RFC. La reverse shell è dovuta chiamare a casa da qualche parte. Le credenziali del secure store esfiltrate sono dovute uscire da una socket. Le chiamate RFC laterali verso i sistemi SAP vicini hanno attraversato il filo come traffico di protocollo SAP. I pacchetti sono l'unica parte dell'incidente che l'account <sid>adm non può tornare indietro a modificare.
Remediation
Un runbook completo per OVERPASS e i suoi fratelli del Patch Day. Eseguili in ordine.
1. Sono impattato?
OVERPASS è un bug di kernel, quindi la superficie vulnerabile è definita da release e patch level del kernel, non dalla versione applicativa di S/4HANA o ECC. Identifica ogni kernel nel parco:
- In ciascun sistema: transazione
SM51→ Release Notes, oppureSystem → Status, per leggere release e numero di patch del kernel. Dal SO, eseguidisp+work -versioncome<sid>adme annota le righe kernel release e patch level. - Confronta quei valori con la SAP Security Note 3747649 — è l'elenco autorevole delle famiglie di kernel impattate e degli esatti patch level corretti. Tratta le stringhe di versione della Note come verità di base; non fidarti di un riassunto di terze parti per il numero di build corretto.
- Inventaria l'esposizione per vettore: quali sistemi presentano ICM/Web Dispatcher (porte di default
80xx/443xx), quali accettano SAP GUI DIAG (32xx), e quali accettano RFC/gateway (33xx,48xx). Tutto ciò che è raggiungibile da un segmento non fidato è una priorità.
2. Patch — le versioni corrette esatte
Applica la patch di kernel indicata nella SAP Security Note 3747649 per ogni famiglia di kernel impattata, poi riavvia l'istanza in modo che i nuovi binari disp+work siano caricati — una patch scaricata ma non attivata da un riavvio non chiude il bug. Poiché OVERPASS è in codice di kernel condiviso, una sola patch chiude simultaneamente i percorsi HTTP, DIAG e RFC. Mentre la finestra di change è aperta, applica anche le correzioni dello stesso giorno per CVE-2026-58240 (S4GET), CVE-2026-76969 e CVE-2026-66768 — lasciarle aperte riespone ciò che OVERPASS ti ha costretto a toccare.
3. Non puoi patchare in quest'ora? Controlli compensativi
- Applica il workaround per il percorso HTTP nella SAP Security Note 3756304, che documenta le mitigazioni per attutire lo sfruttamento via ICM. È un tampone, non una correzione — non copre i vettori DIAG e RFC.
- Limita l'esposizione di ICM/Web Dispatcher: nessun endpoint HTTP SAP dovrebbe affacciarsi su internet. Mettilo dietro un reverse proxy o una VPN, oppure filtralo verso client noti.
- Blinda il gateway e l'RFC: applica le allowlist
gw/reg_infoegw/sec_info, impostagw/rem_start = DISABLEDdove possibile, e segmenta l'RFC affinché una singola istanza compromessa non possa raggiungere ogni vicina. - Vincola la subnet SAP GUI ai soli range di workstation che hanno legittimamente bisogno del DIAG.
4. Caccia alla compromissione
Assumi che i log applicativi siano incompleti o manomessi, e caccia sia dalla rete sia dal SO. Mappatura su MITRE ATT&CK:
- T1190 Exploit Public-Facing Application — header Extended Passport malformati o sovradimensionati su ICM/DIAG/RFC; traffico di protocollo SAP su porte non standard; connessioni RFC da host che non hanno mai parlato RFC prima.
- T1059 Command and Scripting Interpreter — processi figli generati da
disp+work/icmanche sono shell, interpreti o strumenti di rete (sh,bash,python,curl,nc). Un dispatcher che genera/bin/shnon è comportamento SAP normale. - T1552.001 Unsecured Credentials e T1003 OS Credential Dumping — letture dei file del secure store SSFS (
SSFS_<SID>.DAT/.KEY) e accessi aSECSTOREfuori da una finestra di manutenzione. - T1210 / T1021 Remote Services — un picco di RFC in uscita verso sistemi SAP vicini poco dopo la richiesta iniziale; nuove destinazioni RFC trusted.
- T1070 / T1562.001 Indicator Removal / Impair Defenses — buchi, troncamenti o modifiche di configurazione nel Security Audit Log; SAL disattivato; file di trace ripuliti.
- T1071 / T1041 C2 ed Esfiltrazione a livello applicativo — sessioni in uscita da un host SAP verso destinazioni mai viste prima; egress sostenuto da un sistema che storicamente solo ingerisce.
Esegui una scansione di IOC in stile Onapsis/Mandiant sull'host e correla il traffico anomalo verso i servizi SAP con esecuzione di comandi SO inattesa e modifiche a dati o binari SAP sensibili.
5. Bonifica e verifica
Se trovi prove di esecuzione, la patch non è la fine. Poiché l'attaccante ha girato come <sid>adm e ha potuto leggere il secure store, ruota tutto ciò che quell'account poteva raggiungere: le credenziali del database SAP, lo store SSFS, ogni credenziale di servizio e di RFC-trust, e le password SO per <sid>adm e sapadm. Verifica i binari SAP contro checksum noti-buoni. Riattiva e ridefinisci la baseline del Security Audit Log, poi conferma che il sistema è pulito dopo che la patch è attiva e le credenziali sono state ruotate — non prima.
Dove si inserisce Zero Hunt
Tutto quanto sopra ruota attorno a un'asimmetria: OVERPASS vince nel kernel pre-auth e poi cancella le proprie tracce dall'host, ma non può cancellare i pacchetti. È la superficie per cui è nata l'AI Traffic Analysis di Zero Hunt. Un modello di deep learning proprietario addestrato su miliardi di sequenze PCAP esegue quattro teste di inferenza in parallelo — rilevamento traffico sospetto, classificazione malware, identificazione del tipo di attacco e fingerprinting applicativo — a 2,7+ Gbit/s sulla GPU dell'appliance, interamente on-prem. La testa di fingerprinting applicativo riconosce ICM, DIAG e RFC di SAP anche su porte non standard, così un header Extended Passport malformato, un processo disp+work che d'improvviso chiama a casa verso un ASN mai visto, o un fan-out di chiamate RFC verso host che non le ricevono mai vengono segnalati mentre accadono — non nel digest del SIEM di domani, e non da un Security Audit Log che l'attaccante <sid>adm ha già riscritto. Quando le prove a livello applicativo sono compromesse per costruzione, il filo è il testimone onesto.
A monte dell'incidente, il pentest generativo a 10 agenti risponde alla domanda sulla raggiungibilità che il punteggio CVSS solo lascia intendere. Una campagna change-triggered parte entro un'ora dalla comparsa di una nuova porta SAP sul perimetro; gli agenti Recon, Exploit e Pivot mappano quali istanze espongono ICM, DIAG o RFC, e un exploit per-target scritto da un LLM locale — non prelevato da ExploitDB, perché durante una finestra zero-day non c'è nulla da prelevare — verifica se il percorso EPP malformato è davvero raggiungibile da dove starebbe un attaccante. Ogni tentativo gira in un container effimero rafforzato con gVisor che non tocca mai l'host, è ricollaudato nell'AI Gym prima di arrivare in produzione, ed è firmato ECDSA per la catena di prove.
Quella catena di prove è dove la Compliance Automatica chiude il cerchio: un parco SAP rientra in pieno nel perimetro NIS2 per gli operatori dell'energia e del manifatturiero e nel perimetro DORA per le entità finanziarie, e "mostrami l'ultimo pentest SAP" è una domanda che revisori e assicuratori ora fanno per nome. Ogni riscontro OVERPASS, verifica di esposizione e remediation è mappato attraverso i 32 framework e firmato al momento della scrittura, così il verbale che l'hai trovato, dimostrato e corretto è verificabile per costruzione anziché ricostruito da log su cui un attaccante aveva accesso in scrittura.
OVERPASS si patcha in un pomeriggio. Sapere se è già stata usata contro di te — ed essere in grado di dimostrare l'una o l'altra risposta — è il problema più difficile, ed è un problema di rete e di prove, non un problema di log.