¿Cómo nos afecta el aumento de los paquetes maliciosos?


Imagen: Zdzisław Beksiński



Por Víctor Ruiz, fundador de SILIKN, Instructor Certificado en Ciberseguridad — CSCT™, (ISC)² Certified in Cybersecurity℠ CC, EC-Council Ethical Hacking Essentials (EHE) Certified, Ethical Hacking Certified Associate (EHCA) y líder del Capítulo Querétaro de la Fundación OWASP.

Un paquete malicioso es un software creado con malas intenciones. 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.

Los paquetes maliciosos no son nuevos, pero están proliferando a un ritmo alarmante y 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 altamente efectivos.

Los paquetes maliciosos son una forma automatizada de crear un vector de ataque u obtener datos para habilitar otro vector de ataque que no requiere ninguna actividad adicional por parte del atacante. Simplemente se carga el paquete y listo. Desde la perspectiva de un cibercriminal, es poco esfuerzo que genera un alto rendimiento. Entonces, no sorprende que se esté presentando un aumento en los paquetes maliciosos.

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

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

Brandjacking: cuando un atacante adquiere o asume la identidad en línea de otra empresa o del propietario de un paquete y luego inserta un código malicioso.

Typosquatting: 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 saber, llame a la versión maliciosa.

Secuestro de dependencia (Dependency hijacking): un atacante obtiene el control de un repositorio público para cargar una nueva versión maliciosa.

Confusión de dependencia (Dependency confusion): 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 nuevos, 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 ciberatacantes perfeccionen el uso de paquetes maliciosos y se espera ver enfoques más diversos y avanzados, así como ataques más difíciles de detectar, a medida que los ciberatacantes evolucionan en sus técnicas.

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.

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. A diferencia de las vulnerabilidades que pueden permanecer en el código base durante meses, los paquetes maliciosos deben ser una prioridad en el tema del software y los sistemas.

Los ataques como Log4j y SolarWinds han acaparado las noticias, pero representan una pequeña fracción de los ataques que se lanzan diariamente 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 la seguridad, persistente y automatizada, las organizaciones pueden ganar la batalla por el software seguro.

Para más información, visite: https://www.silikn.com/