SCA -Software de Análisis de Composición CI/CD.
¿Qué es el análisis de composición de software?
SCA es un tipo de análisis que implica escanear el código y sus dependencias para identificar cualquier componente de código abierto o de terceros que se esté utilizando, y para detectar cualquier vulnerabilidad conocida o problemas de cumplimiento de licencia asociados con estos componentes.
Hay varias razones por las que es esencial aplicar SCA durante todo el ciclo de desarrollo seguro.
Seguridad : los componentes de código abierto y las bibliotecas de terceros a menudo contienen vulnerabilidades que los atacantes pueden explotar para obtener acceso no autorizado a una aplicación o sistema. SCA ayuda a identificar estas vulnerabilidades en las primeras etapas del proceso de desarrollo, lo que permite a los desarrolladores corregirlas antes de que puedan explotarse en el entorno de producción.
Cumplimiento : muchos componentes de código abierto tienen licencia bajo términos y condiciones específicos que pueden tener implicaciones legales si no se administran adecuadamente. SCA puede ayudar a identificar cualquier problema de cumplimiento de licencias en una etapa temprana del proceso de desarrollo, lo que permite a los desarrolladores abordarlos antes de que se conviertan en una responsabilidad legal.
Eficiencia : los componentes de código abierto y las bibliotecas de terceros pueden ser un recurso valioso para los desarrolladores, ya que pueden ayudar a acelerar el proceso de desarrollo y reducir la necesidad de escribir código desde cero, ahorrando tiempo y esfuerzo en el proceso de desarrollo.
Capacidad de mantenimiento : a medida que el software evoluciona y se agregan o actualizan nuevos componentes, puede resultar difícil realizar un seguimiento de todas las dependencias y sus vulnerabilidades asociadas o problemas de cumplimiento. SCA puede ayudar a realizar un seguimiento de estas dependencias y garantizar que se gestionen correctamente durante todo el ciclo de vida del desarrollo del software.
Hay varias herramientas de análisis de composición de software (SCA):
- Sonatype Nexus IQ
- pato negro
- Snyk
- fuente blanca
- Comprobación de dependencias de OWASP
- FOSA
En 2020 se descubrió el ataque a la cadena de suministro de SolarWinds. El ataque afectó a varias agencias del gobierno estadounidense, así como a numerosas empresas privadas.
Los atacantes insertaron malware en las actualizaciones de un producto de software llamado Orion, desarrollado por SolarWinds, una empresa de TI con sede en Texas. Luego, las actualizaciones se distribuyeron a los clientes de SolarWinds, incluidas varias agencias gubernamentales de EE. UU. y compañías Fortune 500.
Para integrar OWASP Dependency-Check con GitLab CI/CD, puede seguir estos pasos generales:
- Instale y configure el complemento Dependency-Check en GitLab. Puede encontrar el complemento en el mercado de GitLab.
- En su canalización de CI/CD de GitLab, agregue una nueva etapa para el análisis de dependencias mediante Dependency-Check. Por ejemplo, podría agregar la siguiente etapa a su
.gitlab-ci.yml
archivo:

Además, es importante actualizar regularmente su herramienta SCA y mantenerse informado sobre nuevas vulnerabilidades y actualizaciones de dependencias de terceros para garantizar que su código sea seguro y compatible.