¿Conoces la historia de la aplicación de monedero de criptomonedas más utilizada, que ha llamado la atención por facilitar la gestión de las divisas digitales?
La aplicación, desarrollada por un proveedor de monederos electrónicos de confianza, ofrecía una experiencia segura y fácil de usar que permitía a los usuarios operar con criptomonedas. Sin embargo, sin que el equipo de desarrollo lo supiera, una actualización aparentemente rutinaria introdujo código malicioso a través de una versión comprometida de una biblioteca JavaScript de terceros integrada en la aplicación.
Poco después de la actualización, los usuarios empezaron a informar de actividades sospechosas: transacciones no autorizadas, desaparición de fondos y vaciados inesperados del monedero. Tras una investigación, el equipo de desarrollo descubrió que su aplicación se había estado comunicando, sin saberlo, con servidores no autorizados controlados por hackers.
La causa principal fue una versión comprometida de la biblioteca de conexión web3 de la aplicación, en la que se habían infiltrado los atacantes a través de una cuenta NPM de terceros violada. Esto permitió inyectar código malicioso en la aplicación, comprometiendo tanto los monederos de los usuarios como la confianza en la propia aplicación.
Este ataque es un ejemplo de vulnerabilidad de la cadena de suministroen la que los delincuentes se aprovechan de los puntos débiles del código del software y del ecosistema conectado. Al insertar código malicioso en una biblioteca popular, los infiltrados pudieron acceder a datos confidenciales de los usuarios y ejecutar comandos no autorizados sin ser detectados.
La biblioteca comprometida ha sido sustituida desde entonces, pero el incidente sirve de vívido recordatorio del riesgo que entraña el uso de software de terceros..
Desmitificación del ataque a la cadena de suministro de software
Un ataque a la cadena de suministro de software se dirige a las víctimas más desprevenidas: los desarrolladores de software que dependen de bibliotecas, marcos o herramientas externas para crear sus aplicaciones. Estos ataques aprovechan las vulnerabilidades del proceso de desarrollo de software. ¿Pero cómo?
Imagina que estás desarrollando una aplicación y utilizando componentes de fuentes de terceros para acelerar las cosas. En un ejemplo, un atacante introduce código malicioso en una popular biblioteca de código abierto. Al principio, este código dañino podría no causar ningún daño -actuando como un marcador de posición o "stub"-, pero una vez que la aplicación se instala en los dispositivos de los usuarios, se conecta silenciosamente a los servidores remotos del malhechor, conocidos como servidores de comando y control (C2). Desde allí, la aplicación descarga más software peligroso.
La aplicación parece normal para los usuarios, pero a sus espaldas se accede a sus datos privados y, en algunos casos, se roban, y su dispositivo está ahora bajo el control del hacker.
Este tipo de ciberataques son peligrosos porque se aprovechan de componentes de confianza en el proceso de desarrollo de aplicaciones, lo que dificulta su detección tanto para los desarrolladores como para los usuarios.
Origen de los ataques a la cadena de suministro de software
Los ataques a la cadena de suministro de software pueden proceder de varias fuentes: proveedores de software malicioso, bibliotecas de código abierto comprometidas o incluso dependencias de código cotidianas.
Los delincuentes suelen atacar aplicaciones que dependen de estas bibliotecas externas porque ofrecen un punto de entrada fácil para introducir código malicioso. Dado que cada vez más organizaciones utilizan código abierto y/o dependencias de terceros, los ataques a la cadena de suministro van en aumento.
Los ataques a la cadena de suministro de software pueden pasar desapercibidos hasta después de que una aplicación se haya desplegado y esté en uso, lo que los hace especialmente preocupantes. Las organizaciones que distribuyen aplicaciones comprometidas a sus clientes sin saberlo están poniendo en peligro datos confidenciales.
Un ataque exitoso puede ser perjudicial para la reputación de la empresa, exponiéndola a responsabilidades o sanciones reglamentarias, y mucho más.
Ataques a la cadena de suministro de software: evolución
Los ataques a la cadena de suministro de software han pasado de ser incidentes puntuales a sofisticadas empresas a escala industrial. Actores maliciosos, incluidos Estados-nación y familias de delincuentes organizados bien financiados, explotan las cadenas de suministro de software.
Algunos ejemplos de métodos de ataque son:
- Repo jacking: Los atacantes obtienen el control de un repositorio (repo) utilizado por muchos desarrolladores.
- Intoxicación: Se inyecta código peligroso en un repositorio legítimo a través de un colaborador comprometido.
- Typo en cuclillas: Las bibliotecas maliciosas se crean con nombres similares a los populares, con la esperanza de que los desarrolladores se dejen engañar para instalarlas.
- Confusión de dependencia: Se añaden paquetes maliciosos a los repositorios públicos, aprovechando la forma en que el software extrae dependencias de las fuentes.
Los ataques a la cadena de suministro de software pueden dirigirse a organismos gubernamentales, hospitales y escuelas de alto valor, o a empresas corrientes. Los motivos pueden variar, desde el espionaje y el robo de IP hasta ataques de ransomware con rehenes, facilitados por el uso de criptomonedas como método de pago preferido.
Respuesta de los gobiernos y del sector privado
La creciente amenaza de ataques a la cadena de suministro de software ha obligado a los gobiernos y al sector privado a responder con una plétora de nuevas normativas y marcos de desarrollo para protegerse de los daños.
Por ejemplo, en Europa, la Ley de Ciberresiliencia se puso en marcha para mejorar la seguridad de los productos digitales, mientras que en Estados Unidos, la Lista de Materiales de Software (SBOM) pretende dar a las organizaciones una mayor visibilidad de los componentes que utilizan. Se espera que saber de qué está hecho el código, aumentar las pruebas y mejorar la supervisión de las amenazas pueda ayudar a reducir el riesgo de que se produzcan ataques a la cadena de suministro de software.
Según Gartner el mercado mundial de la seguridad de la información en 2024 se estima en 200.000 millones de dólares, con un crecimiento del 15% en 2025, lo que demuestra que los problemas de ciberseguridad no van a desaparecer pronto.
Las amenazas de los malos actores parecen crecer más rápido de lo que pueden hacerlo las defensas, por lo que las empresas deben ir más allá de las medidas de cumplimiento y ser más proactivas en sus actividades.
Defensa contra los ataques a la cadena de suministro
¿Qué pueden hacer hoy en día los directivos de las empresas para defenderse de los ataques a la cadena de suministro de software?
- Blindaje de aplicaciones
Multicapa blindaje de aplicaciones emplea varias técnicas avanzadas, como ofuscación de código y tecnología antimanipulaciónpara hacer casi imposible la lectura del código y la ingeniería inversa, garantizando que los datos sensibles y la lógica de una aplicación permanezcan a salvo de manipulaciones.
- Control continuo
Las vulnerabilidades de la cadena de suministro suelen pasar desapercibidas porque se introducen mucho antes de que la aplicación se ponga en marcha. Herramientas como Verimatrix XTD's Supply Chain Defender™ de Verimatrix XTD de Verimatrix XTD pueden supervisar las instancias de la aplicación para detectar cualquier actividad de puerta trasera en tiempo real, garantizando que la comunicación no autorizada se señale antes de que se convierta en un problema grave.
- Conexiones en lista blanca
Mediante la creación de listas blancas de conexiones salientes legítimas, las organizaciones pueden impedir que servidores no autorizados se comuniquen con la aplicación, cortando de forma efectiva el control del atacante sobre la aplicación.
- Pen testing
La integración de pen tests manuales o pruebas automatizadas en busca de vulnerabilidades conocidas en componentes de terceros puede ayudar a detectar problemas en una fase temprana, antes de que se conviertan en un problema mayor. Esto incluye el uso de herramientas que verifiquen si las bibliotecas han sido manipuladas o contienen código malicioso.
- Actualizaciones y parches periódicos
Mantener actualizados todos los componentes del software reduce el riesgo de que los atacantes exploten vulnerabilidades conocidas. La aplicación periódica de parches debe formar parte del ciclo de vida de desarrollo de software de toda organización.
Conclusión
Los ataques a la cadena de suministro de software no van a desaparecer; van en aumento y son más impactantes que nunca.
Adoptando una postura más proactiva en materia de ciberseguridad con medidas preventivas y de protección, supervisión continua, pruebas de penetración, inclusión de conexiones en listas blancas, escrutinio de las bibliotecas de su cadena de suministro de software y detección y respuesta a las amenazas en tiempo real, las empresas pueden mejorar su juego contra los piratas informáticos.
Soluciones como Verimatrix XTD están listas para ayudar a desarrolladores, ingenieros de software, equipos SOC y CISO a proteger sus aplicaciones de estos potentes peligros ocultos.