La sostituzione letterale è la sostituzione diretta di un valore di testo fisso con un altro, senza interpretare il contenuto come un modello, un'espressione o una regola di template. Nel codice sensibile alla sicurezza, questo può essere più sicuro della gestione di stringhe guidata da regex o altamente dinamica, perché riduce il numero di modi in cui l'input controllato da un attaccante può essere interpretato o trasformato in modo errato.
Nelle applicazioni web, un'elaborazione insicura del testo spesso si colloca tra l'input dell'utente e una query SQL, un comando o un valore di configurazione. Se tale elaborazione cerca di essere troppo flessibile, i caratteri speciali possono cambiare il significato dell'output finale e creare vulnerabilità di injection. La sostituzione letterale aiuta il codice difensivo a rimanere prevedibile: sostituisce esattamente ciò che è stato intenzionato, e nient'altro. Nel percorso di query vulnerabile di Roundcube, il passaggio alla sostituzione letterale riflette questo principio, rendendo l'assemblaggio delle query del database meno soggetto a errori e più facile da analizzare durante la revisione.


