CVE-2026-16723: RCE critica in Fastjson 1.x, sfruttamento attivo in ambienti Spring Boot
Vulnerabilità

Immagine illustrativa generata con AI

CVE-2026-16723: RCE critica in Fastjson 1.x, sfruttamento attivo in ambienti Spring Boot

CVE-2026-16723: vulnerabilità RCE critica in Fastjson 1.x con sfruttamento attivo in ambienti Spring Boot. Nessuna patch, mitigazioni urgenti.

Testo generato da intelligenza artificiale, pubblicato senza revisione umana. Trasparenza IA

Introduzione

Il 21 luglio 2026 Alibaba ha reso noto un advisory per CVE-2026-16723, una vulnerabilità di esecuzione remota di codice (RCE) di gravità critica (CVSS 9.0) che interessa la libreria Java Fastjson 1.x. La falla, scoperta dal ricercatore Kirill Firsov (FearsOff Cybersecurity), permette a un attaccante non autenticato di prendere il controllo del processo Java semplicemente inviando una richiesta JSON malevola. Il giorno successivo, ThreatBook ha registrato i primi tentativi di sfruttamento attivo, poi confermati da Imperva. La lacuna riguarda esclusivamente applicazioni Spring Boot impacchettate come fat‑JAR eseguibile in cui sia rimasta disabilitata la modalità SafeMode (condizione predefinita). Al 25 luglio, ultimo aggiornamento disponibile, non esisteva ancora una patch correttiva per il ramo 1.x, rendendo indispensabili le mitigazioni.

Analisi tecnica

La vulnerabilità risiede nel meccanismo di deserializzazione basato sulla chiave @type. Anche con AutoType disabilitato, un payload contenente un @type costruito ad arte attiva una ricerca di risorse (resource probe) che, nel contesto di un fat‑JAR Spring Boot, recupera bytecode controllato dall’attaccante tramite un percorso JAR annidato. Su JDK recenti, l’exploit sfrutta il filesystem virtuale /proc/self/fd per aggirare le restrizioni e ottenere un riferimento a un JAR remoto, senza necessità di gadget preesistenti nel classpath.

L’unica condizione necessaria è che il server esponga un endpoint che esegua il parsing di JSON attraverso metodi come JSON.parse o parseObject(String). La richiesta dannosa può essere iniettata anche all’interno di campi Object o Map annidati, rendendo vana qualsiasi protezione basata sul controllo superficiale dello schema. L’attacco è pre‑autenticazione, non richiede credenziali e porta all’esecuzione di codice arbitrario con i privilegi del processo Java.

Impatto

La compromissione è totale: dall’esfiltrazione di dati all’installazione di malware, fino al movimento laterale verso altri sistemi interni. Le prime campagne, osservate a partire dal 22 luglio, hanno preso di mira prevalentemente i settori finanziario, sanitario, retail e IT negli Stati Uniti, con episodi minori in Singapore e Canada. Non sono stati ancora diffusi dati su compromissioni confermate, ma la facilità di sfruttamento rende il rischio concreto per qualunque organizzazione utilizzi le versioni interessate.

Il 23 luglio il programma CISA‑ADP ha valutato lo sfruttamento come “assente”, pertanto la CVE non è stata inclusa nel catalogo Known Exploited Vulnerabilities. Tale valutazione, tuttavia, contrasta con le evidenze raccolte dai fornitori di sicurezza, sottolineando un quadro in rapida evoluzione.

Mitigazione

Non essendo previsto alcun rilascio correttivo per il ramo 1.x – la versione 1.2.83, fino a ieri l’ultima stabile, rientra ora nell’intervallo vulnerabile – è necessario adottare immediatamente una delle seguenti contromisure:

  • Abilitare SafeMode aggiungendo il flag JVM -Dfastjson.parser.safeMode=true. Così facendo, la funzionalità @type viene disattivata in modo radicale, impedendo l’innesco dell’exploit.
  • Sostituire la dipendenza con l’artefatto ristretto com.alibaba:fastjson:1.2.83_noneautotype, che inibisce la ricerca di risorse pur mantenendo la compatibilità con il codice esistente.
  • Pianificare la migrazione a Fastjson2, che non utilizza lo stesso meccanismo di resource probe e non è affetto dalla vulnerabilità.

Azioni complementari di rilevamento e hardening:

  • Censire tutte le occorrenze di Fastjson (anche transitive) negli ambienti di sviluppo, test e produzione.
  • Monitorare i log alla ricerca di @type associati a percorsi JAR innestati, connessioni di rete anomale, spawn di processi figlio o scritture sospette sul filesystem (es. web shell).
  • Verificare che i metodi di parsing non accettino JSON da sorgenti non fidate, anche quando apparentemente legati a classi fisse.

FAQ

Quali versioni di Fastjson sono esattamente vulnerabili?
Sono a rischio le release dalla 1.2.68 alla 1.2.83, ma solo se l’applicazione è un fat‑JAR eseguibile Spring Boot e SafeMode non è stato abilitato (default). JAR semplici, uber‑JAR generici e deploy WAR su Tomcat/Jetty non presentano la condizione necessaria per lo sfruttamento.

La mia applicazione è a rischio anche con AutoType disabilitato?
Sì. L’attacco non sfrutta la funzionalità AutoType, bensì una ricerca di risorse interna che scatta alla ricezione di un @type manipolato. Disabilitare AutoType non è sufficiente a bloccare il payload, né lo è l’assenza di gadget nel classpath.

Non posso migrare subito a Fastjson2: cosa devo fare ora?
Le due mitigazioni immediate – attivare SafeMode o adottare l’artefatto 1.2.83_noneautotype – offrono una protezione completa senza richiedere modifiche al codice applicativo. Entrambe sono retrocompatibili e possono essere applicate nell’immediato, in attesa di completare il passaggio a Fastjson2.

Leggi anche

Fonti

Questo articolo è una rielaborazione originale basata sulle fonti seguenti.

CVE trattate in questo articolo

Argomenti correlatiCVE-2026-16723Fastjson 1.xRCESpring Bootvulnerabilità Javadeserializzazionesfruttamento attivo
Torna alla home