Grave vulnerabilidad en PHP-CGI
Publicado: 04 May 2012, 17:46
Grave vulnerabilidad en PHP-CGI
Importancia:
5 - Crítica
Fecha de publicación:
03/05/2012
Recursos afectados
Servidores web con PHP ejecutándose como CGI.
Descripción
Posibilita el paso de parámetros al intérprete, lo que permite la ejecución de código arbitrario y la revelación de información confidencial.
Solución
Ya existen módulos de la herramienta de pentesting y hacking metasploit que permiten explotar esta vulnerabilidad por lo que se recomienda actualizar cuanto antes. Se puede hacer a través del código fuente, aunque se recomienda instalarlo a través de los mecanismos de actualización de paquetes de Linux. Para sistemas Windows, se puede descargar de la web [Enlace externo eliminado para invitados].
Como alternativa, si no se puede actualizar, el fabricante propone las siguientes reglas del módulo mod_rewrite de Apache para bloquear las URLs maliciosas:
RewriteCond %{QUERY_STRING} ^(%2d|-)[^=]+$ [NC]
RewriteRule ^(.*) $1? [L]
Detalle
Eindbazen, un equipo de competiciones CTF, ha descubierto una vulnerabilidad en PHP-CGI que permite pasar parámetros al intérprete de PHP, como -s o -r, a través de la URL. Por ejemplo añadiendo la cadena '?-s'.
Como resultado de la inyección de estos parámetros en la URL, se puede mostrar el contenido de archivos de código fuente (que puede incluir información confidencial como, por ejemplo, contraseñas de BBDD) o ejecutar código PHP arbitrario.
Aunque el parámetro '-r', para ejecutar código PHP, es filtrado en php5-cgi, dependiendo de las variables de entorno, esta medida de seguridad puede evitarse.
PHP eliminó por error el código que protegía ante este problema en 2004.
FastCGI no es vulnerable.
Impacto:
Ejecución de código malicioso.
Revelación de información confidencial.
Source exploit en rb (Modulo para Metasploit):
[Enlace externo eliminado para invitados]
Ejemplo:
[Enlace externo eliminado para invitados]
[Enlace externo eliminado para invitados]
Fuentes
[Enlace externo eliminado para invitados]
Inteco-CERT
Importancia:
5 - Crítica
Fecha de publicación:
03/05/2012
Recursos afectados
Servidores web con PHP ejecutándose como CGI.
Descripción
Posibilita el paso de parámetros al intérprete, lo que permite la ejecución de código arbitrario y la revelación de información confidencial.
Solución
Ya existen módulos de la herramienta de pentesting y hacking metasploit que permiten explotar esta vulnerabilidad por lo que se recomienda actualizar cuanto antes. Se puede hacer a través del código fuente, aunque se recomienda instalarlo a través de los mecanismos de actualización de paquetes de Linux. Para sistemas Windows, se puede descargar de la web [Enlace externo eliminado para invitados].
Como alternativa, si no se puede actualizar, el fabricante propone las siguientes reglas del módulo mod_rewrite de Apache para bloquear las URLs maliciosas:
RewriteCond %{QUERY_STRING} ^(%2d|-)[^=]+$ [NC]
RewriteRule ^(.*) $1? [L]
Detalle
Eindbazen, un equipo de competiciones CTF, ha descubierto una vulnerabilidad en PHP-CGI que permite pasar parámetros al intérprete de PHP, como -s o -r, a través de la URL. Por ejemplo añadiendo la cadena '?-s'.
Como resultado de la inyección de estos parámetros en la URL, se puede mostrar el contenido de archivos de código fuente (que puede incluir información confidencial como, por ejemplo, contraseñas de BBDD) o ejecutar código PHP arbitrario.
Aunque el parámetro '-r', para ejecutar código PHP, es filtrado en php5-cgi, dependiendo de las variables de entorno, esta medida de seguridad puede evitarse.
PHP eliminó por error el código que protegía ante este problema en 2004.
FastCGI no es vulnerable.
Impacto:
Ejecución de código malicioso.
Revelación de información confidencial.
Source exploit en rb (Modulo para Metasploit):
[Enlace externo eliminado para invitados]
Ejemplo:
[Enlace externo eliminado para invitados]
[Enlace externo eliminado para invitados]
Fuentes
[Enlace externo eliminado para invitados]
Inteco-CERT