Logotipo de Zephyrnet

Anatomía de un ataque de paquete malicioso

Fecha:

En enero pasado, miles de usuarios de dos populares bibliotecas de código abierto, "falsificador" y "colores", se sorprendieron al ver que sus aplicaciones fallaban y mostraban datos incomprensibles después de haber sido infectados con un paquete malicioso. Y en octubre, un actor de amenazas publicó 155 paquetes maliciosos en el repositorio npm en una campaña de typosquatting dirigida a usuarios de 18 paquetes legítimos que, combinados, suelen ver más de 1.5 millones de descargas semanales. ¿El gol del atacante? Para descargar e instalar un ladrón de contraseñas/troyano de puerta trasera.

Como su nombre lo indica, un paquete malicioso es un software creado con intenciones maliciosas. Lo que los hace particularmente preocupantes es que son notablemente fáciles de crear. Útiles para cualquier cantidad de intenciones maliciosas, estos paquetes son difíciles de evitar y detectar, a menos que sepa qué buscar.

Una amenaza de rápido crecimiento

Los paquetes maliciosos no son nuevos, pero están proliferando a un ritmo alarmante. En nuestro "Informe especial de paquetes maliciosos”, Mend identificó un aumento del 315 % en los paquetes maliciosos publicados en npm y RubyGems solo entre 2021 y 2022, y espera que esa tendencia continúe.

Un tipo de malware, los paquetes maliciosos usan técnicas similares para engañar a las personas para que los descarguen, donde causan estragos dentro de los sistemas de los usuarios. Debido a que los paquetes maliciosos son algo que generalmente proviene de lugares en los que cree que confía, son anormalmente efectivos.

Los paquetes maliciosos son una forma automatizada de crear un vector de ataque o de obtener datos para habilitar otro vector de ataque que no requiera ninguna actividad adicional por parte del atacante. Simplemente carga el paquete y déjalo ir. Desde la perspectiva de un actor de amenazas, el esfuerzo realizado genera un alto rendimiento. Entonces, no sorprende que estemos viendo un aumento meteórico en los paquetes maliciosos.

Anatomía de un ataque de paquete malicioso

Los paquetes maliciosos se utilizan para robar credenciales, filtrar datos, convertir aplicaciones en botnets o borrar datos. Pero primero, los atacantes deben engañar a alguien o algo para que descargue el paquete.

Los atacantes utilizan cuatro vectores de ataque básicos para paquetes maliciosos:

  1. Secuestro de marca: Cuando un atacante adquiere o asume la identidad en línea de otra empresa o propietario de un paquete y luego inserta un código malicioso. Este último método fue utilizado en el ataque a intercambio de criptomonedas dYdX. En este caso, las versiones del paquete malicioso contenían un enlace de preinstalación que hacía que pareciera que se estaba a punto de descargar un script de CircleCI.
  2. Error tipográfico: Como sugiere su nombre, este ataque se basa en un simple error tipográfico. Un atacante publica un paquete malicioso con un nombre similar a un paquete popular y espera a que un desarrollador escriba mal el nombre del paquete y, sin querer, llame a la versión maliciosa.
  3. Secuestro de dependencias: Un atacante obtiene el control de un repositorio público para cargar una nueva versión maliciosa.
  4. Confusión de dependencia: Una adición más reciente a la lista de vectores de ataque, la confusión de dependencias ocurre cuando un paquete malicioso en repositorios públicos tiene el mismo nombre que un paquete interno. El atacante usa esto para engañar a las herramientas de administración de dependencias para que descarguen el paquete público malicioso.

Dado que los paquetes maliciosos aún son relativamente jóvenes, las técnicas en las que se basan los atacantes tampoco son sofisticadas. Los atacantes que usan paquetes maliciosos tienden a confiar en cuatro técnicas comunes, que incluyen secuencias de comandos de reinstalación y posinstalación, técnicas básicas de evasión, comandos de shell y técnicas básicas de comunicación de red. En el caso de la comunicación de red, los paquetes maliciosos utilizan métodos básicos para implementar, ejecutar y comunicarse en la máquina. Esas son buenas noticias para los defensores, ya que incluso si el paquete se descarga con éxito, sigue siendo relativamente fácil de detectar mientras se implementa.

Al igual que con los vectores de ataque, los atacantes adoptan cada vez más técnicas más sofisticadas, como la telemetría, que permite la recopilación de datos. Hay muchas oportunidades para que los malos actores refinen el uso de paquetes maliciosos. Esperamos ver enfoques más diversos y avanzados, y ataques más difíciles de detectar, a medida que los actores de amenazas evolucionen en sus técnicas.

Si bien, a primera vista, el momento en que se lanzan los paquetes maliciosos parece aleatorio, nuestra investigación encontró que casi el 25 % se publicaba los jueves por la tarde. Atribuimos esto a que los atacantes conocen la prevalencia de los proveedores de seguridad cibernética con sede en Israel, donde muchos observan el viernes y el sábado como fin de semana. Además, al apuntar a la zona horaria de Israel, vemos que los ataques se lanzan al final de la tarde cuando termina la semana laboral.

Código abierto no tiene por qué significar temporada abierta

La razón principal por la que los paquetes maliciosos funcionan tan bien es porque el código abierto es de acceso público. Un novato con conocimientos básicos de programación no solo puede crear fácilmente un paquete malicioso, sino que también puede publicar fácilmente el código en repositorios de código abierto que utilizan millones de desarrolladores. Las posibilidades de éxito están muy a su favor.

Por eso es tan importante comprender qué se incorpora a las aplicaciones a través del código fuente abierto. Si las empresas aún no lo han hecho, deben comenzar a priorizar su cadena de suministro de software. Deben usar una herramienta de escaneo automatizado que pueda monitorear bibliotecas y repositorios de código fuente abierto en busca de vulnerabilidades y ataques, y aprovechar las herramientas que pueden ayudar a generar una lista de materiales de software (SBOM). A diferencia de las vulnerabilidades que pueden permanecer en el código base durante meses, los paquetes maliciosos son una amenaza urgente para el software y los sistemas.

Ataques como log4j y del Vientos solares Las brechas acaparan los titulares, pero representan una pequeña fracción de los implacables ataques que se lanzan a diario contra las aplicaciones. La creciente amenaza de ataques de paquetes maliciosos añade más urgencia a la creciente necesidad de un nuevo enfoque para los programas de seguridad de aplicaciones. Solo a través de AppSec persistente y automatizado, las organizaciones pueden ganar ventaja en la batalla por el software seguro.

punto_img

Información más reciente

punto_img