Ha aparecido una vulnerabilidad
en la función Hash de Ruby 1.9, con la que usuarios remotos podrían provocar denegación de servicio DoS en programas donde se usen.
Para quién lo desconozca Ruby es un lenguaje de programación dinámico y de código abierto enfocado en la
simplicidad y productividad. Su elegante sintaxis se siente natural al
leerla y fácil al escribirla.
Lo que podría hacer un usuario remoto es enviar datos preparados para provocar colisiones hash, lo que haría un consumo excesivo de la CPU del sistema atacado, provocando el fallo.
Ya tubo una vulnerabilidad (con CVE-2012-5371)
parecida, aunque distinta, a una anterior (con CVE-2011-4815) para ruby
1.8.7 ya corregida. Las versiones de Ruby 1.9 se solucionaron con una función hash basada en la función MurmurHash, pero han anunciado que hay la manera de diseñar secuencias de cadenas que colisionen sus valores hash entre ellos.
Se
ha publicado la versión 1.9.3 patchlevel 327 que corrige este problema cambiando
la función Hash de MurmurHash a SipHash
2-4.
No hay comentarios:
Publicar un comentario