Ataques a la cadena de suministro, ¿Qué son y qué hacer para mitigarlos?

La explotación de una vulnerabilidad que comprometió el código fuente del sistema Orión de Solar Winds, un software de uso extendido por diferentes actores de gobierno y de la industria mundial para la administración y monitorización de redes; puso en primer plano un tipo de ataque sigiloso que ha venido cobrando fuerza: Los ataques a la cadena de suministro (Supply Chain Attack).

El principal problema en la violación a la cadena de suministro de software radica en que, del 85% al 97% del código empleado actualmente en la industria del desarrollo de software proviene de la reutilización de frameworks de código de fuente abierta, repositorios de software y API de terceros, lo que genera potenciales vulnerabilidades en el ciclo de desarrollo de un producto de software

Un ataque a la cadena de suministro (Supply Chain Attack) de software ocurre entonces cuando los piratas informáticos manipulan el código en componentes de software de terceros para comprometer las aplicaciones ‘posteriores’ que los utilizan; esto significa que los atacantes logran comprometer la integridad del código fuente de un software de uso extendido en la industria, para insertar puertas traseras “backdoor” o código malicioso “malware” que les permiten alcanzar a las corporaciones y  usuarios  que adquieren dichas tecnologías a través del proveedor comprometido. 

De allí que se denominen ataques a la cadena de suministro: no van directo contra la organización finalmente comprometida, sino que se llega a ella a través de los proveedores de software como vectores de ataque.

Los ataques a la cadena de suministro de software se han vuelto cada vez más recurrentes en los últimos años, siendo considerados el renacer de los ataques a gran escala.

Por lo anterior, en este artículo se analiza el caso  SolarWinds, un ataque a la cadena de suministro que causó estragos informáticos en una multitud de industrias y gobiernos y que provocó fugas de información a grandes niveles.

El caso SolarWinds

En el ataque a la cadena de suministro de software en la empresa SolarWinds ocurrido en 2020, los atacantes suplantaron la identidad y los mecanismos de autenticación de cuentas de acceso y lograron insertar funciones en el código fuente de un archivo de biblioteca dinámica particular (.dll) en el software de la plataforma de administración y monitoreo de redes conocido como Orión. Posteriormente, SolarWinds firmó y distribuyó el .dll como parte de sus procesos de actualización, infectando con el malware a más de 18.000 clientes y 40 entidades públicas de diferentes sectores entre los que se encuentran entidades gubernamentales, empresas de tecnologías, empresas de seguros, entidades financieras, empresas de retail y diferentes organizaciones ubicadas en todos los continentes

Los atacantes lograron ejecutar código de forma remota con privilegios de administrador e insertar el malware SUNSPOT en el entorno de desarrollo de la plataforma Orión, lo que les permitió sembrar una puerta trasera en el código de esta importante herramienta de monitorización y administración de redes. Con el control del código fuente del software, los atacantes le insertaron el backdoor SUNBURST antes de su compilación, creando una versión “dropper” que sería distribuida como una actualización del software entre todos los clientes. SolarWinds firmó las actualizaciones y las distribuyó, y los clientes no tenían motivos para sospechar que la actualización estaba infectada, comprometiendo su infraestructura de servicios y aplicaciones.

De acuerdo con Taxonomy of The Attack on SolarWinds and Its Supply Chain El ataque se ejecutó en cinco etapas alineadas con el Cyber Kill Chain

Modus operandi de los ataques a la cadena de suministro

Según el informe de Cybersecurity and Infrastructure Security Agency (2021), el ciclo de vida de la cadena de suministro de las TIC tiene seis fases. En cada fase del ciclo de vida, el software corre el riesgo de que se introduzcan vulnerabilidades malintencionadas o involuntarias.

Por ejemplo, en la fase de diseño se incorporan funciones ocultas en el código fuente para realizar acciones en el background sin el consentimiento del usuario; en la fase de desarrollo y producción se pueden producir infiltraciones persistentes para lograr intrusiones a los servicios de actualización; en la fase de distribución se logra infiltrar malware preinstalado en dispositivos antes de ser enviados al cliente; en la fase de adquisición y despliegue se pueden introducir herramientas de “spyware” en el software de determinados proveedores; en la fase de mantenimiento se introducen puertas traseras a través de los servicios de actualización; y en la fase de disposición final, se pueden recuperar datos de dispositivos desechados que no han tenido un correcto proceso de limpieza y erradicación de datos.

Los ataques a la cadena de suministro, se pueden considerar ataques de Zero Day, ya que al materializarse una infección, no se contará con parches o actualizaciones inmediatas. Entonces, se recomienda explorar modelos seguridad basados en técnicas de detección temprana por medio de algoritmos que utilizan Machine learning o incluso Blockchain, y que permitan analizar las actividades dentro de la aplicación y bloquear acciones no deseadas. Otro elemento importante es que las empresas de desarrollo de soluciones tecnológicas que incorporen software, puedan contar con equipos interdisciplinarios que hagan parte de toda la gestión de cadena de suministro de software y que apliquen las mejores prácticas basadas en agilismo como Devsecops.

¿Qué hacer para mitigar los ataques a la cadena de suministro?

Si bien es retador evitar este tipo de ataques debido a que el software moderno se construye en gran parte a partir de la reutilización de código prefabricado y de software creado por terceros, se propone tener

Compartir