La decodifica logica è una funzionalità di PostgreSQL che converte le modifiche confermate del database in un flusso che altri sistemi possono consumare. Anziché esporre le pagine grezze di archiviazione, emette eventi di modifica logica come inserimenti, aggiornamenti ed eliminazioni. Questi eventi sono formattati da plugin di output, caricati come librerie condivise. Ciò rende la decodifica logica potente per la replica, le pipeline di analisi e gli strumenti di change data capture.
Nella sicurezza informatica, la stessa flessibilità può diventare pericolosa. Se un attaccante può raggiungere un percorso di decodifica logica o influenzare quale plugin viene caricato, potrebbe trasformare una funzionalità di streaming dei dati in un primitivo di caricamento di codice. I difensori dovrebbero trattare i plugin di output come codice eseguibile, non solo come configurazione, e controllare rigorosamente il privilegio REPLICATION, i plugin consentiti e i percorsi di ricerca delle librerie. La correzione delle versioni vulnerabili di PostgreSQL e la disattivazione delle funzionalità di replica non utilizzate riduce la superficie di attacco.


