Se publican las actualizaciones de seguridad 2.0.20 y 2.1.5
El proyecto Symfony acaba de anunciar la publicación de dos actualizaciones de seguridad extremadamente importantes. Se recomienda la actualización inmediata de todas las aplicaciones creadas con Symfony 2.0 o 2.1.
Las aplicaciones 2.0 son vulnerables al primero de los agujeros de seguridad descubiertos. Este problema hace que cualquiera pueda acceder a las URLs protegidas por un firewall del componente de seguridad de Symfony. Si has protegido una ruta llamada /foo
, los usuarios anónimos no pueden entrar a esa ruta y tampoco a esta otra, que codifica la letra f
y la sustituye por un código numérico: /%66oo
. Sin embargo, si codificas de nuevo la primera parte de la URL (el resultado es /%2566oo
) entonces Symfony 2.0.X deja al usuario acceder a esta ruta (que realmente es /foo
). Ninguna versión de Symfony 2.1 está afectada por este problema.
El segundo agujero de seguridad afecta a todas las versiones de Symfony 2.0 y 2.1 y permite al atacante ejecutar cualquier controlador de la aplicación, incluso los que están protegidos por el componente de seguridad. Para saber si tu aplicación es vulnerable, ejecuta los dos siguientes comandos:
$ php app/console cache:clear $ php app/console router:debug _internal
Si el resultado del último comando es un mensaje de error con el texto "The route "_internal" does not exist.", tu aplicación no es vulnerable. En otro caso, debes actualizar tu versión de Symfony 2.0 o 2.1 y debes seguir los pasos que se indican en el post del blog oficial para actualizar algunas partes del código de tu aplicación.
Cómo actualizar a 2.0.20:
1. Actualiza tus archivos deps
y deps.lock
por lo siguiente (pero no borres las dependencias propias que hayas añadido en tu proyecto):
2. Actualiza los vendors ejecutando el siguiente comando:
$ cd /ruta/del/proyecto $ php bin/vendors install
3. Si al ejecutar la aplicación se muestra algún error, borra la cache manualmente:
$ php app/console cache:clear
Cómo actualizar a 2.1.5:
1. Actualiza los vendors con el siguiente comando:
$ cd /ruta/del/proyecto $ php composer.phar update
Si tienes dudas, también puedes consultar la guía de actualización de Symfony 2.0 o la guía de actualización de Symfony 2.1.
Como puedes imaginar, estas dos vulnerabilidades son muy graves y resulta fácil que tu aplicación esté expuesta a ellas. Así que además de actualizar rápidamente tus aplicaciones, no olvides avisar a todos los programadores Symfony que conozcas.
Fuente: Security release: Symfony 2.0.20 and 2.1.5 released
Comentarios
-
#1
Hola Javier, me he actualizado a la versión 2.1.5 y la 2.1.6 y en estas dos últimas me ha dejado de funcionar correctamente el método 'bind' de los formularios. Si vuelvo a la versión 2.1.4 vuelve a bindear los datos correctamente. ¿Sabes si han hecho algún cambio con respecto a esto?
Este artículo ya no permite añadir más comentarios.
¿Por qué? Los artículos cierran sus comentarios automáticamente
unos meses después de su publicación para asegurar que estos sigan
siendo relevantes.
Proyectos Symfony destacados
La plataforma de eCommerce 100% Symfony que rivaliza con Magento y PrestaShop. Ver más
Síguenos en @symfony_es para acceder a las últimas noticias.