O especialista da Microsoft Andres Freund descobriu, completamente por acaso, um malware que podia quebrar a segurança da autenticação ssh. Se não tivesse sido descoberto, este malware podia ter sido uma ameaça séria para o Linux.
Andres Freund, um programador especializado em PostgreSQL da Microsoft, estava a fazer testes de desempenho em algum código quando descobriu um atraso de 600 ms nos processos relacionados com ssh. Ele também notou que estes processos estavam a usar uma grande quantidade de recursos do processador mesmo quando deviam ter falhado imediatamente.
Depois de alguma investigação, Freund descobriu um ataque à cadeia de distribuição que envolvia código malicioso incluído no pacote de utilitários XZ. Ele publicou as suas descobertas na Open Source Security Mailing List e a comunidade de desenvolvimento começou a trabalhar para resolver este problema de segurança.
A comunidade descobriu como este ataque foi injectado nos utilitários XZ, um pequeno projecto que é mantido desde 2009 por um único programador. A consta associada com o lançamento das várias versões fez as coisas devagar, ganhando primeiro a confiança do programador responsável pelo XZ, o que leva a crer que o autor deste ataque esteja ligado a uma agência governamental de um qualquer país.
i tried explaining my nontech friends today that an engineer debugging a 500ms delay has saved the entire web, potentially the entire civilisation
— Peer Richelsen — oss/acc (@peer_rich) March 30, 2024
Esta ameaça receber a referência CVE-2024-3094 e tem o nível máximo de severidade: 10. A Red Hat diz que este código altera funções dentro da biblioteca liblzma, uma biblioteca de compressão de dados que faz parte do conjunto de utilitários ZX e um dos componentes fundamentais de várias distribuições de Linux conhecidas.
There was some serious time and dedication put into this attack, honestly. Talk about playing the long game https://t.co/0IZFrDAbbQ
— Ian Coldwater 📦💥 (@IanColdwater) March 29, 2024
O código modificado pode depois ser usado por qualquer software ligado à biblioteca XZ e permite a intercepção e modificação de dados que são usados dentro da biblioteca. Em certas condições, esta backddor podia permitir a um atacante quebrar a autenticação ssh, o que, por sua vez, permitiria o acesso total ao sistema. De acordo com Freund, as versões 5.6.0 e 5.6.1 dos utilitários XZ são afectadas.
A Red Hat identificou conjuntos de utilitários vulneráveis no Fedora 31 e no Fedora Rawhide e aconselhou os utilizadores a suspenderem a utilização até que seja lançada uma actualização. O Red Hat Enterprise Linux (RHEL) não foi afectado. A SUSE lançou actualizações para o openSUSE (Tumbleweed ou MicroOS). As versões stable do Debian Linux não foram afectadas, mas as versões experimentais necessitam de actualizações ao ZX. Os utilizadores do Kali Linux que actualizaram o sistema entre 26 e 29 de Março, têm de actualizar não são afectados por esta vulnerabilidade.
Apesar de esta reacção rápida da comunidade, muitos especialistas em segurança informática dizem que a situação ainda não está estabilizada e que podem ser descobertas mais vulnerabilidades. Também não se sabe que tipo de ataque estava programado para ser lançado através desta vulnerabilidade. A Cybersecurity and Infrastructure Security Agency dos Estados Unidos aconselhou a fazer o downgrade dos utilitários ZX para uma versão que não tenha sido comprometida, que deve ser anterior à 5.6.0.
A boa notícia é que, aparentemente, nenhumas das versões infectadas dos utilitários foram integradas em quaisquer versões de produção das distribuições de Linux mais conhecidas.