Desbordamiento de Pila en la interpretacion de URIs en YAML (CVE-2014-2525)

Hay un desbordamiento en la interpretación de URIs de YAML en Ruby. Se le ha asignado el identificador CVE-2014-2525 a esta vulnerabilidad.

Detalles

En cualquier momento en el que un YAML con etiquetas es interpretado, una cadena especialmente preparada puede causar un desbordamiento de pila lo que puede llevar a ejecución de código arbitrario.

Por ejemplo:

YAML.load <codigo_de_fuente_desconocida>

Versiones Afectadas

Las versiones de Ruby 1.9.3-p0 y en delante incluyen psych como el interprete YAML por defecto. Cualquier versión de psych que ha sido compilada con libyaml <= 0.1.5 se considera afectada.

Estas versiones de Ruby contienen una versión afectada de libyaml:

  • Ruby 2.0.0-p451 y anteriores,
  • Ruby 2.1.0 y Ruby 2.1.1.

Puedes verificar la versión de libyaml usada ejecutando:

$ ruby -rpsych -e 'p Psych.libyaml_version'
[0, 1, 5]

Soluciones

Se recomienda a los usuarios que instalaron libyaml en el sistema que lo actualicen a 0.1.6. Al recompilar Ruby se hará referencia a la versión actualizada de libyaml:

$ ./configure --with-yaml-dir=/path/to/libyaml

Se recomienda a los usuarios sin una version libyaml en su sistema y que confían en la versión incluida en Ruby que actualicen psych a la versión 2.0.5 la cual contiene la versión 0.1.6 de libyaml:

$ gem install psych

o actualiza tu versión de Ruby a 2.0.0-p481, 2.1.2 o más nueva.

Historia

  • Publicado originalmente 2014-03-29 01:49:25 UTC
  • Actualizado 2014-03-29 09:37:00 UTC
  • Actualizado 2014-05-09 03:00:00 UTC