Software Supply Chain Security Ameaças no estágio de origem

Como discutimos em nosso conteúdo anterior sobre software supply chain security, exploramos o conceito de ataques à cadeia de suprimentos e seu impacto potencial nas organizações. Esses ataques geralmente exploram vulnerabilidades em todo o ciclo de vida do desenvolvimento de software (SDLC), representando riscos significativos em todas as fases. Hoje, vamos Veja maispara os mais prevalentes software supply chain security ameaças que surgem durante o estágio de origem.

Em primeiro lugar, é crucial definir um ataque à cadeia de suprimentos e o ataque específico Software Supply Chain Security Ameaças que surgem durante o estágio de origem.

Definição de Ataque à Cadeia de Suprimentos de Software

 O Instituto Nacional de Standards e Tecnologia (NIST) define um ataque à cadeia de suprimentos de software  “quando o ataque ocorre quando um agente de ameaça cibernética se infiltra na rede de um fornecedor de software e emprega código malicioso para comprometer o software antes que o fornecedor o envie aos seus clientes. O software comprometido então compromete os dados ou o sistema do cliente. O software recém-adquirido pode ser comprometido desde o início, ou um comprometimento pode ocorrer por outros meios, como um patch ou hotfix. Nesses casos, o comprometimento ainda ocorre antes que o patch ou hotfix entre na rede do cliente. Esses tipos de ataques afetam todos os usuários do software comprometido e podem ter consequências generalizadas para o governo, infraestrutura crítica e clientes de software do setor privado.

Estágio de origem Software Supply Chain Security Ameaças

O estágio de origem do ciclo de vida da cadeia de suprimentos de software abrange as fases iniciais do desenvolvimento de software, da ideação à criação do código-fonte. Este estágio envolve a seleção de ferramentas, bibliotecas e componentes, bem como o desenvolvimento e a implementação das principais funcionalidades do software.

Software supply chain security ameaças no Source Stage referem-se a vulnerabilidades de segurança que podem ser exploradas para introduzir alterações não autorizadas ou maliciosas no código-fonte. Isso inclui a ameaça de indivíduos não autorizados e indivíduos autorizados introduzindo alterações não autorizadas.

ameaças-à-segurança-da-cadeia-de-suprimento-de-software-ataques-à-cadeia-de-suprimento-de-software

Exemplos de ameaças de origem 

 
Enviar código incorreto 

Enviar código ruim refere-se à prática de committing código para um repositório de origem que contém defeitos, erros ou vulnerabilidades. Isso pode variar de código malicioso introduzido intencionalmente para comprometer a integridade ou segurança do software, a código não intencional que introduz bugs ou vulnerabilidades devido a práticas de codificação ruins ou falta de testes. Um exemplo desse ataque de vetor foi o ataque NPM. Em 2022, um hacker se infiltrou no repositório de código-fonte de uma popular biblioteca de software de código aberto chamada npm. O hacker inseriu um código malicioso no código da biblioteca que permitiu que ele obtivesse acesso não autorizado aos sistemas de organizações que instalaram a biblioteca. O código malicioso permitiu que o hacker roubasse dados dos sistemas afetados, instalasse malware e interrompesse as operações. O ataque afetou uma ampla gama de organizações, incluindo agências governamentais, empresas e indivíduos.

Comprometer repositório de origem

Um adversário obtém acesso não autorizado a um repositório de código-fonte (SCM) e introduz alterações maliciosas ou remove código legítimo. Isso pode ser alcançado por meio de vários métodos, como explorar vulnerabilidades no SCM, comprometendo as credenciais de um desenvolvedor com acesso ao repositório ou obtendo acesso à infraestrutura subjacente que hospeda o SCM. Um exemplo desse ataque vetorial foi o Ataque PHP.  Um invasor comprometeu o servidor Git auto-hospedado do PHP, que é um repositório seguro para armazenar e gerenciar o código-fonte da linguagem de programação PHP. O invasor conseguiu injetar dois malwares commits na base de código principal do PHP. Estes commits adicionou backdoors que permitiram que o invasor obtivesse acesso não autorizado às instalações do PHP. Os backdoors permitiram que o invasor executasse código arbitrário em qualquer instalação do PHP, o que poderia ser usado para roubar dados, instalar malware ou interromper operações. O ataque também causou muitos danos à reputação do PHP, pois levantou preocupações sobre a segurança da linguagem de programação.

Construir a partir de uma fonte modificada

Um adversário obtém uma cópia do código-fonte de uma fonte diferente do repositório oficial de código-fonte e a usa para construir e implantar o software. Este código-fonte modificado pode conter código malicioso, backdoors ou outras alterações prejudiciais que podem comprometer a integridade, funcionalidade ou segurança do software. Um exemplo deste ataque de vetor foi o Webmin Ataque. Um invasor obteve acesso não autorizado à infraestrutura de build do Webmin, que é responsável por compilar e empacotar o software Webmin. O invasor modificou a infraestrutura de build para usar arquivos de origem que não estavam presentes no repositório de origem oficial do Webmin. 

Escreva código inseguro

Práticas de codificação inseguras, intencionais ou não, podem introduzir vulnerabilidades no software. Essas vulnerabilidades podem ser exploradas por invasores para obter acesso não autorizado, modificar ou roubar dados ou interromper operações. Um exemplo desse ataque de vetor foi o Ataque Apache Struts. Em 2003, um hacker se infiltrou no repositório de código-fonte da biblioteca de software de código aberto chamada Apache Struts. O hacker introduziu uma vulnerabilidade na biblioteca que permitiu que ele obtivesse acesso não autorizado aos sistemas de organizações que instalaram a biblioteca. A vulnerabilidade permitiu que o hacker executasse código arbitrário nos sistemas afetados, o que poderia ser usado para roubar dados, instalar malware e interromper operações. O ataque afetou uma ampla gama de organizações, incluindo agências governamentais, empresas e indivíduos.

Adulteração de arquivos críticos

Alterar ou modificar arquivos críticos no ciclo de vida de desenvolvimento de software pode ter consequências severas, incluindo a introdução de código malicioso, o comprometimento de dados confidenciais e a interrupção das operações de software. Um exemplo desse ataque de vetor de adulteração foi o Ataque Maven. Em 2020, hackers se infiltraram no repositório de código-fonte de uma popular biblioteca de software de código aberto chamada Maven. Os hackers inseriram código malicioso no arquivo pom.xml da biblioteca, que é usado para configurar o processo de construção. O código malicioso permitiu que os hackers injetassem suas dependências no processo de construção, que foram então incluídas no software compilado. Essas dependências continham backdoors que permitiam que os hackers obtivessem acesso não autorizado aos sistemas de organizações que instalaram o software.

Abrindo caminho: simplificando as operações com uma visão clara

Vá além do domínio da segurança e você descobrirá que visualizar sua cadeia de suprimentos faz mais do que proteger – é como acender uma luz em um quarto escuro, revelando os caminhos mais rápidos e eficientes em suas operações. Oferece às equipes uma visão panorâmica do ecossistema de desenvolvimento, permitindo-lhes identificar ativos redundantes e elementos não mantidos. Esta clareza é particularmente benéfica em projetos de grande escala onde múltiplas unidades e componentes se entrelaçam.

Considerações finais

Ao compreender os diferentes tipos de estágio de origem software supply chain security ameaças e implementando medidas de segurança apropriadas, as organizações podem ajudar a se proteger desses ataques devastadores.

  • Ataques à cadeia de suprimentos de software podem introduzir código malicioso no software em qualquer estágio do ciclo de vida do desenvolvimento, incluindo o estágio de origem.
  • As ameaças no estágio de origem incluem enviar código incorreto, comprometer repositórios de origem, compilar a partir de fontes modificadas, escrever código inseguro e adulterar arquivos críticos.
  • As organizações precisam implementar medidas de segurança abrangentes durante todo o ciclo de vida de desenvolvimento de software para mitigar os riscos de ataques à cadeia de suprimentos.

Quer ficar à frente da curva em software supply chain security?

Fique atento ao nosso próxima série de blogs, onde nos aprofundaremos nos ataques mais prevalentes que ocorrem durante todo o ciclo de vida do desenvolvimento de software. Do fase de construção até a implantação e além, nós o equiparemos com o conhecimento e as estratégias para proteger sua organização dessas ameaças insidiosas.

Não perca! Assine nosso blog hoje e seja o primeiro a saber sobre nossos últimos insights sobre software supply chain security.

Juntos, podemos construir um ecossistema de software mais resiliente e seguro para todos.

Explore os recursos do Xygeni!
Assista ao nosso vídeo de demonstração
sca-tools-software-composição-análise-ferramentas
Priorize, corrija e proteja seus riscos de software
você recebe uma avaliação gratuita de 7 dias da nossa licença Business Edition e pode aproveitar alguns dos recursos avançados da plataforma SecurityScorecard.
Não é necessário cartão de crédito

Proteja seu desenvolvimento e entrega de software

com o Suíte de Produtos da Xygeni