Skip to main content

LFI (Local File Inclusion)

La aplicación incluye un archivo del servidor en función de un parámetro de la URL.

Categoría: Web · OWASP Top 10 🎯 Trinchera — La aplicación incluye un archivo del servidor en función de un parámetro de la URL. Si no se sanea, le pides ?page=../../../etc/passwd y te lo escupe. 🔗 Kill chain — De LFI a RCE hay tres puentes clásicos:
  • Log Poisoning — inyectas PHP en el User-Agent, el log lo guarda, el LFI lo ejecuta.
  • PHP wrappersphp://filter/convert.base64-encode/resource= para leer código fuente sin ejecutarlo.
  • Session poisoning — escribes payload en un archivo de sesión y lo incluyes vía LFI.
📡 Huella defensiva — Errores 404/500 con paths sospechosos (../, %2e%2e%2f). WAFs modernos (ModSecurity OWASP CRS) lo detectan en cuestión de paquetes si los caracteres no se ofuscan. ⚠️ Falso amigo — Detenerse al leer /etc/passwd y celebrar. Eso es severidad media. Si encadenas a RCE, es crítica. 🛡️ Remediación — Whitelisting de archivos permitidos. Nunca concatenar input del usuario en include(). Usar IDs numéricos que mapean a un diccionario interno de rutas.

Volver al glosario completo Última actualización: 2026-06-11