Uma séria vulnerabilidade de segurança foi recentemente descoberta nas versões mais recentes da ferramenta de compactação XZ e nas bibliotecas liblzma, presentes em praticamente todas as distribuições Linux atuais. O problema, atribuído ao CVE-2024-3094, aparentemente é fruto da inserção proposital de código malicioso nos repositórios de upstream do XZ por parte de um ator mal intencionado.
As versões do XZ afetadas são a 5.6.0 e a 5.6.1 e as bibliotecas de compactação liblzma, às quais o XZ faz uso. Estas versões contém código malicioso ofuscado nos source releases, em formato “tarball”, que não estão presentes nos repositórios públicos.
O backdoor em questão foi projetado para interferir no sistema de autenticação do OpenSSH (sshd) em sistemas Linux, quando construídos com as bibliotecas XZ comprometidas.
Como funciona o Backdoor
Este backdoor utiliza técnicas sofisticadas para evitar a detecção e só é acionado em condições bastante específicas. Alguns aspectos chaves:
- Os pacotes oficiais de lançamento do x-utils contém código malicioso ofuscado e não presente nos repositórios públicos.
- Arquivos de teste criados nos repositórios atuam como payload, instalados pelo script malicioso.
- O backdoor sequestra o mecanismo IFUNC da glibc para executar rotinas de autenticação, como a descriptografia da chave RSA do OpenSSH.
- O backdoor é ativado seletivamente , com base nas ferramentas de build, distribuição usada e até mesmo a partir do nome do processo em execução (/usr/bin/sshd)
Quando acionado com sucesso, em um sistema Linux vulnerável baseado em glibc, o backdoor é capaz de ignorar os fluxos de autenticação e potencialmente habilitar recursos completos de execução remota de código.
Impactos e Fatores de Risco
Embora ainda seja uma situação emergente, com muitos detalhes desconhecidos, alguns dos principais fatores de risco identificados até agora incluem:
- Sistemas executando distribuições de lançamento contínuo (rolling release), como Arch Linux ou Debian Sid, que são atualizadas automaticamente para a versões comprometidas (5.6.x) da XZ.
- Instalações com OpenSSH corrigidas, mas com o systemd vinculado a biblioteca liblzma.
- Servidores sshd publicamente acessíveis e expostos, onde o bypass está habilitado.
- Outros vetores de ataque e payloads podem ainda não ter sido mapeados, por conta da vulnerabilidade ser extremamente recente.
A combinação da ativação furtiva direcionada e da ampla base instalada dos utilitários XZ cria um alto risco de que esse ataque à cadeia de suprimentos seja ainda mais explorado nos próximos dias.
Resposta e Mitigação
Tanto a CISA quanto os principais fornecedores de distribuição Linux emitiram alertas críticos, instruindo os usuários a realizar um downgrade imediato para versões anteriores ao lançamento do backdoor, como a versão 5.4.x.
A correção de alta prioridade é recomendada para estes cenários:
- Servidores sshd expostos – Atualizar XZ Imediatamente
- Distribuições baseadas em glibc com versões do XZ iguais a 5.6.0/5.6.1 – Atualize o mais rápido possível
- Distribuições de lançamento contínuo (Rolling Release) – Priorize a atualização para branches de distribuições dev/unstable.
Até o momento, o status das principais distros Linux em atividade são:
Fedora Linux 40 [Não Afetada]
Fedora Rawhide (branch dev) – [Afetada]
Debian unstable (Sid) [ Afetada ]
Kali Linux [ Afetada ]
Amazon Linux (AWS) [ Não afetada ]
OpenSUSE [ Não afetada ]
Arch Linux – [Afetada]
Projetos Apache [ Não afetados ]
O Fedora publicou atualizações de emergência, revertendo a versão da XZ para a versão segura (5.4.x). A Red Hat também alertou os usuários, em caráter de urgência, para pararem de usar qualquer instância do Fedora Rawhide imediatamente, até que uma correção seja disponibilizada. Lembrando que o Rawhide é a base para o lançamento do Fedora 41.
Embora nenhuma versão do Red Hat Enterprise Linux pareça afetada atualmente, o backdoor também pode existir em outras distribuições Linux que empacotam as versões xz 5.6.0/5.6.1 comprometidas. É recomendado aos usuários que consultem seus fornecedores de sistema operacional para obter atualizações e orientações imediatamente.
Ainda, até o momento, acredita-se que a versão 5.4.6 do XX não é vulnerável a esta exploração. Para verificar se está sendo executada a versão afetada, verifique a versão do XZ:
Uma saída apontando a versão comprometida se assemelha a este exemplo:
No caso do OpenBSD, FreeBSD e outras distribuições BSD que fazem uso de utilitários de compactação nativos não estão confirmadamente vulneráveis. No entanto, análises adicionais ainda estão em andamento na comunidade de código aberto.
Comunicado CISA
A agência americana de defesa cibernética (CISA) emitiu um comunicado informando sobre o evento:
“A CISA e a comunidade de código aberto estão respondendo a relatos de código malicioso incorporado nas versões 5.6.0 e 5.6.1 do XZ Utils”. “O código malicioso pode permitir acesso não autorizado aos sistemas afetados.”
A CISA recomenda que os desenvolvedores e usuários façam o downgrade do XZ Utils para uma versão não comprometida, como a versão estável mais recente do XZ Utils (5.4.6). Além disso, é recomendado que as organizações busquem por quaisquer sinais de atividade maliciosa em sistemas que tenham as versões comprometidas instaladas e relatem quaisquer incidentes confirmados à CISA, para investigação adicional e resposta a incidentes.
Ataque a Cadeia de Suprimentos
O fato de o código malicioso ter sido injetado nos diretamente nos tarballs por um suposto malfeitor torna este um ataque à cadeia de suprimentos de importância crítica. Os comprometimentos da cadeia de fornecimento de software são um vetor de ameaça crescente que é muito difícil de detectar e prevenir.
Neste caso em específico, ressalta-se a importância de práticas seguras de desenvolvimento de software, assinatura de código e auditoria cuidadosa de bases de código de código aberto, além de processos de arquitetura e engenharia muito bem consolidados.
Todos os usuários de distribuições Linux devem instalar imediatamente os pacotes XZ atualizados ou fazer downgrade do XZ Utils para uma versão não comprometida para mitigar esta vulnerabilidade nos sistemas afetados.