Código malicioso descoberto em distribuições Linux

Uma backdoor implantada no XZ Utils encontrou seu caminho em distribuições Linux populares.

Atores desconhecidos implantaram código malicioso nas versões 5.6.0 e 5.6.1 das ferramentas de compressão de código aberto XZ Utils. Para piorar a situação, utilitários com trojans conseguiram encontrar brechas em várias compilações populares do Linux lançadas em março, então esse incidente poderia ser considerado um ataque à cadeia de suprimentos. Esta vulnerabilidade foi intitulada como  CVE-2024-3094.

O que torna essa ameaça tão perigosa?

Inicialmente, diversos pesquisadores afirmaram que essa backdoor permitia que os atacantes burlassem a autenticação do sshd (o processo do servidor OpenSSH) e ganhassem acesso não autorizado ao sistema operacional remotamente. No entanto, considerando as informações mais recentes, essa vulnerabilidade não deveria ser classificada como uma “ameaça que burla a autenticação”, mas sim como “execução remota de código” (RCE). A backdoor intercepta a função RSA_public_decrypt, verifica a assinatura do host usando a chave fixa Ed448 e, se verificada com sucesso, executa o código malicioso enviado pelo host por meio da função system(), não deixando rastros nos logs do sshd.

Quais distribuições Linux podem conter utilitários maliciosos e quais estão seguras?

Sabe-se que as versões 5.6.0 e 5.6.1 do XZ Utils foram incluídas nas compilações de março das seguintes distribuições Linux:

  • Kali Linux, mas, de acordo com o blog oficial, apenas aquelas disponíveis entre 26 e 29 de março (o blog também contém instruções para verificar versões com componentes vulneráveis);
  • openSUSE Tumbleweed e openSUSE MicroOS, disponíveis de 7 a 28 de março;
  • Fedora 41, Fedora Rawhide e Fedora Linux 40 beta;
  • Debian (somente nas distribuições testing, unstable e experimental);
  • Arch Linux – imagens de contêiner disponíveis de 29 de fevereiro a 29 de março. No entanto, o site org afirma que, devido às peculiaridades de implementação, este vetor de ataque não funcionará no Arch Linux, apesar de recomendarem fortemente a atualização do sistema.

De acordo com informações oficiais – divulgadas pelas próprias empresas – Red Hat Enterprise Linux (RHEL), SUSE Linux Enterprise, openSUSE Leap e Debian Stable não são vulneráveis. Quanto a outras distribuições, é aconselhável verificar manualmente a presença de versões com trojans do XZ Utils.

Como o código malicioso foi implantado no XZ Utils?

Aparentemente, foi um caso típico de cessão de controle. A pessoa que inicialmente mantinha o projeto XZ Libs no GitHub transferiu o repositório para umaconta que tem contribuído para vários repositórios relacionados à compressão de dados há vários anos. E, em algum momento, alguém por trás daquela outra conta implantou uma backdoor no código do projeto.

A epidemia quase eminente que nunca ocorreu

Segundo Igor Kuznetsov, chefe de nossa Equipe Global de Pesquisa e Análise (GReAT – sigla em inglês de Global Research and Analysis Team), a exploração da CVE-2024-3094 poderia potencialmente ter se tornado o maior ataque em escala ao ecossistema Linux em toda a sua história. Isso porque foi principalmente direcionado aos servidores SSH – a principal ferramenta de gerenciamento remoto de todos os servidores Linux na internet. Se tivesse acabado em distribuições estáveis, provavelmente teríamos visto um grande número de invasões de servidores. No entanto, a boa notícia é que a CVE-2024-3094 foi notada nas distribuições de teste e em constante atualização – nas quais são usados os pacotes de software mais recentes. Ou seja, a maioria dos usuários do Linux permaneceu segura. Até o momento, não detectamos nenhum caso de exploração real da CVE-2024-3094.

Como se manter seguro?

A Agência de Segurança Cibernética e Infraestrutura dos EUA (CISA) recomenda que qualquer pessoa que tenha instalado ou atualizado sistemas operacionais afetados em março faça o downgrade do XZ Utils para uma versão anterior (por exemplo, a versão 5.4.6) imediatamente. E comece a rastrear atividades maliciosas.

Se você instalou uma distribuição com uma versão vulnerável do XZ Utils, também faz sentido alterar todas as credenciais que possam ser potencialmente roubadas do sistema pelos responsáveis pela ameaça.

Você pode detectar a presença de uma vulnerabilidade usando a regra Yara para CVE-2024-3094.

Se você suspeita que um ator de ameaças possa ter acessado a infraestrutura da sua empresa, recomendamos usar o serviço [Compromise assessment placeholder] Kaspersky Compromise Assessment [/placeholder] para descobrir quaisquer ataques passados ou em andamento.

Dicas