
Este é um ambiente de contêiner executando a instância de backdoor sshd CVE-2024-3094, funcionando com o projeto https://github.com/amlweems/xzbot. NÃO é Docker, apenas implementado por chroot.
Este é um ambiente executando uma instância backdoor sshd do CVE-2024-3094, funcionando com este exploit: https://github.com/amlweems/xzbot.
NÃO é um contêiner Docker. Tentei criar este ambiente de vulnerabilidade com docker, mas falhei:
Desconfio que estava relacionado ao systemd, porque todas as maneiras que tentei dentro do docker de iniciar o SSHD estavam sendo executadas a partir da linha de comando, não do systemd.
Dando continuidade, testei com o experimento: Na máquina VM onde sshd(systemd) foi explorado com sucesso com xzbot, iniciei diretamente /sbin/sshd -D -e -p 2024 com o liblzma.so substituído, e a exploração do xzbot falhou, o que indica que pode estar altamente relacionado ao systemd.
Desisti do docker porque é um pouco complexo executar sshd a partir do systemd dentro do docker.
Finalmente, extraí o sistema de arquivos minimizado da minha VM e o transformei em um mini contêiner baseado em chroot, que pode ser facilmente executado no namespace do host com systemd.
Funciona tanto no meu ambiente VM quanto em outro ambiente, o que torna a exploração do xzbot bem-sucedida.
Ainda não descobri o princípio, mas de qualquer forma organizei o ambiente neste projeto para pesquisa.
./compose.sh no diretório raiz deste projeto.
./remove.sh no diretório raiz deste projeto.
./xzbot -addr 127.0.0.1:2024 -cmd 'whoami > /hello', e você pode ver o arquivo chamado hello abaixo de env_fs se a exploração for bem-sucedida.
O https://github.com/amlweems/xzbot fornece uma ferramenta boa, e ela corrigiu o liblzma.so com sua própria chave pública, tornando-o acessível. Consulte o projeto xzbot para detalhes.
Nosso mini sistema de arquivos contém o arquivo lzma so corrigido padrão do xzbot. E um binário executável xzbot foi compilado estaticamente aqui. Você pode apenas executar ./xzbot -addr 127.0.0.1:2024 -cmd 'whoami > /hello' para teste.
Um arquivo xzback.service do systemd será implantado dinamicamente em /etc/systemd/system/ no seu host.
E o xzback.service iniciará com chroot para nosso mini sistema de arquivos, sem mais influência no sistema de arquivos do host.