Bibliotecas NPM con millones de descargas son infectadas con un peligroso backdoor. Audite sus aplicaciones web

Un reporte de seguridad señala que Command-Option-Argument (coa), la popular biblioteca npm, ha sido infiltrada con código malicioso, lo que pudo tener severas consecuencias a nivel mundial. Esta biblioteca es descargada unas 9 millones de veces por semana, y es usada en millones de repositorios de código abierto.

Poco después, también se descubrió que rc, otro componente nmp muy popular, también fue secuestrado por actores de amenazas. Esta biblioteca es descargada casi 15 millones de veces por semana. Como algunos usuarios recordarán, coa es un analizador de opciones de línea de comandos para proyectos de Node.js. La última versión estable 2.0.2 del proyecto fue lanzado en diciembre de 2018.

Al tratarse de un proyecto que no ha recibido mantenimiento en años, a muchos desarrolladores les resultó extraño que de pronto aparecieran versiones nuevas, incluyendo 2.0.3, 2.0.4, 2.1.1, 2.1.3 y 3.1.3.

Posteriormente, algunos desarrolladores comenzaron a reportar problemas con sus compilaciones aparentemente relacionados con los nuevos lanzamientos de coa. Eventualmente se confirmó el compromiso de rc, con la aparición de las versiones maliciosas 1.2.9, 1.3.9 y 2.3.9.

Este incidente llega después del compromiso de ua-parser-js, otra biblioteca nmp empleada por compañías como Amazon, Facebook y Microsoft. Al parecer, en ambos incidentes fue detectada la misma variante de malware, por lo que es altamente posible que el mismo grupo de hacking esté detrás de ambos ataques.

Si bien las versiones maliciosas de estas bibliotecas ya han sido eliminadas, expertos pudieron recuperar algunas copias, descubriendo que en esencia se trata de scripts de preinstalación sospechosos.

Es en la versión 2.0.4 que los investigadores identificaron el uso de código malicioso, incluido en el archivo “compile.js” que contiene JavaScript ofuscado:

Con este JavaScript se lanza un archivo Batch identificado como “compile.bat”, incluido en la biblioteca coa. Este script también está oculto, de tal forma que podría ser usado para la instalación de ransomware, herramientas de robo de datos y otras actividades maliciosas en los sistemas infectado.

El compromiso exitoso del sistema objetivo permitiría a los atacantes robar contraseñas de diversos navegadores y plataformas de redes sociales, interceptar información financiera confidencial, registrar las pulsaciones del teclado de la víctima y otros ataques.  

Como se menciona anteriormente, esta es una campaña de amplio impacto y podría resultar altamente perjudicial en ataques de cadena de suministro, por lo que se recomienda a los usuarios de las bibliotecas coa y rc verificar la integridad de sus proyectos y, de ser posible, realizar un escaneo antimalware mediante la búsqueda de archivos maliciosos como compile.bat o compile.js.

Para conocer más sobre riesgos de seguridad informática, malware, vulnerabilidades y tecnologías de la información, no dude en ingresar al sitio web del Instituto Internacional de Seguridad Cibernética (IICS).