CVE-2019-16255: Una vulnerabilidad de inyeccion de código en Shell#[] y Shell#test

Se encontró una vulnerabilidad de inyección de código en Shell#[] y Shell#test en están en la librería estándar (lib/shell.rb). A la vulnerabilidad se le ha asignado el identificador :CVE CVE-2019-16255.

Detalles

Shell#[] y su alías Shell#test que se definene en lib/shell.rb permiten inyectar código si el primer argumento (tambień conocido como el argumento con la “orden”) es un dato no confiable. Un atacante puede explotar esto para llamar un método Ruby arbitrario.

Note que pasar datos no confiables a métodos de Shell es en general peligroso. Los usuarios nunca deberían hacerlo. Sin embargo tratamos este caso particular como una vulnerabilidad porque el propósito de Shell#[] y Shell#test se considera comprobar la existencia de un archivo.

Todos los usuarios que corran una versión afectada deben actualizar de inmediato.

Versiones afectadas

  • Tdoas las versiones que son Ruby 2.3 o anteriores
  • Serie Ruby 2.4: Ruby 2.4.7 o anterior
  • Serie Ruby 2.5: Ruby 2.5.6 o anterior
  • Serie Ruby 2.6: Ruby 2.6.4 o anterior
  • Ruby 2.7.0-preview1

Agradecimientos

Gracias a ooooooo_q por descubrir este problema.

Historia

  • Original publicado el 2019-10-01 11:00:00 (UTC)