L'inclusione di file locali / remoti è una grave vulnerabilità. La migliore pratica per proteggersi è quella di impostare in php.ini:
allow_url_fopen = Off
allow_url_include = Off
open_basedir = /var/www/html
Chiaramente, anche la convalida basata sulla whitelist sull'input dell'utente è importante, ma gli sviluppatori fanno errori e la difesa in profondità è la chiave.
Anche con le impostazioni precedenti, l'exploit php: //filter/convert.base64-encode/resource=index.php funziona ancora.
C'è un modo per disabilitare php: // filtro globalmente o su base PHP?