Software
Ciberseguridad
Malware

Las amenazas a la cadena de suministro de 'software' siguen acosando a los CISO

Las bibliotecas plagadas de malware añaden una nueva dimensión a la defensa de la cadena de suministro de software.

malware

El último incidente de seguridad de la biblioteca de software de un algoritmo de compresión de archivos oscuro pero popular llamado XZ Utils muestra cuán críticos pueden ser estos componentes de terceros para mantener a las empresas seguras y protegidas. El mes pasado, un hacker fue capaz de tomar el juego largo al introducirse en los mantenedores de código abierto y añadir una puerta trasera llena de malware en la utilidad. 

Lo escalofriante de este caso es cómo el atacante se ganó la confianza del equipo y cómo insertó quirúrgicamente su puerta trasera para evitar ser detectado. Es cierto que muchos ataques a la cadena de suministro de terceros han sido más contundentes y han utilizado la fuerza bruta, pero estos ataques a bibliotecas representan un nuevo frente para los responsables de seguridad, sobre todo porque combinan tres tendencias distintas: el aumento de los ataques a la cadena de suministro de terceros, la ocultación de malware en la complejidad de las herramientas de software de código abierto y el uso de bibliotecas de terceros como otro posible vector de explotación de los modelos y herramientas de software de inteligencia artificial (IA) generativa. Desgranemos cada uno de estos puntos. 

 

Cadena de suministro, bibliotecas de terceros y riesgos de la IA generativa 

Ciertamente, se ha producido un aumento general de los ataques a la cadena de suministro en los últimos años. Un informe de 2022 de Sonatype descubrió que los componentes de software malicioso eran la causa de un aumento de siete veces en los ataques a la cadena de suministro. El último informe de Verizon Data Breach Investigations Report descubrió un enorme aumento de estos ataques en comparación con los datos del informe del año pasado. Verizon pide a las organizaciones que "empiecen a buscar formas de elegir mejor" a los proveedores de software de terceros con los que deciden trabajar "para no recompensar a los eslabones más débiles de la cadena". 

El problema de la cadena de suministro ya está integrado para siempre en la forma en que se escribe y revisa el software moderno. Las aplicaciones se perfeccionan a diario o incluso cada hora con nuevo código, lo que dificulta aún más que el software de seguridad identifique y corrija rápidamente cualquier error de codificación. Esto significa que los antiguos métodos de comprobación de errores, más manuales, están condenados a quedarse atrás y dejar que se cuelen las vulnerabilidades. 

Pero no culpemos sólo a los proveedores externos, porque los atacantes aprovechan la creciente complejidad de las cadenas de suministro de software actuales. "Se trata de un problema que la industria del software tardará muchos años en resolver. La complejidad de una cadena de suministro farmacéutica o de fabricación palidece en comparación con una cadena de suministro de software moderna. Literalmente, todo lo que interviene en la creación de software puede introducir malware y vulnerabilidades", afirma Jeff Williams, cofundador y director técnico de Contrast Security. Según explica a CSO, "cada pieza de software que utilizas depende de cientos de miles de personas, cualquiera de las cuales puede introducir malware en tu código. Eso sin contar a los hackers que encuentran y explotan vulnerabilidades".

Ahora añádele las complejidades y dependencias de utilizar software de código abierto. El exploit de la biblioteca XZ Utils es sólo el más reciente de una serie de ataques similares que han abusado de la confianza de los miembros de la comunidad de código abierto, como la biblioteca libxmlsec, que forma parte de numerosas herramientas ManageEngine y tiene su origen en el proyecto Apache Santuario. A finales de 2023, los hackers descubrieron una vulnerabilidad crítica que Zoho tardó varias semanas en confirmar y parchear. Si se hubiera dejado sola, habría proporcionado una forma de ejecutar código de forma remota y conceder acceso administrativo a varios servidores. 

Incluso los marcos de JavaScript comunes, como jQuery, React y otros, no son inmunes al abuso de bibliotecas y exploits. Una publicación de blog de 2019 citó una gran dependencia de bibliotecas de JavaScript inseguras en todos los clientes de Michael Howard cuando se les encuestó sobre el tema. El fundador y CEO de ReversingLabs, Mario Vuksan, escribió recientemente en un blog de la compañía que "los resultados son claros: los ataques a la cadena de suministro de software están en aumento, y el efecto dominó de cada uno continúa haciéndose más grande".

Veracode, que rastrea la seguridad de las aplicaciones, señaló en su análisis más reciente que más del 70% de las aplicaciones contienen al menos un fallo de código abierto, un porcentaje que tristemente no ha cambiado mucho con los años.  

Por último, está la dimensión añadida de cómo afectará el código malicioso en la cadena de suministro a los modelos generativos de IA que ahora se están popularizando en las empresas. Mark Russinovich, gurú de seguridad de Microsoft, habló en la conferencia Build de este mes sobre las diversas formas de envenenar o añadir malware a los modelos generativos de IA, que es otra forma de ataques a la cadena de suministro de software de terceros. Este será otro obstáculo para que los defensores comprendan y creen diversas medidas de protección.

 

Formas de mitigar los riesgos de las bibliotecas de terceros 

Existen varias técnicas para mitigar los riesgos de las bibliotecas de terceros. Chris Wysopal, CTO y cofundador de Veracode, explica a CSO que desea que los desarrolladores de software sean más proactivos e "inviertan en el tipo adecuado de herramientas para encontrar y corregir vulnerabilidades en sus cadenas de suministro de software y empleen soluciones inmediatas. Los gobiernos también deben reconocer el riesgo potencial para la seguridad nacional que supone el software de código abierto". Se trata de un estribillo habitual en él, que se remonta a los tiempos en que era conocido por su alias de hacker, Weld Pond, y cuando testificó ante el Congreso sobre este tema. 

A medida que el software se vuelve más complejo con más componentes dependientes, rápidamente se hace cada vez más difícil detectar errores de codificación, ya sean involuntarios o añadidos con fines maliciosos cuando los atacantes intentan ocultar su malware. "Un atacante inteligente haría que su ataque pareciera una vulnerabilidad inadvertida, creando así una negación extremadamente plausible", afirma Williams. 

Hay formas de ayudar a detectar y eliminar estas bibliotecas inseguras. En junio de 2023, la Agencia de Ciberseguridad y Seguridad de las Infraestructuras (CISA) publicó una serie de recomendaciones sobre cómo mejorar los marcos de desarrollo y los conductos de codificación para evitar ataques de terceros. Si bien la agencia mencionó los beneficios del código de terceros para facilitar el rápido desarrollo y despliegue, es necesario que haya controles como credenciales de cuenta mejores y criptográficamente más fuertes y restricciones de bibliotecas no confiables, por ejemplo. 

"Ningún desarrollador debería poder introducir código sin que otro desarrollador revise y apruebe los cambios", escribió la agencia en su informe. Este fue uno de los problemas del caso XZ Utils, en el que un único desarrollador se ganó la confianza del equipo y pudo hacer modificaciones por su cuenta. Un método consiste en combinar un programa tradicional de gestión de riesgos de terceros con consultores especializados que puedan buscar y eliminar estas vulnerabilidades, como el esfuerzo conjunto de PwC y las herramientas automatizadas de ReversingLabs. 

La comunidad de código abierto tampoco se queda de brazos cruzados. Una solución es una herramienta presentada a principios de este mes por la Open Source Security Foundation llamada Siren. Sirve para que desarrolladores de software e investigadores de seguridad compartan tácticas, técnicas y procedimientos, así como indicadores de peligro asociados a ciberataques. Proporcionará un sistema de alerta temprana con actualizaciones en tiempo real sobre amenazas emergentes que podrían afectar a la cadena de suministro de software

Además, GitHub enumera tres proyectos de código abierto que pueden escanear tu código específicamente en busca de vulnerabilidades conocidas: RetireJS, Retire-html-parser y Lokori. El primer proyecto se presenta como una extensión de Chrome que realizará los análisis desde una ventana del navegador cada vez que acceda a una biblioteca vulnerable. Y hay otras herramientas comerciales de análisis que pueden comprobar los errores de codificación dinámicamente desde dentro de los procesos y flujos de trabajo de desarrollo de código. 

 

Los productos de seguridad por sí solos no solucionarán el problema 

Sin embargo, todas estas herramientas serán ineficaces sin algunos cambios importantes en los procedimientos por parte de los gerentes de seguridad corporativa y los desarrolladores de aplicaciones. Howard escribió algunas sugerencias en su blog de 2019, incluida la comprensión de qué bibliotecas están en uso y el seguimiento de cualquier vulnerabilidad descubierta. "Alguien en tu organización necesita hacer un seguimiento de esto; ¡es parte de su trabajo!". 

Sysdig tiene una serie de sugerencias de mejora de procesos en su reciente informe Practical Cloud Security Guidance in the Era of Cybersecurity Regulation publicado a principios de este año. "Las organizaciones deberían formalizar sus ciclos de vida de desarrollo si aún no lo han hecho. Parte de ello incluye establecer y estandarizar los procesos de creación y publicación. Una regla general es que una pila tecnológica específica da lugar a un proceso de creación. Si su organización crea muchas aplicaciones y sistemas, es de esperar que el número aumente drásticamente. El número de canalizaciones puede ser de decenas o centenares, en función del historial de desarrollo de la organización y de hacia dónde se dirija con la nueva tecnología. Algunas entidades llaman a esto una 'fábrica segura de construcción de software', pero es necesario asegurar la entrega adecuadamente". 

En un post anterior de este año, CSO sondeó a varios expertos en seguridad para que propusieran las mejores prácticas para gestionar el riesgo de terceros. Algunas de ellas son directamente aplicables a las cadenas de suministro de software, como alinear a su equipo ejecutivo para centrarse específicamente en los riesgos de terceros, mantener un censo continuo y preciso de los proveedores de software de terceros y hacer un triaje para encontrar los más importantes para evaluar y rastrear.  

"Colectivamente, debemos trabajar para fortalecer nuestra infraestructura digital y protegernos contra las futuras amenazas que plantean las vulnerabilidades de código abierto", afirma Wysopal. "Esta es una gran llamada de atención a los usuarios de software de código abierto". 



TE PUEDE INTERESAR...

Contenido Patrocinado

Accede a la cobertura de nuestros encuentros
 
Lee aquí nuestra revista digital de canal

DealerWorld Digital

 

Forma parte de nuestra comunidad
 
¿Interesado en nuestros foros? 

 

Whitepaper