SCA - Análise de Composição de Software CI/CD.
O que é Análise de Composição de Software?
SCA é um tipo de análise que envolve a varredura do código e suas dependências para identificar qualquer código aberto ou componentes de terceiros que estejam sendo usados e para detectar quaisquer vulnerabilidades conhecidas ou problemas de conformidade de licença associados a esses componentes.
Há vários motivos pelos quais é essencial aplicar o SCA em todo o ciclo de desenvolvimento seguro.
Segurança : Componentes de código aberto e bibliotecas de terceiros geralmente contêm vulnerabilidades que podem ser exploradas por invasores para obter acesso não autorizado a um aplicativo ou sistema. O SCA ajuda a identificar essas vulnerabilidades no início do processo de desenvolvimento, permitindo que os desenvolvedores as corrijam antes que possam ser exploradas no ambiente de produção.
Conformidade : muitos componentes de código aberto são licenciados sob termos e condições específicos que podem ter implicações legais se não forem gerenciados adequadamente. A SCA pode ajudar a identificar quaisquer problemas de conformidade de licença no início do processo de desenvolvimento, permitindo que os desenvolvedores os resolvam antes que se tornem uma responsabilidade legal.
Eficiência : Componentes de código aberto e bibliotecas de terceiros podem ser um recurso valioso para desenvolvedores, pois podem ajudar a acelerar o processo de desenvolvimento e reduzir a necessidade de escrever código do zero, economizando tempo e esforço no processo de desenvolvimento.
Capacidade de manutenção : à medida que o software evolui e novos componentes são adicionados ou atualizados, pode ser difícil acompanhar todas as dependências e suas vulnerabilidades associadas ou problemas de conformidade. O SCA pode ajudar a controlar essas dependências e garantir que elas sejam gerenciadas adequadamente durante todo o ciclo de vida do desenvolvimento de software.
Existem várias ferramentas de Software Composition Analysis (SCA):
- Sonatype Nexus IQ
- pato preto
- Snyk
- WhiteSource
- Verificação de Dependência OWASP
- FOSSA
Em 2020 foi descoberto, o ataque à cadeia de suprimentos da SolarWinds. O ataque afetou várias agências do governo dos Estados Unidos, bem como inúmeras empresas privadas.
Os invasores inseriram malware em atualizações de um produto de software chamado Orion, desenvolvido pela SolarWinds, uma empresa de TI com sede no Texas. As atualizações foram então distribuídas aos clientes da SolarWinds, incluindo várias agências governamentais dos EUA e empresas da Fortune 500.
Para integrar o OWASP Dependency-Check com o GitLab CI/CD, você pode seguir estas etapas gerais:
- Instale e configure o plugin Dependency-Check no GitLab. Você pode encontrar o plug-in no mercado GitLab.
- No pipeline de CI/CD do GitLab, adicione um novo estágio para verificação de dependência usando Dependency-Check. Por exemplo, você pode adicionar o seguinte estágio ao seu
.gitlab-ci.yml
arquivo:

Além disso, é importante atualizar regularmente sua ferramenta SCA e manter-se informado sobre novas vulnerabilidades e atualizações de dependências de terceiros para garantir que seu código seja seguro e compatível.