
Corregge l'iniezione SQL non autenticata in un endpoint di configurazione sostituendo le query JDBC grezze con la parametrizzazione ORM e la validazione dei token a tempo costante.
Questo repository contiene l'hotfix per CVE-2026-72898, una vulnerabilità di SQL Injection non autenticata nell'endpoint di setup delle istanze Metabase self-hosted.
Se non viene applicata la patch, gli attaccanti possono bypassare la validazione del token di setup, eseguire comandi arbitrari sul database ed estrarre le credenziali del data warehouse.
La funzione validate-setup-token in precedenza accettava input utente non validati e lo concatenava direttamente in una stringa JDBC grezza. Ciò consentiva a un attaccante di uscire dalla stringa SQL e aggiungere comandi malevoli.
Questa patch sposta fondamentalmente il meccanismo di validazione per neutralizzare i vettori di SQL Injection:
t2), l'Object-Relational Mapper nativo di Metabase.crypto.equality/eq? per confrontare i token nella memoria dell'applicazione (Clojure) piuttosto che nel database.crypto.equality/eq? viene eseguita in tempo costante, impedendo agli attaccanti di forzare il token via differenze di timing.Sostituisce la vulnerabile logica jdbc/query grezza in metabase.api.setup.
Metabase è concesso in licenza AGPL. Questa patch è fornita agli stessi termini.