Secciones

¿En qué consiste la seguridad de la cadena de suministro de software?

Copiar URL

La seguridad de la cadena de suministro de software combina las prácticas recomendadas de la gestión de los riesgos y la ciberseguridad para proteger a dicha cadena de los puntos vulnerables posibles. La cadena está formada por absolutamente todo lo relacionado con el código durante el ciclo de vida de desarrollo del software (SDLC), desde el diseño de la aplicación hasta los canales de CI/CD y la implementación. 

Incluye redes de información sobre el software, como los elementos (p. ej.: la infraestructura, el hardware, los sistemas operativos, los servicios de la nube, etc.); las personas que los crean; y las fuentes de las que provienen, como los registros, los repositorios de GitHub, las bases de código u otros proyectos open source. También incluye los puntos vulnerables que podrían tener un impacto negativo en la seguridad del software, y aquí es donde entra en juego la protección de la cadena de suministro.  

 

En la actualidad, es muy poco el software que se escribe desde cero; por lo general, es una combinación de elementos que contiene software open source. Sin embargo, estos elementos de software están sujetos a aspectos vulnerables y los desarrolladores tienen poco control sobre el código fuente de un tercero o no pueden implementar muchos cambios a lo largo del tiempo. Es importante señalar que los sistemas de software sin actualizar son más propensos a presentar problemas de seguridad. Dado que el software es esencial para llevar a cabo las operaciones empresariales diarias, la seguridad de la cadena de suministro es una de las principales responsabilidades de las empresas y de sus equipos de seguridad.

En 2020, la empresa de software SolarWinds sufrió un ataque de ciberseguridad: se lanzó un código malicioso a través de su sistema de software de gestión y supervisión de la TI (Orion), una plataforma que usan las grandes empresas y organismos gubernamentales. Al atacar la cadena de suministro, los piratas informáticos no solo se infiltraron en los sistemas de la empresa, sino también en los de sus clientes. Si bien Log4j es uno de los sistemas de software open source más utilizados, también es altamente vulnerable: ha dejado a miles de usuarios y empresas expuestos a las filtraciones de datos y los ataques. En 2021, el presidente de los Estados Unidos hizo hincapié en la importancia de las cadenas de suministro y de la seguridad del software mediante dos decretos ejecutivos: cadenas de suministro y ciberseguridad.

Es muy probable que, si algún elemento de la cadena de suministro de software está en riesgo, el resto de los elementos que dependen de él también lo estén. Los piratas informáticos aprovechan estas oportunidades para insertar malware, virus backdoor u otro tipo de código malicioso que afecte a los elementos y sus cadenas de suministro relacionadas. Los ataques a las cadenas de suministro de software, cuya ejecución suele estar a cargo de personas que buscan obtener ganancias o de agentes estatales, son cada vez más comunes y pueden afectar considerablemente tanto al mundo digital como al físico. Por lo general, se clasifican de la siguiente manera:

  • Puntos vulnerables: son fallas en el código del software que pueden aprovecharse y derivar en una filtración de datos. Ejecute parches en sus elementos y actualícelos para reducir este riesgo.
  • Licencias: es un riesgo legal que podría obligarlo a convertir cualquier elemento de software en open source y anular los derechos de patente. Consulte con los especialistas en esta área.
  • Dependencias de terceros: son las dependencias de cualquier empresa externa que forman parte de la cadena de suministro de software, y no es sencillo reconocerlas. Analice todo el código de terceros y comuníquese con sus proveedores para conocer las prácticas de seguridad que utilizan para brindarle protección.
  • Procesos y políticas: es necesario implementarlos en la empresa para evitar inconvenientes. Cree políticas para los desarrolladores y los procesos (o playbooks) que le permitan responder ante un punto vulnerable.

Los vectores de ataque más comunes incluyen secuestrar las actualizaciones, debilitar las firmas del código o poner en peligro el código open source. 

DevSecOps es un enfoque que aborda la cultura, la automatización y el diseño del software, el cual integra la seguridad como una responsabilidad compartida durante todo el ciclo de vida de la TI. DevSecOps implica pensar desde el principio en la seguridad de las aplicaciones y de la infraestructura. También supone automatizar algunas puertas de seguridad para evitar que se ralenticen los flujos de trabajo de DevOps. A fin de cumplir con estos objetivos, es necesario seleccionar las herramientas adecuadas para integrar la seguridad de manera permanente, como acordar el uso de un entorno de desarrollo integrado (IDE) con funciones que protejan los sistemas.

Red Hat Advanced Cluster Security for Kubernetes integra las comprobaciones de seguridad en la cadena de suministro de software y los flujos de trabajo de los desarrolladores para que pueda detectar y resolver los problemas de seguridad de alto riesgo. Al incorporar un contexto de seguridad a los flujos de trabajo de desarrollo actuales, también automatiza la seguridad de las prácticas DevOps. 

La cadena de suministro de software está compuesta por todo lo que se relaciona con el código, sean elementos o personas. Sin embargo, la seguridad de las aplicaciones se encarga de proteger al código en sí de los ataques y los puntos vulnerables. Esta debe aplicarse en cada etapa del desarrollo, tal como sucede con la seguridad de la cadena de suministro. 

La seguridad de las aplicaciones comienza en el desarrollo del software y se extiende a todo el ciclo para evitar el acceso no autorizado a los sistemas y resguardar los datos confidenciales. Al reforzar la integridad de la cadena de suministro, también se mejora la seguridad de las aplicaciones. Algunas formas de evitar que los piratas informáticos pongan en riesgo sus aplicaciones son reforzar las configuraciones, reducir las superficies de ataque, restringir los permisos, firmar el software y distribuir las compilaciones en distintas partes del sistema. 

La seguridad de la cadena de suministro de software es fundamental para su empresa, sus clientes y las empresas que dependen de las contribuciones al open source. Si bien nadie quiere tener filtraciones en sus sistemas, tampoco quiere ser responsable de que otro enfrente una situación similar. Por eso la clave está en proteger la cadena de suministro de software.  

A continuación, se definen algunas prácticas recomendadas que los equipos de seguridad deberían tener en cuenta:

  • Ofrecer el acceso con privilegios mínimos a los recursos de la cadena de suministro (p. ej., las herramientas para los desarrolladores, los repositorios de código fuente y otros sistemas de software), habilitar la autenticación de varios factores y usar contraseñas seguras.
  • Realizar capacitaciones en materia de seguridad para el personal.
  • Reforzar la seguridad de todos los dispositivos conectados y los datos confidenciales.
  • Conocer a los proveedores y a las personas con quienes se hacen negocios, especialmente a los proveedores directos. Evaluar los riesgos de las medidas de ciberseguridad y de las políticas públicas respecto de los aspectos vulnerables de cada proveedor.
  • Analizar los sistemas expuestos y ejecutar parches en ellos con regularidad.

Los desarrolladores también deben tener en cuenta las prácticas de codificación segura, el uso de archivos de bloqueo y otras medidas de seguridad, por ejemplo:

  • Validar las sumas de comprobación.
  • Incluir las dependencias de los proveedores en el control de versiones.
  • Publicar y usar la lista de elementos de software (Software Bill of Materials, SBOM).
  • Adoptar los niveles de la cadena de suministro para los elementos de software (SLSA), lo cual incluye:
    • Poder firmar los elementos del software de manera digital para autenticar su procedencia.
    • Aprovechar la automatización para los procesos y las políticas.
  • Examinar el sistema de software con herramientas automatizadas de pruebas de seguridad, como el análisis de la composición del software (SCA), las pruebas estáticas de la seguridad de las aplicaciones (SAST) y las pruebas dinámicas de la seguridad de las aplicaciones (DAST).

En Red Hat comprendemos la necesidad de proteger las dependencias y los elementos del software al inicio del ciclo de vida de desarrollo y utilizamos las prácticas de DevSecOps para automatizar la integración de la seguridad en cada etapa.Delegue en Red Hat la labor de entender la cadena de suministro upstream y proporcionarle un producto para su empresa en el cual pueda confiar todo el tiempo. Red Hat y sus partners brindan experiencia, un ecosistema de DevSecOps integral y la capacidad de ayudar a las empresas a implementar la seguridad para la cadena de suministro de software en todo el ciclo de vida de desarrollo.

Artículos relacionados

ARTÍCULO

¿Qué es DevSecOps?

Si desea aprovechar al máximo la agilidad y la capacidad de respuesta de los enfoques de DevOps, la seguridad de la TI debe desempeñar un papel principal en todo el ciclo de vida de sus aplicaciones.

ARTÍCULO

¿En qué se distingue la seguridad de la nube?

Los problemas de seguridad de alto nivel afectan a los sistemas de TI tradicionales y de nube por igual. Descubra en qué se diferencian.

ARTÍCULO

¿Qué es SOAR?

SOAR hace referencia a tres funciones clave del software que utilizan los equipos de seguridad: la gestión de casos y flujos de trabajo, la automatización de tareas y un medio centralizado para acceder a la información sobre las amenazas, realizar consultas y compartir dicha información.

Más información sobre la seguridad

Productos

Marco de seguridad que gestiona las identidades de los usuarios y permite mantener la privacidad de las comunicaciones.

Solución empresarial de seguridad de los contenedores de Kubernetes que permite diseñar, implementar y ejecutar aplicaciones en la nube con mayor seguridad.

Servicio de análisis predictivo que permite identificar y corregir amenazas a la seguridad, el rendimiento y la disponibilidad de su infraestructura de Red Hat.

Consola con políticas de seguridad integradas para controlar las aplicaciones y los clústeres de Kubernetes.

Contenido adicional