Fueron detectados mas de 700 paquetes maliciosos usados para minerĂ­a en RubyGems

Hace algunos dĂ­as los investigadores de ReversingLabs dieron a conocer mediante una publicaciĂ³n en su blog, los resultados de un anĂ¡lisis del uso de typosquatting en el repositorio RubyGems. Por lo general, typosquatting se usa para distribuir paquetes maliciosos diseñados para permitir que el desarrollador desatendido cometa un error tipogrĂ¡fico o no note la diferencia.

El estudio revelĂ³ mĂ¡s de 700 paquetes, cuyos nombres son similares a los paquetes populares y difieren en detalles menores, por ejemplo, reemplazando letras similares o usando guiones bajos en lugar de guiones.

Para evitar tales medidas, las personas malintencionadas siempre estĂ¡n en busca de nuevos vectores de ataque. Uno de esos vectores, denominado ataque de la cadena de suministro de software, se estĂ¡ volviendo cada vez mĂ¡s popular.

De los paquetes que fueron analizados se señalĂ³ que mĂ¡s de 400 paquetes fueron identificados por contener componentes sospechosos de actividad maliciosa. En particular, dentro del archivo estaba aaa.png, que incluĂ­a cĂ³digo ejecutable en formato PE.

Sobre los paquetes

Los paquetes maliciosos incluĂ­an un archivo PNG que contenĂ­a un archivo ejecutable para la plataforma Windows en lugar de una imagen. El archivo se generĂ³ utilizando la utilidad Ocra Ruby2Exe e incluyĂ³ un archivo autoextraĂ­ble con un script Ruby y un intĂ©rprete Ruby.

Al instalar el paquete, se cambiĂ³ el nombre del archivo png a exe y se iniciĂ³. Durante la ejecuciĂ³n, se creĂ³ un archivo VBScript y se agregĂ³ al inicio automĂ¡tico.

El VBScript malicioso especificado en un ciclo analizĂ³ el contenido del portapapeles en busca de informaciĂ³n similar a las direcciones de las billeteras criptogrĂ¡ficas y en caso de detecciĂ³n, reemplazĂ³ el nĂºmero de billetera con la expectativa de que el usuario no notarĂ­a las diferencias y transferirĂ­a los fondos a la billetera incorrecta.

Typosquatting es particularmente interesante. Usando este tipo de ataque nombran intencionalmente paquetes maliciosos para parecerse lo mĂ¡s posible a los populares, con la esperanza de que un usuario desprevenido escriba mal el nombre e instale involuntariamente el paquete malicioso en lugar.

El estudio mostrĂ³ que no es difĂ­cil agregar paquetes maliciosos a uno de los repositorios mĂ¡s populares y estos paquetes pueden pasar desapercibidos, a pesar de un nĂºmero significativo de descargas. Cabe señalar que el problema no es especĂ­fico de RubyGems y se aplica a otros repositorios populares.

Por ejemplo, el año pasado, los mismos investigadores identificaron en el repositorio de NPM un paquete malicioso de bb-builder que utiliza una tĂ©cnica similar para ejecutar un archivo ejecutable para robar contraseñas. Antes de esto, se encontrĂ³ una puerta trasera dependiendo del paquete NPM de flujo de eventos y el cĂ³digo malicioso se descargĂ³ aproximadamente 8 millones de veces. Los paquetes maliciosos tambiĂ©n aparecen periĂ³dicamente en los repositorios de PyPI.

Estos paquetes se asociaron con dos cuentas a través de las cuales, del 16 de febrero al 25 de febrero de 2020, se publicaron 724 paquetes maliciosos en RubyGems que en total se descargaron aproximadamente 95 mil veces.

Los investigadores han informado a la administraciĂ³n de RubyGems y los paquetes de malware identificados ya se han eliminado del repositorio.

Estos ataques amenazan indirectamente a las organizaciones al atacar a los proveedores externos que les proporcionan software o servicios. Dado que dichos proveedores generalmente se consideran editores de confianza, las organizaciones tienden a pasar menos tiempo verificando que los paquetes que consumen estĂ¡n realmente libres de malware.

De los paquetes de problemas identificados, el mĂ¡s popular fue el atlas-client, que a primera vista es casi indistinguible del paquete legĂ­timo atlas_client. El paquete especificado se descargĂ³ 2100 veces (el paquete normal se descargĂ³ 6496 veces, es decir, los usuarios se equivocaron en casi el 25% de los casos).

Los paquetes restantes se descargaron en promedio 100-150 veces y se camuflaron para otros paquetes usando la misma tĂ©cnica de subrayado y reemplazo de guiĂ³n (por ejemplo, entre paquetes maliciosos : appium-lib, action-mailer_cache_delivery, activemodel_validators, asciidoctor_bibliography, assets-pipeline, activos-validators, ar_octopus- seguimiento de replicaciĂ³n, aliyun-open_search, aliyun-mns, ab_split, apns-polite).

Si quieres conocer mĂ¡s al respecto sobre el estudio realizado, puedes consultar los detalles en el siguiente enlace.Â