Una investigación, expuso a un gran número de páginas web desarrolladas en PHP que utilizan el popular servidor web NGINX y que tengan habilitada la función PHP-FPM para un mejor rendimiento, son afectados por una vulnerabilidad de día 0 que podría permitir que atacantes no autorizados accedan al servidor del sitio web comprometido de forma remota.
La vulnerabilidad, rastreada como CVE-2019-11043, afecta a sitios web con ciertas configuraciones de PHP-FPM que, según los estudios, no es poco frecuente de ver en el panorama, esta podría explotarse fácilmente gracias a una prueba de concepto (PoC), la cual fue lanzada para todo el público.
PHP-FPM es una implementación alternativa de PHP FastCGI que ofrece un procesamiento avanzado y altamente eficiente para scripts escritos en el lenguaje de programación PHP. La vulnerabilidad principal es un problema "env_path_info" de corrupción de memoria de flujo en el módulo PHP-FPM, que al encadenarlo junto con otras fallas podría permitir a los atacantes ejecutar de forma remota código arbitrario en servidores web vulnerables.
El exploit está diseñado para apuntar específicamente a servidores vulnerables que ejecutan versiones de PHP 7 o superior, eso sí, el error de desbordamiento en PHP-FPM también afecta a versiones anteriores de PHP, permitiendo la modificación. En resumen, un sitio web es vulnerable si:
- NGINX está configurado para reenviar solicitudes de páginas PHP al procesador PHP-FPM,
- La directiva fastcgi_split_path_info está presente en la configuración e incluye una expresión regular que comienza con un símbolo '^' y termina con un símbolo '$',
- La variable PATH_INFO se define con la directiva fastcgi_param,
- No hay comprobaciones como try_files $ uri = 404 o if (-f $ uri) para determinar si un archivo existe o no en el sitio.
Esta lista de condiciones para una explotación exitosa, es bastante común debido a que son varios los proveedores de alojamiento web que utilizan estas configuraciones vulnerables y además, están disponibles en Internet como parte de muchos tutoriales para PHP FPM.
Nextcloud, uno de los proveedores de alojamiento web afectados, lanzó un aviso advirtiendo a sus usuarios que "la configuración predeterminada de Nextcloud NGINX también es vulnerable a este ataque" y recomendó a los administradores del sistema que tomen las medidas respectivas.
El parche de corrección se lanzó casi un mes después de que los investigadores informarán al equipo de desarrolladores de PHP. Dado que el exploit PoC ya está disponible y el parche fue lanzado hace bastante poco, es probable que los ciberdelincuentes ya hayan comenzado a escanear para buscar sitios web vulnerable en internet.
Por lo tanto, se recomienda encarecidamente a los usuarios que actualicen PHP a los últimas versiones PHP 7.3.11 y PHP 7.2.24.
REFERENCIA
COMENTARIOS