Simple Science

Ciencia de vanguardia explicada de forma sencilla

# Informática# Criptografía y seguridad

Mejorando la ciberseguridad en las cadenas de suministro de software

Abordando las crecientes amenazas cibernéticas a las cadenas de suministro de software a través de esfuerzos colaborativos y mejores prácticas.

― 8 minilectura


Ciberseguridad en CadenasCiberseguridad en Cadenasde Suministro de Softwaresoftware.cibernéticas en el desarrollo deCombatir las crecientes amenazas
Tabla de contenidos

En los últimos años, ha habido un aumento significativo en los ciberataques que apuntan a la cadena de suministro de software. Estos ataques pueden causar daños graves a empresas y organizaciones. Incidentes notables, como los ataques de SolarWinds y log4j, afectaron a numerosos clientes y organizaciones. Como respuesta, tanto el gobierno de EE. UU. como la industria tecnológica están priorizando la seguridad de la cadena de suministro de software.

El 22 de febrero de 2023, investigadores organizaron una cumbre centrada en la seguridad de la cadena de suministro de software. Este evento involucró a 17 profesionales de la industria de 15 empresas diferentes. El objetivo era compartir ideas y experiencias relacionadas con la seguridad de la cadena de suministro de software y fomentar nuevas colaboraciones.

Temas Clave de Discusión

Durante la cumbre, los participantes se involucraron en seis paneles de discusión centrados en varios temas, incluyendo:

  1. Factura de materiales de software (SBOMs)
  2. Commits Maliciosos
  3. Selección de nuevas dependencias
  4. Prácticas de construcción y despliegue
  5. Orden Ejecutiva 14028
  6. Dependencias Vulnerables

Las discusiones abiertas entre los participantes ayudaron a resaltar los desafíos comunes que enfrentan aquellos que trabajan en la seguridad de la cadena de suministro de software.

Actores Maliciosos en el Ecosistema de Software

Uno de los principales problemas discutidos fue la presencia de actores maliciosos que explotan la cadena de suministro de software. Estas personas ganan la confianza de los equipos de desarrollo y utilizan métodos como el typosquatting, donde crean nombres de paquetes que suenan similares para engañar a los desarrolladores a usar su software malicioso.

También se mencionaron otras técnicas, como la confusión de dependencias, que implica engañar a los desarrolladores para que descarguen paquetes maliciosos en lugar de los legítimos. Además, se discutió la amenaza del protestware, que incluye código que realiza acciones no deseadas bajo la apariencia de software legítimo. Las inyecciones de código malicioso fueron señaladas como otro riesgo significativo en ecosistemas de código abierto.

Percepciones de la Seguridad del Código Abierto

Hay una creencia común de que el software de código abierto es arriesgado. Sin embargo, los datos sugieren que hasta el 98% de los proyectos de código abierto tienen versiones que no contienen vulnerabilidades conocidas. Muchas vulnerabilidades son corregidas antes de ser divulgadas.

Sin embargo, la realidad es que los desarrolladores a menudo usan versiones de software que son vulnerables. Por ejemplo, el 68% de las aplicaciones supuestamente utilizan componentes con vulnerabilidades conocidas, lo que ilustra que mantener el software actualizado es crucial para minimizar riesgos.

El Impacto de la Orden Ejecutiva 14028

En mayo de 2021, el gobierno de EE. UU. emitió la Orden Ejecutiva 14028, dirigiendo a las organizaciones que suministran software crítico a mejorar sus prácticas de seguridad. Los participantes tuvieron experiencias variadas con esta orden. Algunos notaron que proporcionó un buen marco para mejorar las prácticas de seguridad, mientras que otros sintieron que no condujo a cambios significativos o recursos adicionales.

La orden enfatiza la necesidad de facturas de materiales de software (SBOMs), que son esencialmente inventarios de los componentes que componen un producto de software. Sin embargo, hubo preocupaciones de que producir estas SBOMs podría llevar a mera conformidad sin mejoras significativas en la seguridad.

El Papel y los Desafíos de las SBOMs

Una SBOM es una lista que detalla todos los componentes utilizados en un producto de software. Ayuda a los usuarios a identificar componentes de terceros y dependencias. Aunque muchos participantes expresaron apoyo por la idea de las SBOMs, había preocupaciones sobre su efectividad y los desafíos de generarlas.

Muchas herramientas de generación de SBOM no cumplen con los requisitos mínimos establecidos por las autoridades nacionales. Además, los archivos de SBOM grandes pueden ser difíciles de manejar, y compartirlos plantea riesgos, ya que podrían dar a los atacantes información sobre vulnerabilidades de software.

Selección de Dependencias de Software

Elegir las dependencias de software adecuadas es crucial para mantener la seguridad. Las dependencias de código abierto varían ampliamente en términos de calidad, mantenimiento y seguridad. Los participantes discutieron varios enfoques para seleccionar dependencias, como basarse en la popularidad de uso o vulnerabilidades conocidas.

Si bien algunas empresas utilizan métricas como la OpenSSF Scorecard para evaluar la seguridad de las dependencias, no hay un método universalmente aceptado para evaluar los riesgos de varios componentes. Esta falta de estandarización dificulta que los desarrolladores tomen decisiones informadas al seleccionar dependencias.

Abordando Vulnerabilidades en Dependencias

Los proyectos de software dependen en gran medida de dependencias de terceros, que pueden introducir vulnerabilidades. Notar y corregir estas vulnerabilidades rápidamente es crítico. Los participantes discutieron varios enfoques para abordar las vulnerabilidades en las dependencias, incluyendo eliminarlas, parchearlas o actualizarlas.

El consenso general fue que eliminar dependencias innecesarias es la manera más efectiva de gestionar el riesgo. Cuando no es posible eliminar una dependencia, parchear o actualizar a una versión segura se vuelve necesario. Sin embargo, encontrar maneras de gestionar y actualizar eficientemente estas dependencias sigue siendo un desafío para muchas organizaciones.

La Importancia de la Comunicación y la Cultura

Un factor esencial para asegurar la seguridad de la cadena de suministro de software es la cultura dentro de una organización. Los desarrolladores a menudo tienen una pasión por su trabajo, lo que hace crucial proporcionarles las herramientas y directrices adecuadas para mantener prácticas seguras. Mandar herramientas o procesos específicos puede no ser siempre efectivo.

En cambio, fomentar un ambiente donde los desarrolladores se sientan responsables de la seguridad y se les anime a comunicar sobre vulnerabilidades puede mejorar las prácticas de seguridad en general dentro de una empresa. Identificar y abordar la deuda técnica también es vital para mantener software seguro.

Detección de Commits Maliciosos

Detectar commits maliciosos en repositorios de software es otro desafío mencionado durante la cumbre. Algunas de las estrategias discutidas para mitigar riesgos incluían emplear revisiones de dos personas y tener una lista de mantenedores de confianza que puedan fusionar cambios de código. Sin embargo, estas estrategias tienen limitaciones, ya que incluso miembros del equipo bien intencionados pueden pasar por alto código malicioso.

Los participantes también discutieron el posible papel de la inteligencia artificial y el aprendizaje automático en la detección de código malicioso. Aunque estas tecnologías pueden ofrecer soluciones, hay preocupaciones sobre su posible mal uso, especialmente si se entrenan con código vulnerable.

Asegurando el Proceso de Construcción y Despliegue

El proceso de construcción y despliegue es un aspecto crucial del desarrollo de software. Los participantes discutieron varias formas de asegurar estos procesos, incluyendo el uso de entornos de construcción consistentes y la isolación de pasos de construcción. Muchas empresas están adoptando marcos como Supply-chain Levels for Software Artifacts (SLSA) para mejorar sus prácticas de seguridad en la construcción.

Los participantes compartieron que la transición a procesos de construcción más seguros puede ser difícil, especialmente para sistemas heredados. Los proyectos más nuevos tienden a beneficiarse de las lecciones aprendidas durante el proceso de construcción, lo que permite mejores medidas de seguridad desde el principio.

Construcciones Reproducibles y Sus Desafíos

Las construcciones reproducibles son esenciales para asegurar que el software pueda ser construido y desplegado de manera confiable. Mientras muchos participantes expresaron entusiasmo por el potencial de las construcciones reproducibles, todavía existen desafíos, particularmente en lo que respecta a sistemas heredados que pueden no soportar estas prácticas.

La conversación destacó la importancia de mantener procesos claros para construir software y asegurar que todas las dependencias estén contabilizadas de manera consistente. Los participantes señalaron que los Dockerfiles y archivos similares pueden presentar desafíos para construcciones reproducibles, ya que pueden variar ampliamente dependiendo de cómo se crean.

Conclusión

La cadena de suministro de software enfrenta numerosos desafíos a la luz de las crecientes amenazas cibernéticas. Las personas y organizaciones involucradas en el desarrollo de software deben priorizar la seguridad adoptando mejores prácticas y participando en comunicación abierta con colegas y pares.

Al usar herramientas como las SBOM, seleccionar dependencias seguras y mantener un enfoque en la gestión de vulnerabilidades, las organizaciones pueden protegerse mejor contra riesgos potenciales. Además, cultivar una cultura de seguridad sólida entre los desarrolladores facilitará los esfuerzos colectivos para mejorar la seguridad de la cadena de suministro de software.

A medida que el panorama del desarrollo de software continúa evolucionando, la educación continua sobre prácticas de seguridad e invertir nuevamente en la comunidad de código abierto puede mejorar aún más la resiliencia de la cadena de suministro de software.

Fuente original

Título: S3C2 Summit 2023-02: Industry Secure Supply Chain Summit

Resumen: Recent years have shown increased cyber attacks targeting less secure elements in the software supply chain and causing fatal damage to businesses and organizations. Past well-known examples of software supply chain attacks are the SolarWinds or log4j incidents that have affected thousands of customers and businesses. The US government and industry are equally interested in enhancing software supply chain security. On February 22, 2023, researchers from the NSF-supported Secure Software Supply Chain Center (S3C2) conducted a Secure Software Supply Chain Summit with a diverse set of 17 practitioners from 15 companies. The goal of the Summit is to enable sharing between industry practitioners having practical experiences and challenges with software supply chain security and helping to form new collaborations. We conducted six-panel discussions based upon open-ended questions regarding software bill of materials (SBOMs), malicious commits, choosing new dependencies, build and deploy,the Executive Order 14028, and vulnerable dependencies. The open discussions enabled mutual sharing and shed light on common challenges that industry practitioners with practical experience face when securing their software supply chain. In this paper, we provide a summary of the Summit. Full panel questions can be found in the appendix.

Autores: Trevor Dunlap, Yasemin Acar, Michel Cucker, William Enck, Alexandros Kapravelos, Christian Kastner, Laurie Williams

Última actualización: 2023-07-31 00:00:00

Idioma: English

Fuente URL: https://arxiv.org/abs/2307.16557

Fuente PDF: https://arxiv.org/pdf/2307.16557

Licencia: https://creativecommons.org/licenses/by-nc-sa/4.0/

Cambios: Este resumen se ha elaborado con la ayuda de AI y puede contener imprecisiones. Para obtener información precisa, consulte los documentos originales enlazados aquí.

Gracias a arxiv por el uso de su interoperabilidad de acceso abierto.

Más de autores

Artículos similares