Riesgos y mejores prácticas de seguridad de la cadena de suministro
4 de abril de 2023
0 minutos de lecturaEn lugar de crear aplicaciones únicamente con código propio, los equipos de desarrollo modernos combinan código propietario (la «fórmula secreta» de la empresa) con muchos componentes de terceros. Estos recursos de terceros —muchos de ellos de código abierto— son invaluables para los desarrolladores: ahorran tiempo y permiten lograr mejores innovaciones. Pero junto con las infinitas posibilidades del software de código abierto, llega un nuevo nivel de riesgo en forma de seguridad de la cadena de suministro de software.
¿Cuáles son los riesgos de seguridad en la cadena de suministro?
Pero ¿por qué las organizaciones de hoy deben vigilar tan de cerca su cadena de suministro de software? El mundo del desarrollo de software cambia constantemente. Cada día, los desarrolladores de tu organización aprovechan numerosos componentes en sus aplicaciones para no tener que reinventar la rueda. Cada uno de estos componentes tiene dependencias y esas dependencias tienen dependencias. Tu empresa está en riesgo si algún elemento de esa cadena contiene vulnerabilidades críticas conocidas.
El ataque a la seguridad de SolarWinds Orion es un ejemplo de cómo el riesgo cibernético en la cadena de suministro puede tener consecuencias duraderas.
Estas son algunas amenazas comunes para la cadena de suministro:
Paquetes y contenedores de código abierto vulnerables. Por ejemplo, el paquete npm promedio incorpora 79 paquetes de terceros y 39 mantenedores a tu cadena de suministro de software. Al descargar este único componente, introduces toda una superficie de ataque.
Typosquatting y suplantación de marca. Se trata de una técnica de ataque en la que actores maliciosos suben paquetes dañinos a un registro con nombres similares a los de paquetes legítimos. Quienes no verifican la seguridad de sus paquetes de código abierto corren el riesgo de descargar por accidente uno de estos recursos maliciosos.
Gestión de datos. Muchas organizaciones simplemente no saben qué hay en sus cadenas de suministro de software. Sus listas de materiales de software (SBOM) quedan obsoletas rápidamente porque no las actualizan cada vez que un desarrollador agrega un paquete o contenedor de código abierto nuevo o actualizado.
Derechos de acceso. Las organizaciones otorgan demasiado acceso a proveedores o componentes de terceros, lo que significa que estos pueden convertirse en el eslabón más débil de su cadena de suministro si se ven comprometidos.
Error humano o negligencia. Se cometen errores cuando los equipos no tienen presentes las mejores prácticas de seguridad de la cadena de suministro de software. Un desarrollador podría descargar un paquete malicioso o permitir que un proveedor externo acceda a información confidencial. Hay muchas formas en que el error humano puede poner en riesgo el ciclo de vida de desarrollo de software (SDLC) completo.
Obtén más información sobre la seguridad de la cadena de suministro en nuestro informe técnico reciente sobre la cadena de suministro.
Seguridad de la cadena de suministro con Snyk
Snyk te permite conocer los problemas de seguridad de la cadena de suministro y te ofrece recomendaciones para solucionarlos rápidamente.
Por qué no basta con crear una SBOM
Aunque muchas organizaciones comprenden el riesgo de usar componentes de terceros, suelen adoptar un enfoque incompleto para proteger sus cadenas de suministro, lo que puede provocar ataques. Es común suponer que crear una SBOM basta para proteger una cadena de suministro de software. Es comprensible: hoy en día, las SBOM están en el centro de muchas conversaciones sobre seguridad (y también se destacaron en una orden ejecutiva reciente).
Pero resulta que una SBOM en realidad es solo una «lista de ingredientes». Y, al igual que los alimentos empaquetados, a menudo contiene elementos tan confusos y desconocidos como el «polisorbato 80». Quizás reconozcas el ingrediente, pero ¿es bueno o malo?
Llevando la analogía un paso más allá, un ingrediente que antes se consideraba inofensivo podría convertirse en algo que conviene evitar más adelante (por ejemplo, el colorante rojo n.º 5). Lo mismo ocurre con las SBOM. Que tu SBOM esté bien hoy no significa que lo estará mañana. Tu organización debe implementar otras prácticas continuas de seguridad de la cadena de suministro para prevenir los riesgos de manera eficaz.
Mejores prácticas de seguridad de la cadena de suministro para tu organización
Los equipos de desarrollo deben seguir cinco mejores prácticas de seguridad de la cadena de suministro: analizar paquetes y contenedores de código abierto, usar los paquetes correctos (y evitar los maliciosos), mantener una SBOM precisa, implementar políticas de RBAC y priorizar la educación y capacitación del equipo.
Veamos estas mejores prácticas en detalle:
1. Analiza tus paquetes y contenedores de código abierto en busca de vulnerabilidades y establece políticas
Es poco realista hacer un seguimiento manual de todos los paquetes y contenedores de código abierto y verificar si tienen vulnerabilidades. En su lugar, invierte en una herramienta que compruebe de forma constante si hay vulnerabilidades en tu cadena de suministro de software. Evita de manera proactiva que los componentes vulnerables avancen en el flujo de desarrollo mediante políticas que orienten a los desarrolladores para reemplazar cuanto antes este software de código abierto riesgoso por alternativas más seguras.
2. Asegúrate de usar los paquetes correctos
Como el typosquatting y la suplantación de marca son amenazas muy frecuentes para la cadena de suministro, es importante verificar cada paquete. Establece puntos de control para los paquetes de código abierto lo antes posible en el ciclo de vida de desarrollo de software con una herramienta SCA, como Snyk Open Source. Para que tu equipo de desarrollo pueda seguir estas pautas, integra los análisis de seguridad en sus flujos de trabajo, por ejemplo, en la CLI de sus herramientas de canalización de CI/CD.
3. Lleva un registro de lo que contienen tus aplicaciones (SBOM)
Las SBOM son esenciales para las mejores prácticas de la cadena de suministro de software de cualquier empresa. Como el SDLC moderno cambia con tanta rapidez, considera usar herramientas para automatizar las SBOM.
Además, los equipos deben controlar quién tiene acceso a sus SBOM. Supongamos que tu SBOM está disponible para un público amplio y que tu software contiene una vulnerabilidad crítica recién anunciada. ¡Entonces la propia SBOM se convierte en una amenaza para la seguridad de la cadena de suministro!
4. Implementa políticas integrales de RBAC
El control de acceso basado en roles se basa en el principio de privilegio mínimo: otorgar de forma predeterminada a cada usuario solo el acceso mínimo que necesita para hacer su trabajo. Para establecer políticas de RBAC, tu equipo debe saber quién tiene acceso a qué y con qué nivel de permisos. La política como código (PaC) permite que los equipos de seguridad definan estas políticas de RBAC en código mediante un lenguaje declarativo de alto nivel. Centraliza las iniciativas relacionadas con las políticas y las aplica de manera uniforme en toda la organización.
5. Prioriza la educación y capacitación del equipo
Para prevenir los problemas causados por errores humanos o negligencia, educa y capacita a tu personal sobre las posibles amenazas para la cadena de suministro. La gamificación es una excelente forma de motivar a los desarrolladores a aprender las mejores prácticas de seguridad de la cadena de suministro. También es esencial reconocer a los miembros del equipo cuando contribuyen de forma positiva a los esfuerzos de seguridad de tu organización. Snyk ofrece lecciones de seguridad gratuitas para desarrolladores; consúltalas aquí.
Protege tu cadena de suministro de software con Snyk
Las soluciones de seguridad de la cadena de suministro de Snyk permiten que los equipos de desarrollo y seguridad trabajen en conjunto para proteger su cadena de suministro de software. Colaboramos con organizaciones para proteger sus bibliotecas de código abierto, herramientas para desarrolladores, imágenes de contenedores e infraestructura en la nube. Al integrarse directamente con las herramientas y los flujos de trabajo de desarrollo existentes, nuestra plataforma de seguridad diseñada para desarrolladores facilita y agiliza la adopción de las mejores prácticas de seguridad de la cadena de suministro.
Seguridad de la cadena de suministro con Snyk
Snyk te permite conocer los problemas de seguridad de la cadena de suministro y te ofrece recomendaciones para solucionarlos rápidamente.