O que é um ataque à cadeia de suprimentos de software?

Em 2021, Codecov, uma plataforma de teste de software que gera relatórios e estatísticas de cobertura de código, foi alvo de um ataque à cadeia de abastecimento que manipulou scripts de upload do Docker. O ambiente do Codecov foi comprometido sem levantar nenhum sinal de alerta. O dano foi enorme, já que a Codecov atende mais de 29,000 clientes empresariais, incluindo IBM, Google, HP, Washington Post, Atlassian, GoDaddy, Procter & Gamble e Royal Bank of Canada. A enorme violação passou despercebida por vários meses. Apesar de ter começado em 31 de janeiro de 2021, só foi descoberto em 1º de abril de 2021.

Em outro incidente infame, a onipresente ferramenta de limpeza de computador CCleaner foi comprometido por mais de um mês por hackers. A Avast, proprietária do CCleaner, contaminou as atualizações de software que os usuários baixam com um backdoor de malware. Milhões de computadores foram expostos e este incidente reforçou a ameaça de os chamados ataques à cadeia de abastecimento digital, em que software confiável e amplamente distribuído é realmente infectado.

Também conhecido como ataque de terceiros ou violação de backdoor, um ataque à cadeia de suprimentos ocorre quando um hacker se infiltra no sistema de uma empresa por meio de um parceiro ou fornecedor terceirizado que fornece serviços de software para essa organização. É chamado de ataque à cadeia de suprimentos porque o ponto de vulnerabilidade através do qual o ataque ocorre é a cadeia de suprimentos de software. Esses tipos de ataques costumam ter um escopo bastante grande e são difíceis de detectar. Os cibercriminosos muitas vezes visam cadeias de fornecimento de software como esta porque uma única violação lhes permite comprometer milhares de vítimas ao mesmo tempo.

Com mais fornecedores e vendedores de software obtendo acesso a dados confidenciais do que antes, o risco desses ataques tem aumentado nos últimos anos. Na verdade, existem inúmeras fontes que argumentam que o número de ataques à cadeia de abastecimento de software triplicou em 2021 em comparação com os números do ano anterior. Em maio de 2021, a administração Biden listou ataques à cadeia de suprimentos de software como uma área de preocupação, confirmando o quão importante é esta questão.

 

Imagem de ataques à cadeia de suprimentos de software

Quais são os diferentes tipos de ataques à cadeia de fornecimento de software?

Qualquer empresa de software que forneça seus serviços a outras organizações é um alvo potencial para um ataque de software à cadeia de suprimentos. Um ataque requer apenas um software comprometido para espalhar malware por toda a cadeia de suprimentos. Os hackers normalmente procuram software mal protegido ou protocolos de rede desprotegidos que possam invadir e ocultar malware no processo de construção ou atualização do software. Os atores da ameaça podem empregar uma ampla gama de técnicas para executar um ataque à cadeia de suprimentos.

Na maioria dos casos, os ataques à cadeia de abastecimento escondem-se atrás de processos legítimos para obter acesso irrestrito ao ecossistema de software de uma organização. Os invasores normalmente começam infiltrando-se nas defesas de segurança de um fornecedor ou fornecedor de software. Isso geralmente é mais fácil do que atacar diretamente uma vítima devido às práticas inadequadas de segurança cibernética de muitos desses fornecedores.

Depois que o malware da cadeia de suprimentos é injetado no ecossistema de software do fornecedor, ele precisa se conectar a um processo legítimo assinado digitalmente. Os invasores geralmente aproveitam as atualizações de software como pontos de entrada para espalhar o malware pela cadeia de fornecimento de software. Algumas das técnicas comuns usadas em ataques à cadeia de suprimentos incluem:

Ferramentas de construção de software comprometidas

O processo de construção de aplicativos de software modernos é bastante semelhante ao da cadeia de suprimentos física: na maioria dos casos, os aplicativos são criados usando vários componentes prontos de vários fornecedores. Isso inclui código proprietário, APIs de terceiros, componentes de código aberto e assim por diante. É impossível construir um aplicativo moderno do zero, e é por isso que a maioria dos desenvolvedores de software simplesmente reutiliza esses diferentes componentes como prática padrão.
Embora esta prática plug-and-play acelere o processo de desenvolvimento, ela introduz o risco de vulnerabilidades de segurança, sendo a principal delas os ataques à cadeia de abastecimento. Se um componente de software for comprometido de alguma forma, inúmeras organizações cujos aplicativos são desenvolvidos com esse componente tornam-se vulneráveis ​​a ataques.

Imagem do código comprometido

 

Certificados de assinatura de código roubados ou aplicativos maliciosos assinados usando identidade roubada

Nesse tipo de ataque, o hacker rouba um certificado que confirma o produto de uma empresa como legítimo e seguro. Esse certificado roubado possibilita que eles espalhem código malicioso disfarçado de produto de uma empresa legítima.

ATP41, um grupo de hackers apoiado pelo governo chinês, utiliza este método de ataque para realizar ataques à cadeia de abastecimento. Ao fazer com que o código malicioso pareça legítimo (usando certificados de assinatura de código roubados), eles conseguem fazer com que o código passe pelos controles de segurança nos sistemas que estão atacando. Este tipo de ataque é particularmente difícil de detectar.

Um ataque de aplicativo malicioso assinado é semelhante a um ataque de código roubado; nesse caso, o invasor disfarça um software comprometido como um aplicativo legítimo usando a identidade assinada roubada do aplicativo. Isso permite que ele passe por várias medidas de segurança para que um ataque possa ocorrer.

Código comprometido em componentes de hardware ou firmware

Todo dispositivo digital depende de firmware para funcionar sem problemas. Na maioria dos casos, este firmware é um produto de terceiros mantido por outra empresa. Os hackers podem injetar código malicioso no firmware, permitindo-lhes obter acesso à rede ou aos sistemas de dispositivos digitais que fazem uso desses componentes de firmware. Esse tipo de ataque cria um backdoor nos dispositivos digitais alimentados por esse firmware, permitindo que hackers roubem informações e instalem ainda mais malware.

Malware pré-instalado

Às vezes, os hackers colocam malware malicioso da cadeia de suprimentos em dispositivos de hardware como telefones, câmeras USB (Universal Serial Bus), unidades e outros dispositivos. Isso possibilita que eles atinjam sistemas ou redes conectadas aos dispositivos para os quais o hardware infectado é usado.

Por exemplo, uma unidade USB pode ser usada para transportar um keylogger que então chega aos sistemas de uma grande empresa varejista. Este keylogger pode ser usado para registrar as teclas digitadas pelos clientes da empresa, dando aos hackers acesso a informações como detalhes de pagamento, registros de clientes, etc.

Como se proteger contra ataques à cadeia de suprimentos?

A própria natureza dos ataques à cadeia de abastecimento torna difícil orientar-se contra eles. Esses tipos de ataques exploram a confiança que as empresas depositam em seus fornecedores para contra-atacar. Embora seja difícil prevenir esses ataques, a seguir estão algumas coisas que você pode fazer para mitigar seu impacto ou reduzir seus riscos:

Audite sua infraestrutura

Usar software que não é aprovado ou supervisionado pela TI (shadow IT) é um dos fatores que pode predispor sua empresa a ataques à cadeia de suprimentos. Uma das maneiras de mitigar esses ataques é realizar uma auditoria abrangente de todos os softwares usados ​​em sua organização. Isto pode revelar vulnerabilidades que os hackers da cadeia de abastecimento podem aproveitar para lançar um ataque.

Mantenha um inventário atualizado de todos os seus ativos de software

Todo software de terceiros que você usa (independentemente de quão seguro pareça) é um ponto potencial de vulnerabilidade. Ao manter um inventário atualizado de todos os seus softwares de terceiros, você pode acompanhar melhor suas atualizações, upgrades e problemas de segurança. Isso também ajuda a restringir possíveis pontos de ataque e implantar as soluções necessárias.

Avalie rigorosamente os fornecedores e aplique uma abordagem de confiança zero

Antes de usar qualquer ferramenta de terceiros ou fazer parceria com um novo fornecedor, você precisa verificar rigorosamente o quão seguros eles são. Na maioria das vezes, os ataques à cadeia de suprimentos ocorrem porque os fornecedores não seguem as práticas de segurança padrão. Como parte dos seus esforços de avaliação de riscos, você pode pedir a qualquer fornecedor em potencial que forneça detalhes de suas práticas de segurança padrão para determinar sua preparação para ataques à cadeia de suprimentos. Você pode começar solicitando um relatório do tipo SOC 2 e certificação ISO 27001 de qualquer fornecedor com o qual pretende fazer parceria. Você também deve verificar os relatórios de segurança e os certificados de qualquer produto antes de comprar.

Nunca confie em nenhum software ou usuário novo por padrão. Mesmo depois de confirmar sua estrutura de segurança e concordar em usar seus serviços, limitando as atividades ou permissões, qualquer nova ferramenta em sua rede reduzirá sua vulnerabilidade.

Imagem de Confiança Zero

Use ferramentas de segurança

Embora antivírus, firewalls e outras ferramentas de segurança sejam muitas vezes ineficazes contra ataques à cadeia de suprimentos, eles ainda podem ajudar a verificar a integridade do código e reduzir o risco de um ataque. Mesmo que não consigam impedir que o ataque aconteça, essas ferramentas ainda podem alertá-lo sobre ataques em andamento. Por exemplo, um firewall pode informar quando grandes blocos de dados estão sendo enviados pela sua rede, o que geralmente é o caso de um ataque de malware ou ransomware.

Proteja seus terminais

Os invasores da cadeia de suprimentos geralmente aproveitam vulnerabilidades de software em endpoints mal protegidos para lançar um ataque. A implantação de um sistema de detecção e resposta de endpoints ajudará a proteger seus endpoints contra malware e ransomware. Dessa forma, eles não poderão mais usar esses endpoints para espalhar um ataque para outras partes da sua rede, interrompendo o ataque antes que ele se espalhe ainda mais.

Implante políticas fortes de integridade de código

Os ataques à cadeia de suprimentos que aproveitam a integridade de aplicativos ou códigos podem ser interrompidos com a implantação de políticas fortes de integridade de código que autorizam apenas aplicativos com base em regras rigorosas. Essas políticas de dependência de código bloquearão qualquer aplicativo que pareça suspeito ou que levante um sinal de alerta. Embora possa haver algumas chamadas erradas e alarmes falsos, mitigar os riscos da cadeia de abastecimento desta forma ainda é melhor do que sofrer um ataque. Qualquer aplicativo sinalizado pode ser investigado e autorizado se for considerado legítimo.

Tenha um plano de resposta a incidentes

Dada a frequência crescente de ataques à cadeia de abastecimento, é melhor estar preparado com antecedência, criando um plano de resposta a incidentes. Toda organização deve ter planos para proteger componentes de missão crítica em caso de violações, a fim de manter as operações intactas. Você também deve ter estratégias claras de resposta e comunicação para informar parceiros, fornecedores e clientes sempre que ocorrer uma violação. Sua equipe de TI deve estar sempre preparada para possíveis ataques. O planejamento adequado do gerenciamento de riscos inclui a realização regular de exercícios de resposta a incidentes com sua equipe para avaliar a preparação para possíveis ataques.

Exemplos de ataques recentes à cadeia de abastecimento

A eficiência dos ataques à cadeia de abastecimento é o principal factor responsável pela sua prevalência. Esses tipos de ataques afetam várias organizações, desde empresas maiores como a Target até agências governamentais. Na última década, houve alguns casos de ataques à cadeia de abastecimento de grande repercussão. Alguns dos exemplos mais notáveis ​​de ataques à cadeia de suprimentos incluem:

  • SITA, 2021

    No início de 2021, a empresa de dados de transporte aéreo SITA sofreu uma violação de dados que se acredita ter exposto os registos de voo de mais de 580,000 passageiros da Malaysia Airlines.

    Programa de passageiro frequente. A mesma violação de dados também afetou a Finnair Air na Nova Zelândia e vários outros. Especialistas acreditam que o ataque ocorreu através de uma empresa conhecida como Star Alliance, com quem a Singapore Airlines compartilha dados. O ataque posteriormente se espalhou por toda a cadeia de abastecimento.

  • Estado da senha, 2021

    ClickStudios, uma empresa com sede na Austrália e criadora do Passwordstate (uma solução de gerenciamento de senhas), relatou um ataque à cadeia de suprimentos em 2021. O ataque ocorreu por meio do serviço de atualização de software hospedado em um CDN de terceiros. O malware foi baixado automaticamente nos dispositivos dos clientes que atualizaram seus softwares durante o ataque. O software malicioso foi projetado para descriptografar todos os dados armazenados no banco de dados do cliente e enviá-los como texto simples ao servidor externo do invasor.

  •  Confusão de dependência 2021

    Este foi um ataque deliberado para testar a propagação de ataques à cadeia de abastecimento. Alex Birsan, um pesquisador de segurança, violou sistemas pertencentes a empresas como Microsoft, Uber, Tesla e Apple, aproveitando os protocolos de dependência que seus aplicativos usavam para fornecer serviços aos usuários finais. Essas dependências possibilitaram a transmissão de pacotes de dados falsificados para vários usuários importantes na rede.

  • Mimecast, 2021

    Um certificado digital Mimecast comprometido levou a uma das violações de dados da cadeia de suprimentos mais comentadas de 2021. O certificado digital usado para autenticar alguns dos serviços do Mimecast nos serviços web do Microsoft 365 Exchange foi comprometido. As investigações revelaram que o grupo por trás deste hack também foi responsável pelo ataque à SolarWinds em 2020. O ataque afetou até 10% dos clientes do Mimecast.

  • Ataque SolarWinds, 2020

    Este é sem dúvida o caso mais notório de ataques à cadeia de abastecimento na última década. Hackers que se acredita serem jogadores maliciosos estrangeiros atacaram várias agências governamentais dos EUA por meio de um fornecedor terceirizado conhecido como SolarWinds, um provedor de serviços de TI. Seis departamentos governamentais dos EUA estão entre os 18,000 clientes da SolarWinds afetados pelos ataques, incluindo o Departamento de Energia e a Administração Nacional de Segurança Nuclear, o Departamento de Estado dos Estados Unidos, o Departamento de Comércio, o Departamento do Tesouro e o Departamento de Pátria. Segurança.

  • ASUS, 2018

    Em 2018, um ataque malicioso explorou o software de atualização ao vivo da ASUS para instalar malware backdoor em mais de um milhão de computadores. Neste ataque à cadeia de abastecimento, os hackers aproveitaram o recurso de atualização automática para introduzir malware nos PCs dos usuários. O malware foi assinado com certificados de segurança legítimos da ASUS, o que dificultou a sua detecção. Felizmente, os hackers tinham uma lista limitada de apenas 600 usuários, e os milhares de outros usuários que não estavam nessa lista não foram significativamente afetados.

  • Fluxo de eventos, 2018

    No ataque de fluxo de eventos de 2018, os hackers injetaram malware em um repositório do sistema GitHub. Como o GitHub era um serviço de backup para milhões de desenvolvedores, o ataque expôs vários usuários a um possível ataque de malware. No entanto, o código malicioso foi programado especificamente para atingir a carteira Bitcoin Copay. Se os desenvolvedores do Copay afetados pelo malware executassem um script de compilação de lançamento durante o ataque, o código malicioso teria sido incluído no aplicativo e isso teria coletado as chaves privadas e as informações da conta dos usuários do Copway com pelo menos 1000 Bitcoin em seus conta.

  • Ataque à cadeia de suprimentos da Equifax

    A Equifax, uma das maiores agências de relatórios de cartões de crédito do mundo, foi atingida por um ataque à cadeia de abastecimento em 2018. O código malicioso foi entregue através de uma vulnerabilidade de aplicação no site da empresa. Mais de 147 milhões de clientes da Equifax foram afetados pelo ataque que expôs dados pessoais sensíveis, incluindo endereços, números de segurança social, datas de nascimento e assim por diante.

Conclusão

Se há apenas uma coisa que você precisa aprender neste artigo, é esta: os ataques à cadeia de suprimentos de software são uma ameaça iminente. Não há dúvida acerca disso.

Portanto, você não pode confiar nos produtos assinados e nas atualizações dos fornecedores; já pode haver modificações ou acréscimos ao seu código. Então, o que você pode fazer para garantir que seu sistema não seja infectado por arquivos maliciosos? Certifique-se de que cada proprietário de biblioteca ou fornecedor de programa forneça um SBOM completo – saiba mais sobre SBOMs aqui—e garanta que você obtenha o que espera do fornecedor ou proprietário da biblioteca, solicitando um atestado confiável.