Por que la gestión de la cadena de suministro de software de código abierto es peor de lo que cree

Una encuesta de Sonatype también encontró un aumento interanual del 650% en los ataques a la cadena de suministro dirigidos a los repositorios públicos ascendentes.

Imagen: Shutterstock / LeoWolfert

El séptimo Informe anual sobre el estado de la cadena de suministro de software de Sonatype descubrió que los desarrolladores piensan que las prácticas de gestión de software están en una forma mucho mejor de lo que indican las condiciones sobre el terreno.

Contenido imprescindible para desarrolladores

El análisis encontró que la mayoría de los encuestados utiliza un enfoque ad hoc para la gestión de la cadena de suministro de software para la mayor parte del proceso, excepto para la remediación y el inventario. Los encuestados parecen estar remediando componentes riesgosos y comprender dónde están los riesgos en la cadena de suministro, a pesar de que tienen un enfoque informal para los procesos de construcción y lanzamiento y gestión de riesgos.

El informe mostró una clara desconexión entre lo que realmente está sucediendo y lo que la gente piensa que está sucediendo: “Los encuestados se han convencido a sí mismos para creer que están haciendo un buen trabajo, lo que lleva al menos a una falsa sensación de seguridad y, en el peor de los casos, a enormes ineficiencias. en el proceso de ingeniería “.

El informe también encontró un aumento interanual del 650% en los ataques a la cadena de suministro dirigidos a los repositorios públicos ascendentes. Hubo 216 ataques a la cadena de suministro de software desde febrero de 2015 hasta junio de 2019. De julio de 2019 a mayo de 2020, ese número aumentó a 929 ataques, según el informe.

VER: Los desarrolladores de código abierto dicen que proteger su código es una pérdida de tiempo devastadora

Matt Howard, vicepresidente ejecutivo de Sonatype, dijo en un comunicado de prensa que el informe reforzaba el hecho de que el código abierto es un combustible fundamental para la innovación digital y un objetivo maduro para los ataques a la cadena de suministro de software.

“Si bien la demanda de los desarrolladores de código abierto continúa creciendo exponencialmente, nuestra investigación muestra por primera vez cuán poco de la oferta general se está utilizando realmente”, dijo. “Además, ahora sabemos que los proyectos populares contienen desproporcionadamente más vulnerabilidades”.

Además, el análisis reveló que el 29% de los proyectos populares de código abierto contienen al menos una vulnerabilidad de seguridad conocida en comparación con solo el 6,5% de los proyectos OSS menos populares. Y, a pesar de los millones de proyectos de código abierto disponibles, solo el 6% se utiliza de forma regular.

Los tipos más comunes de ataques a la cadena de suministro de software durante el último año fueron:

  • Confusión de dependencia / espacio de nombres: un mal actor publica un paquete malicioso usando exactamente el mismo nombre que un paquete legítimo y propietario en un repositorio público que no regula la identidad del espacio de nombres.
  • Typosquatting: este ataque indirecto aprovecha los errores ortográficos y los errores tipográficos para que los desarrolladores instalen un componente malicioso que se confunde con el real.
  • Inyecciones de código fuente malicioso: este tipo de ataque disminuyó en frecuencia durante el último año e implicó inyectar código fuente malicioso directamente en el repositorio de un proyecto de código abierto.

Cómo reducir los riesgos de la cadena de suministro del software OSS

Para minimizar el riesgo asociado con las vulnerabilidades en bibliotecas de código abierto de terceros, los analistas de Sonatype recomiendan que los equipos de desarrollo de software adopten criterios definidos para seleccionar proyectos de código abierto y busquen proyectos que tengan un tiempo medio de actualización bajo.

Esta métrica proporciona visibilidad de las prácticas de gestión de dependencias de un proyecto de código abierto y un tiempo menor es mejor. Según el informe, “los proyectos que reaccionan de manera constante y rápida a las actualizaciones de dependencia en su cadena de dependencia descendente tendrán un MTTU bajo. Los proyectos que reaccionan de manera constante con lentitud o tienen una gran variación en su tiempo de reacción tendrán un MTTU más alto”. Investigaciones anteriores de Sonatype también sugirieron que MTTU se correlaciona con el tiempo medio para remediar.

El Informe sobre el estado de la cadena de suministro de software de 2021 de Sonatype combinó datos públicos y privados para identificar tendencias en el desarrollo de software moderno. El informe de este año analizó la oferta operativa, la demanda y las tendencias de seguridad asociadas con los ecosistemas de Java (Maven Central), JavaScript (npmjs), Python (PyPI) y .NET (nuget). Los investigadores también estudiaron las prácticas de ingeniería de software obtenidas de 100,000 aplicaciones de producción y 4 millones de migraciones de componentes realizadas por desarrolladores durante los últimos 12 meses.

Medir las prácticas de la cadena de suministro y los resultados de ingeniería

Además de evaluar el estado de la seguridad del OSS, el informe Sonatype también analizó cómo la realidad de la gestión de la cadena de suministro se compara con las mejores prácticas. Los investigadores también encuestaron a 702 ingenieros de software para medir el estado de la gestión de la cadena de suministro de software con software de código abierto. La encuesta tenía como objetivo desarrollar un conjunto de puntos de referencia.

Los analistas de Sonatype compararon las respuestas de la encuesta con estos ocho elementos de las prácticas de gestión de la cadena de suministro de software:

  1. Inventario de aplicaciones: ¿Qué aplicaciones está ejecutando y qué componentes de código abierto incluyen?
  2. Higiene del proveedor: ¿Los componentes de OSS provienen de un proveedor de confianza?
  3. Construir y lanzar: ¿Entiende cómo los componentes de software se unen para crear y lanzar aplicaciones en producción?
  4. Consumo del proyecto: ¿Gobierna la selección de componentes de OSS?
  5. Devolviendo: ¿Contribuye a la comunidad de código abierto?
  6. Control de políticas: ¿Cuál es su tolerancia al riesgo?
  7. : ¿Cuál es su plan de ejecución para implementar nuevos procesos y herramientas?
  8. Remediación: ¿Cómo se corrigen los riesgos identificados en los componentes de OSS?

Las respuestas se calificaron y luego se asignaron a una de las cinco etapas de madurez de la gestión de la cadena de suministro de software:

  • No administrado: Una mentalidad de “todo vale” con una supervisión mínima.
  • Exploración: Un proceso para identificar los problemas percibidos y comenzar a encontrar soluciones.
  • Ad hoc: El inicio de la definición y selección de nuevas herramientas y procesos.
  • Control: Empieza a afianzarse un proceso de gobernanza más formalizado.
  • Monitorear y medir: Una fase para abordar de forma proactiva el riesgo de los componentes de OSS.

La mayoría de las respuestas se calificaron en la fase ad hoc o anterior. La combinación de estos resultados con el análisis objetivo de otros capítulos del informe reveló la desconexión entre cómo los equipos de desarrollo de software piensan que están haciendo y lo que realmente está sucediendo. Según el informe, “los equipos de desarrollo no están siguiendo una guía estructurada y no tienen herramientas inteligentes para garantizar resultados de calidad. Conciliar esta percepción con la realidad ayudará a las organizaciones a lograr las ganancias de eficiencia prometidas en la gestión de la dependencia”.

Ver también

Leave a Comment