REMOTE_USER è una variabile lato server che trasporta il nome utente autenticato da un web server o da un reverse proxy a un'applicazione. È pensata per essere impostata da un'infrastruttura fidata dopo che l'utente ha già dimostrato la propria identità, ad esempio tramite autenticazione di base, single sign-on o un gateway di autenticazione front-end. L'applicazione utilizza quindi questo valore come fonte attendibile dell'identità della sessione.
Questo è importante perché REMOTE_USER fa parte di un confine di sicurezza. Se un'applicazione lo accetta solo dal livello web, può fare affidamento in modo sicuro sull'autenticazione a monte. Se un client può influenzare indirettamente il valore, la variabile diventa un vettore di spoofing e può consentire bypass dell'autenticazione o escalation dei privilegi. I difensori dovrebbero rimuovere le intestazioni di identità in ingresso sul proxy, impostare REMOTE_USER autonomamente e limitare quali front-end sono autorizzati ad asserirlo. Nelle implementazioni reali, gli errori in questo passaggio sono un modo comune con cui un'identità fidata diventa input controllato dall'attaccante.


