La direttiva map è un costrutto di configurazione di NGINX che crea una nuova variabile dal valore di un'altra variabile. Può usare corrispondenze esatte, prefissi ed espressioni regolari, così un singolo valore di input può determinare output diversi in fase di esecuzione.
In ambito di sicurezza, map è importante perché trasforma la configurazione in logica. Gli operatori lo usano per il routing, il controllo degli accessi, la registrazione e la gestione dei protocolli, soprattutto nelle configurazioni Stream in cui i valori possono essere derivati dai dati TLS preread. Questa flessibilità è utile, ma amplia anche la superficie di attacco: la corrispondenza regex e l'espansione delle variabili aggiungono passaggi di parsing e gestione della memoria all'interno di codice C. Quando in questi percorsi sono presenti bug, input costruiti ad arte possono attivare crash o altri errori di sicurezza della memoria. Gli difensori dovrebbero esaminare con attenzione le regole map, soprattutto quando alimentano decisioni basate sul preread o valori complessi.


