Deje de programar en Ruby, las aplicaciones que usan bibliotecas Ruby tienen un backdoor

Recientemente el equipo de mantenedores del repositorio de paquetes RubyGems anunció la eliminación de al menos 18 versiones maliciosas de 11 bibliotecas de Ruby debido a la presencia de un backdoor. Expertos en seguridad de aplicaciones web afirman que incluso se detectaron casos en los que los proyectos de programación en Ruby de algunos usuarios fueron infectados con un malware de minado de criptomoneda. Este desarrollo malicioso fue descubierto apenas hace un par de días en cuatro versiones de rest-client, una biblioteca de Ruby muy popular. 

Backdoor

Los reportes indican que este código malicioso es capaz de recolectar y enviar URLs y variables de entorno del sistema objetivo a un servidor remoto, ubicado en alguna parte de Ucrania. “Los datos más expuestos a esta filtración son las credenciales de inicio de sesión, empleadas para acceder a bases de datos, sistemas de pagos, entre otras plataformas”, menciona Jan Dintel, mantenedor de Ruby.

En cuanto al backdoor detectado en estas bibliotecas, los expertos en seguridad de aplicaciones web mencionan que éste permitiría a un actor de amenazas enviar un archivo cookie al proyecto de Ruby comprometido, lo que generaría las condiciones necesarias para ejecutar comandos maliciosos.

Los mantenedores de RubyGems también detectaron que los hackers estaban abusando de este mecanismo para inyectar malware de minado en algunos proyectos, como:

  • rest-client, descargado 176 veces
  • bitcoin_vanity, descargado 8 veces
  • lita_coin, descargado 216 veces
  • coming-soon, descargado 211 veces
  • omniauth_amazon, descargado 193 veces

Todas las bibliotecas, excepto rest-client, se crearon tomando otra biblioteca completamente funcional, agregando el código malicioso y luego volviéndolo a cargar en RubyGems con un nombre diferente. Los responsables de estas acciones se mantuvieron activos en RubyGems por más de un mes sin que nadie detectara su presencia o acciones.

Finalmente, los operadores de esta campaña fueron detectados luego de obtener acceso a la cuenta de uno de los desarrolladores de rest-client, misma que se usó para impulsar cuatro versiones maliciosas de la distribución en RubyGems. Para los especialistas en seguridad de aplicaciones web, los actores de amenazas cometieron un serio error al atacar un proyecto tan relevante en RubyGems, que cuenta con más de 113 millones de descargas. “Esto llamó demasiada atención, por lo que este esquema fue desmantelado pocas horas después de que se detectara esta actividad”, agregaron.

A pesar de la intervención de los encargados de rest-client, las 18 versiones malintencionadas de la biblioteca fueron descargadas alrededor de 3 mil 600 veces antes de ser eliminadas de la plataforma, por lo que el problema aún no termina.

Expertos en seguridad de aplicaciones web del Instituto Internacional de Seguridad Cibernética (IICS) recomiendan a los administradores de proyectos que utilicen estas bibliotecas eliminar la versión maliciosa o, de ser necesario, actualizar o degradar a una versión segura. Otros expertos han detectado la presencia de backdoors similares en RubyGems anteriormente; específicamente en los proyectos Bootstrao-Sass y strong_password. Aunque son de cierto modo similares, los investigadores aún no determinan si existe algún vínculo entre estos riesgos de seguridad en la plataforma.