Un worker persistente è un processo di lunga durata che gestisce più richieste, invece di ripartire da zero per ciascuna di esse. PHP-FPM usa comunemente questo modello per gestire in modo efficiente le richieste web. Poiché il processo rimane attivo, i dati o altri stati di una richiesta possono rimanere in memoria e influire sulle richieste successive se l’applicazione o il runtime non li ripuliscono correttamente.
Questo è rilevante per la sicurezza quando lo stato specifico di una richiesta viene riutilizzato tra utenti o operazioni. In un attacco, una vulnerabilità potrebbe consentire a un aggressore di influire sullo stato di un worker e fare in modo che una richiesta successiva lo utilizzi in modo errato, esponendo potenzialmente dati o consentendo l’esecuzione di codice. I difensori dovrebbero applicare le correzioni al runtime e all’applicazione, riciclare i worker quando necessario e monitorare la presenza di schemi di richieste sospetti. Una pulizia corretta e l’isolamento tra le richieste riducono il rischio di effetti tra richieste diverse.


