Se publica Symfony 1.1.9 y 1.2.8

Varios meses después del lanzamiento de su última versión, Symfony ha vuelto a la carga con nuevas versiones en sus dos ramas más recientes.

Symfony 1.1.9 será la última versión publicada de la rama 1.1.x, por lo que se abandona oficialmente el desarrollo de esta versión y a partir de ahora sólo se publicarán parches de seguridad hasta el mes de junio de 2010.

El listado de errores corregidos en esta última versión es muy grande y su estabilidad hace que siga siendo una buena opción para ejecutar las aplicaciones desarrolladas para Symfony 1.1.

Por su parte, Symfony 1.2.8 también corrige numerosos errores descubiertos en las versiones anteriores. No obstante, su principal novedad es que elimina la corrección de un problema de seguridad descubierto en el generador de la parte de administración.

Aunque se trata de un problema de seguridad reconocido, en la práctica resulta peor corregirlo que no hacerlo. Fabien asegura que, después de discutirlo con otros desarrolladores del núcleo de Symfony, no han sido capaces de encontrar una solución y que todos los demás frameworks también son vulnerables al mismo problema.

Las circunstancias exactas en las que tu aplicación puede ser vulnerable son las siguientes:

  • Una plantilla de tu aplicación no muestra el widget asociado a un campo del formulario incluido en la página y ese campo tiene un validador no obligatorio.
  • Un atacante adivina el nombre del campo que falta, inyecta un valor arbitrario y ese valor se guarda en la base de datos.

Si no utilizas nombres comunes en los campos del formulario, es muy difícil adivinar el nombre de un campo no incluido en el formulario, ya que esa información nunca se mostraría en el código HTML de la página.

Como siempre, para actualizar tu versión de Symfony:

  • Si usas el sandbox, te lo tienes que bajar otra vez.
  • Si lo has instalado mediante el archivo comprimido de Symfony, te lo tienes que bajar otra vez desde www.symfony-project.org/installation/1_2 y debes descomprimirlo en el mismo directorio dentro de tu proyecto.
  • Si lo has instalado mediante PEAR, ejecuta el comando pear upgrade symfony/symfony-1.2.8
  • Si lo instalas mediante Subversion, ejecuta el comando svn checkout http://svn.symfony-project.com/tags/RELEASE_1_2_8/ .

Independientemente de cómo lo actualices, no olvides borrar la caché de cada proyecto después de la actualización mediante el comando ./symfony cc

Fuentes:

Comentarios

  1. Link roto o invalido en "Si lo has instalado mediante el archivo comprimido de Symfony, te lo tienes que bajar otra vez desde www.symfony-project.org/installation/1_2 y debes descomprimirlo en el mismo directorio dentro de tu proyecto."

    Saludos

    Brian el 22 de julio de 2009, 21:48:21

  2. Leyendo este artículo me interesó sobremanera esta parte: "Aunque se trata de un problema de seguridad reconocido, en la práctica resulta peor corregirlo que no hacerlo. Fabien asegura que, después de discutirlo con otros desarrolladores del núcleo de Symfony, no han sido capaces de encontrar una solución y que todos los demás frameworks también son vulnerables al mismo problema."

    Debo decirles que en el caso de CakePHP esto ya está resuelto, desde hace MÁS DE TRES años, y su nombre es el SecurityComponent (http://book.cakephp.org/view/175/Security-Component). Mediante este componente, y su interacción con el FormHelper (http://book.cakephp.org/view/182/Form), CakePHP hashea la información de todos los campos que son enviados al cliente, y en el momento del post (en un filtro previa a la acción del controlador), se asegura, utilizando esa hash, que el formulario no ha sido alterado (básicamente, que los HIDDEN fields no fueron modificados, o que no haya nuevos campos que no son esperados.) En ese caso, el Security component hace un blackhole del request.

    En consecuencia, las aplicaciones CakePHP no son vulnerables a ese problema desde Marzo del 2006, y además recomendaría que todo desarrollador de Symfony no acepte un "no sabemos como resolver esto", cuando las implicancias de seguridad son tan graves.

    Así que habría que decirle a Fabien que no hable por otros frameworks ;)

    Mariano Iglesias el 23 de julio de 2009, 20:32:52

  3. La verdad, que no suena muy bien esto. Osea que podria hacer un post con un campo dado existente, y se guarda en la DB?.....mmmmm

    puentesdiaz el 31 de julio de 2009, 19:53:54

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.

Publicada el

21 de julio de 2009

Etiquetas

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.