Ataques à cadeia de produção das empresas representam uma mudança entre os hackers. Esse tipo de ataque não é novo, mas está se tornando cada vez mais comum e vem evoluindo o suficiente para não ser detectado por métodos de segurança mais básicos.
Esses ataques envolvem a implantação de uma parte do malware que executa o ataque (chamada de payload) dentro de softwares, firmwares e hardwares. Esse payload escondido pelo hacker acaba fazendo parte do produto final e as empresas, donas desses produtos, se tornam distribuidores dos malwares involuntariamente. Esses invasores se escondem nos computadores e redes dos consumidores até que algum gatilho dispare seu processo malicioso.
O foco deste artigo são os ataques à cadeia de suprimentos de softwares, mas também serão abordados outros dois tipos de ataque para que seja possível entender a escala e o escopo das vulnerabilidades das cadeias de suprimentos.
Ataques a hardwares
Invasões à supply chain de hardwares são, em sua maioria, amadoras e baratas. Um exemplo são drives USB com keyloggers instalados, programas capazes de gravar mais de 8 mil páginas de toques de teclado. Outro caso, são os microfones instalados nos conectores de rede Ethernet (plugs RJ45), que ajudam a roubar senhas e outros dados sensíveis.
Ataques a firmwares
Hackers também adulteram o firmware de diferentes equipamentos ao aplicar códigos maliciosos que invadem os aparelhos dos usuários. O foco mais comum é o firmware de inicialização. Ao adulterar esse processo, o usuário executa o malware involuntariamente ao ligar seu aparelho.
Ataques a softwares
Hackers preferem atacar a cadeia de produção de softwares, pois dessa forma só precisam alterar um link dentro de toda a cadeia para inserir malware em todos os produtos. Eles podem aplicar um código malicioso durante diversas etapas do desenvolvimento do software, desde a criação, até a complicação, distribuição e atualizações. O aumento da sofisticação dos softwares empresariais também ajudou a aumentar o número de opções para os hackers.
Ataques podem mirar o código-fonte de um software, inserindo códigos maliciosos na criação de aplicativos supostamente confiáveis, por exemplo. Às vezes, o código é aplicado em um arquivo executável por meio de um compilador (programa que traduz códigos de uma linguagem para outra) ou um linker (programa que combina dados que o compilador gera em arquivos executáveis) infectado. Outro alvo frequente são os mecanismos de atualização dos softwares.
Enquanto desenvolvedores de software confiáveis costumam “assinar” seus arquivos executáveis e scripts com certificados digitais para confirmar que os códigos daqueles arquivos não foram adulterados, os ataques a esse tipo de softwares costumam incluir certificados roubados e que se passam por genuínos.
Geralmente, empresas menores e outros desenvolvedores de softwares que dependem de código aberto acabam sendo os agentes mais vulneráveis desse tipo de ataque.
Os principais ataques
Um ataque para definir os próximos
Algumas invasões de hackers à cadeias de produção de softwares contam com um planejamento prévio extremamente sofisticado, que serve para identificar os melhores alvos para ataques futuros.
Um dos principais ataques à infraestrutura de um empresa aconteceu na Energetic Bear, onde os hackers usaram uma campanha de spear-phishing (e-mails maliciosos) para definir uma lista de fornecedores para atacar.
O Fantasma da Ferramenta de Criação
Até a Apple, famosa por sua resistência contra vírus , foi vítima de um ataque à sua cadeia de produção. Hackers usaram o Xcode, uma ferramenta para criar aplicativos para iOS e OS X, para inserir códigos maliciosos dentro de diversos aplicativos. E a Apple hospedou e disponibilizou esses apps na App Store.
A maioria dos desenvolvedores geralmente baixa o Xcode de maneira segura, diretamente da Apple. Mas o programa também está disponível para download em diversos fóruns de desenvolvedores. Hackers então inserem códigos maliciosos nas versões disponibilizadas nessas fontes alternativas. Pesquisadores do gigante e-commerce Alibaba, chamaram essas variações adulteradas do programa de “XcodeGhost”. As versões continham somente algumas linhas extras de código, difíceis de detectar, mas suficientes para penetrar e propagar.
Entrando pelo backdoor de um gerenciador de servidores popular
O incidente do ShadowPad é um dos mais conhecidos e mais sofisticados ataques à cadeia de produção já vistos. Em 2017, pesquisadores da Kaspersky descobriram um backdoor, chamado ShadowPad, implantado em um software de gerenciamento de servidores usado por centenas de grandes empresas no mundo todo. Quando ativado, ou melhor, aberto, esse backdoor permite que hackers instalem outros módulos maliciosos e roubem dados do sistema.
Neste caso, os hackers verificaram o código malicioso com um certificado legítimo. Tudo que levava à função infectada foi escondido e se tornou invisível para os usuários. Os invasores haviam ganhado não só acesso aos certificados, mas também ao código-fonte e ao sistema de criação do software.
Pesquisadores da Equipe de Análise e Pesquisas Global da Kaspersky, o GReAT, notificaram imediatamente a fornecedora NetSarang, que rapidamente tirou do ar o software infectado e o substituiu com uma versão anterior limpa. Neste caso, a NetSarang mostrou que uma resposta rápida a ciberataques como esse faz a diferença e, junto com a Kaspersky, encontraram somente um payload infectado, o que é um resultado excelente, considerando a alta popularidade do produto.
Ataque ao limpador vai direto ao topo
O CCleaner é um programa muito popular de limpeza de arquivos, com mais de 2 bilhões de downloads. Mas, depois de um ataque à sua cadeia de produção em setembro de 2017, uma versão infectada do software foi baixada mais de 2 milhões de vezes.
O ataque foi feito através de uma pequena brecha, mas os hackers criptografaram todos os códigos, tornando-os muito mais difíceis de serem detectados. Assim como no caso do ShadowPad, os invasores assinaram os códigos maliciosos com certificados digitais legítimos.
Os hackers deste ataque miravam o patamar mais alto. Eles incluíram no malware uma função para detectar se o usuário tinha credenciais de administrador. O ataque somente seguiria em frente se aquele usuário tivesse acesso às funções de comando e controle da empresa.
Como o ataque era extremamente seletivo, a versão completa do malware só foi baixada em 40 computadores. Mas as vítimas do ataque ao CCleaner incluem alguns dos maiores nomes da indústria da tecnologia, como Samsung, Fujitsu, Intel, Sony e Asus, e isso fez com que o ataque fosse um dos mais destruidores e eficientes já descobertos.
Infiltrando-se em funções de atualização automáticas
Pesquisadores da Kaspersky descobriram o malware Operation ShadowHammer em janeiro de 2019. Eles encontraram um arquivo suspeito com um certificado legítimo da Asus. O arquivo era distribuído pelo servidor oficial da Asus, mas continha um backdoor.
Ataques à cadeia de produção muitas vezes miram atualizações automáticas de sistema. Para começar, os hackers plantaram o código Operation ShadowHammer na ferramenta de atualizações em tempo real da Asus. Mas a complexidade do ataque foi evoluindo.
O Operation ShadowHammer foi disparado para mais de 400 computadores, infectando 230.
Mas a Asus não foi o único alvo. Desde a primeira descoberta, nossa equipe identificou diversos outros casos, incluindo 3 outras empresas de softwares, todas com arquivos digitalmente certificados. Os hackers verificaram a portas de acesso com diferentes certificados para cada ataque.
Detectar é melhor do que curar
Detectar ataques à cadeia de produção é um trabalho de muitas nuances.
Muitas vezes esses ataques não manipulam diretamente o código original, mas sim atualizações baixadas e que são executadas somente pela memória do computador.
Jogos estão entre os alvos mais atraentes para ataques à supply chain, porque neles é mais difícil saber se os malware são parte ou não das funcionalidades originais daquele software. Ferramentas contra trapaças ou para a proteção do IP são alguns exemplos que podem confundir o sistema e disparar processos de análise de comportamento.
Códigos maliciosos de ataques à cadeia de produção são só uma parte minúscula dentro do código de um arquivo executável. Tentar encontrá-los é como procurar agulha em um palheiro. E isso fica ainda mais difícil quando esses malware estão verificados com o mesmo tipo de certificado que os arquivos originais.
Como as empresas podem se defender contra ataques à sua cadeia de produção?
Fornecedores são alvos menos resistentes que fabricantes de produtos, principalmente porque produtos finalizados são mais extensos e complexos.
“A partir de uma única e pequena brecha escondida em um fornecedor, os criminosos podem danificar alvos muitos maiores”.
Mas o que as empresas podem fazer sobre isso?
1. Usar as melhores soluções de cibersegurança
Soluções de segurança básicas priorizam velocidade ao invés de rigor, abrindo espaço para que seus sistemas sejam enganados por certificados supostamente legítimos ou confundindo arquivos suspeitos por falsos positivos.
Soluções completas e dedicadas somente à segurança digital fazem um trabalho melhor. Uma solução de nível corporativo com boa reputação é essencial para detectar e capturar invasores avançados. Esse tipo de solução analisa todo tipo de anomalias e fornece às equipes de cibersegurança das empresas uma completa visibilidade de sua rede, com resposta automática.
2. Contrate a equipe certa. E também um red team.
Empresas devem contratar funcionários de segurança de T.I. altamente capacitados, incluindo especialistas de segurança, analistas de SOC (Centros de Operação de Segurança) e um red team.
O red team faz a função de “advogado do Diabo”. Eles atuam para forçar as empresas a repensarem suas estratégias, analisando também o trabalho da própria empresa e dando um ponto de vista crítico e diferente sobre seus processos.
3. Use modelos de ameaças na hora de desenvolver um software
Durante o desenvolvimento de um software, o ideal é que as empresas criem um modelo de ameaça em sua estrutura de criação para simular possíveis problemas e assim identificar e eliminar possíveis riscos futuros. Além disso, o modelo de acesso escolhido deve aplicar o Princípio do Menor Privilégio, PoLP na sigla em inglês (Principle of Least Privilege), para restringir o risco de acessos indesejados.
4. Mantenha uma boa relação com seus fornecedores
Crie uma relação de confiança com seus parceiros que seja mais forte do que o normal.
5. Invista em resposta
Como possível notar no caso da NetSarang e sua rápida resposta aos ataques no ShadowPad, é importante que as empresas invistam em gerenciamento de riscos tanto quanto em segurança. Se sua empresa não tem capacidade interna para lidar com isso, envolva uma equipe externa de resposta a incidentes para investigar possíveis ataques ou quaisquer atividades suspeitas.