Una vulnerabilità critica in Next.js potrebbe consentire ad aggressori remoti di eseguire codice arbitrario su server vulnerabili tramite la funzionalità ImageResponse del framework. Tracciata come CVE-2026-94545, la falla interessa l’implementazione Node.js di ImageResponse in next/og e ha un punteggio CVSS di 9.5. Vercel ha risolto il problema il 22 settembre 2026, con il rilascio di Next.js 16.3.6.
La vulnerabilità diventa sfruttabile quando un’applicazione inserisce input controllati dall’aggressore nel contenuto, attributi o stili SVG durante la generazione di immagini lato server. In queste condizioni, valori appositamente progettati possono raggiungere la pipeline di rendering SVG in un modo che può infine risultare in esecuzione di codice remoto sul server dell’applicazione.
Il problema è particolarmente rilevante perché ImageResponse è comunemente utilizzato per generare dinamicamente immagini Open Graph, anteprime dei social media e altre grafiche renderizzate dal server basate su dati dell’applicazione o dell’utente. Le applicazioni che incorporano parametri URL, dati API, input di moduli, o altri valori non attendibili in queste immagini dovrebbero essere esaminate immediatamente.
I team di sicurezza che cercano contenuti di rilevamento per CVE-2026-94545 possono sfruttare la Piattaforma di Intelligence di Rilevamento AI-Native di SOC Prime per identificare sfruttamenti sospetti e comportamenti post-compromissione associati ad applicazioni web vulnerabili.
Gli ingegneri della sicurezza possono anche utilizzare Uncoder AI per trasformare l’intelligence sulle vulnerabilità in logica di rilevamento, generare query di hunting, convertire indicatori in ricerche specifiche per piattaforma e accelerare l’ingegneria del rilevamento per vulnerabilità emergenti.
Analisi di CVE-2026-94545
CVE-2026-94545 è una vulnerabilità critica di esecuzione di codice remoto che interessa l’implementazione Node.js di ImageResponse inclusa nel pacchetto next/og. L’avviso di Vercel assegna alla vulnerabilità un punteggio CVSS v4 di 9.5, con sfruttamento basato su rete, bassa complessità d’attacco, nessun requisito di autenticazione e nessuna interazione utente richiesta.
La funzionalità interessata si basa su Satori, la libreria di Vercel per convertire strutture JSX e simili a HTML in contenuti SVG prima che l’immagine risultante sia renderizzata. Secondo la ricerca pubblicata, determinati valori controllati dall’aggressore potrebbero raggiungere l’output SVG generato senza essere propriamente eseguiti. Di conseguenza, input appositamente progettati possono essere interpretati come markup SVG anziché testo innocuo. Nelle configurazioni Next.js affette, questo comportamento può interagire con componenti a valle in un modo che porta all’esecuzione di codice lato server.
CVE-2026-94545 interessa le versioni Next.js a partire dalla 16.2.0 e continuando fino alla 16.3.5. La versione 16.3.6 contiene la correzione di sicurezza. Next.js 15 non è colpito da questa specifica vulnerabilità, mentre le applicazioni che utilizzano l’implementazione Edge ImageResponse sono anche fuori dal campo vulnerabile.
Importante, il solo utilizzo di ImageResponse non rende automaticamente un’applicazione sfruttabile. La condizione vulnerabile richiede l’implementazione di Node.js e dati controllati dall’aggressore che vengono inseriti in contenuti, attributi o stili SVG. Ad esempio, un’applicazione potrebbe accettare un valore di stringa di query e incorporarlo in un’immagine di anteprima sociale generata dinamicamente. Se tale valore raggiunge la pipeline di rendering vulnerabile senza un adeguato controllo, un attaccante potrebbe progettare input destinati a attivare il difetto.
Questa distinzione è importante per la prioritizzazione delle vulnerabilità. Gli sviluppatori dovrebbero cercare nei loro codebase gli import di ImageResponse da next/og, inclusi i gestori di route e le implementazioni di opengraph-image, quindi determinare se valori non fidati influenzano l’output generato. Alcune immagini sono generate quando arrivano richieste, il che significa che i percorsi di codice potenzialmente vulnerabili possono essere direttamente accessibili da internet.
I dettagli per CVE-2026-94545 evidenziano anche un aspetto della catena di fornitura della vulnerabilità. La debolezza sottostante esiste in Satori, dove valori non eseguiti correttamente possono diventare contenuti SVG attivi. Gli sviluppatori che utilizzano Satori direttamente dovrebbero aggiornare alla versione 0.33.5, che contiene la correzione corrispondente. Le applicazioni Next.js dovrebbero aggiornare il framework stesso piuttosto che affidarsi a un pacchetto Satori aggiornato indipendentemente poiché Satori è raggruppato in Next.js.
Lo sfruttamento riuscito potrebbe fornire a un attaccante remoto non autenticato l’esecuzione di codice nel contesto del processo server di Next.js vulnerabile. A seconda delle autorizzazioni e dell’ambiente dell’applicazione, questo potrebbe esporre segreti dell’applicazione, credenziali API, variabili d’ambiente, database, credenziali del cloud, servizi interni o altre risorse accessibili dal server compromesso.
L’esecuzione di codice remoto potrebbe anche fornire un punto d’appoggio iniziale per ulteriori attività dannose, tra cui il dispiegamento di payload, il furto di credenziali, la persistenza, la ricognizione e il movimento laterale. L’esatto impatto post-sfruttamento dipende quindi pesantemente da come l’applicazione Next.js colpita è distribuita e quali permessi possiede il suo processo server.
A partire dal 23 settembre 2026, la segnalazione pubblica non ha identificato attacchi confermati che sfruttano la vulnerabilità in natura e nessun PoC CVE-2026-94545 disponibile pubblicamente. Tuttavia, i dettagli tecnici della vulnerabilità sono ora pubblici, il che significa che le organizzazioni non dovrebbero interpretare l’assenza di sfruttamento segnalato come indicazione di basso rischio.
Analogamente, non ci sono IOC specifici per campagne CVE-2026-94545 documentati pubblicamente nella ricerca citata. I difensori dovrebbero quindi concentrarsi su indicatori di comportamento, inclusi richieste insolite a endpoint di generazione di immagini dinamiche, processi figlio anomali avviati da applicazioni Node.js, comunicazioni in uscita inattese dai server Next.js, creazione sospetta di file e esecuzione di comandi originata da processi di applicazioni web.
Mitigazione di CVE-2026-94545
La principale mitigazione per CVE-2026-94545 è aggiornare le applicazioni Next.js colpite alla versione 16.3.6. Vercel elenca la 16.3.6 come la versione corretta per la linea di rilascio 16.x colpita. Le applicazioni che eseguono Next.js 16.2.x devono anche passare alla 16.3.6 anziché aspettare un rilascio di sicurezza separato 16.2.
Gli amministratori dovrebbero verificare la versione effettiva in produzione piuttosto che fare affidamento solo sui manifesti del pacchetto o la scansione delle dipendenze. Dopo l’aggiornamento, le applicazioni e i container di produzione dovrebbero essere ricostruiti e ridistribuiti per garantire che il framework corretto sia effettivamente in esecuzione.
Le organizzazioni dovrebbero anche controllare il codice dell’applicazione per import come:
import { ImageResponse } from ‘next/og’
Particolare attenzione dovrebbe essere data ai gestori di route, ai generatori di immagini Open Graph e ad altri componenti che creano immagini dinamicamente dai dati delle richieste. Gli sviluppatori dovrebbero identificare qualsiasi situazione in cui parametri URL, risposte API, input di moduli, contenuto del database controllato dagli utenti, o altri dati non fidati possono raggiungere contenuti, attributi o stili SVG.
Se un aggiornamento immediato non è possibile, Vercel raccomanda di garantire che i valori controllati dall’aggressore non siano passati in contenuti, attributi o stili SVG renderizzati dall’implementazione di Node.js di ImageResponse. Questo riduce l’esposizione ma dovrebbe essere considerato un workaround temporaneo piuttosto che una sostituzione per l’aggiornamento.
Le organizzazioni dovrebbero anche evitare di assumere che cambiare i runtime sia la rimedio preferito. Sebbene l’implementazione Edge non sia vulnerabile a questo difetto, l’avviso di Vercel raccomanda specificamente di rimuovere i dati controllati dall’aggressore dalle percorsi di rendering vulnerabili quando l’aggiornamento non può essere eseguito immediatamente.
To Rileva CVE-2026-94545 tentativi di sfruttamento, i team di sicurezza dovrebbero monitorare i log delle applicazioni e del reverse-proxy per input inusuali inviati a route responsabili della generazione di immagini. La telemetria EDR e del carico di lavoro dovrebbe anche identificare processi Node.js che inspiegabilmente avviano shell o utilità di sistema, creano file eseguibili, accedono a segreti sensibili, o stabiliscono connessioni di rete in uscita insolite.
Le organizzazioni che hanno operato applicazioni colpite prima della patch dovrebbero rivedere la telemetria storica per richieste sospette e comportamenti post-sfruttamento. Poiché nessun metodo fornito dal fornitore attualmente determina se una route vulnerabile è stata precedentemente sfruttata, combinare log delle applicazioni, telemetria EDR, registri di audit cloud e attività di rete offre l’approccio più forte per un’investigazione retrospettiva.
Inoltre, la Piattaforma di Intelligence di Rilevamento AI-Native di SOC Prime può aiutare i team di sicurezza a operazionalizzare l’intelligence sulle vulnerabilità emergenti in regole di rilevamento e query di hunting, consentendo una risposta più rapida alle minacce alla sicurezza delle applicazioni critiche.
Disclaimer: Il contenuto di rilevamento potrebbe non essere disponibile per ogni CVE. Controlla la Piattaforma SOC Prime per la copertura attuale. Se le rilevazioni pertinenti non sono ancora disponibili, controlla di nuovo poiché nuovi contenuti di rilevamento vengono continuamente aggiunti.
FAQ
Cos’è CVE-2026-94545 e come funziona?
CVE-2026-94545 è una vulnerabilità critica di esecuzione di codice remoto nell’implementazione Node.js di ImageResponse da Next.js next/og. Quando un’applicazione vulnerabile incorpora valori controllati dall’aggressore in contenuti, attributi o stili SVG, un input appositamente progettato può raggiungere la pipeline di rendering delle immagini e infine abilitare l’esecuzione di codice arbitrario sul server.
Quando è stato scoperto per la prima volta CVE-2026-94545?
La vulnerabilità è stata segnalata dai ricercatori di sicurezza Raghav Maheshwari e rafabd1. Vercel ha divulgato pubblicamente il problema e pubblicato il suo avviso di sicurezza il 22 settembre 2026, insieme al rilascio corretto di Next.js 16.3.6. L’avviso pubblico non specifica la data originale di scoperta privata dei ricercatori.
Qual è l’impatto di CVE-2026-94545 sui sistemi?
Lo sfruttamento riuscito può consentire a un attaccante remoto non autenticato di eseguire codice arbitrario nel contesto del server Next.js interessato. A seconda dei privilegi dell’applicazione, gli aggressori potrebbero potenzialmente accedere a segreti dell’applicazione, credenziali, servizi interni, informazioni sensibili, o usare il server compromesso come punto d’appoggio per ulteriori attacchi. Vercel valuta il problema Critico con un punteggio CVSS di 9.5.
CVE-2026-94545 può ancora colpirmi nel 2026?
Sì. Le applicazioni che eseguono Next.js dalla versione 16.2.0 fino alla 16.3.5 possono rimanere vulnerabili quando usano l’implementazione Node.js di ImageResponse e passano valori controllati dall’aggressore in contenuti, attributi o stili SVG. Next.js 16.3.6 contiene la correzione.
Come posso proteggermi da CVE-2026-94545?
Aggiorna le applicazioni Next.js colpite alla versione 16.3.6, ricostruisci e ridistribuisci i carichi di lavoro di produzione e controlla tutto l’uso di ImageResponse next/og per input controllati dall’aggressore. Se l’aggiornamento non può essere completato immediatamente, impedisci che valori non attendibili raggiungano contenuti, attributi o stili SVG. Le organizzazioni dovrebbero anche monitorare i server vulnerabili per comportamenti sospetti del processo Node.js e rivedere l’attività storica per segni di compromissione.