
Minimal no-libc Linux x86_64 ELF PoC build para Copy Fail (CVE-2026-31431)
Exploit mínimo de 436 bytes para Copy Fail, graças ao poder do golfing
Este ELF faz um golf extremo do exploit ao estar totalmente desmapeado, rwx, e ao usar-se condicionalmente como o payload ELF para envenenar o cache. Mais golfs de internals de ELF amaldiçoados em breve
Tem uma ideia melhor? Compita em https://copy.golf/
=== INÍCIO DA PARTE MAL FEITA ===
No Debian/Ubuntu:
sudo apt install build-essential binutils
O repositório inclui um shell.nix fixado e um .envrc.
Com nix-shell:
nix-shell
Com direnv:
direnv allow
Isto fornece a toolchain reproduzível usada aqui:
gcc 15.2.1
GNU ld / strip de llvmPackages_19.bintools
python3
make
Se estiver a usar Nix ou direnv, o make usará a toolchain do shell automaticamente.
Também pode experimentar o exploit dentro de uma VM rápida Ubuntu Server 24.04 LTS
cd test-vm
./quick-test.sh
make size
make clean
gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04.1)
GNU ld (GNU Binutils for Ubuntu) 2.42
GNU strip (GNU Binutils for Ubuntu) 2.42
Compilação menor reproduzível:
gcc 15.2.1
GNU ld 2.46
GNU strip com --strip-section-headers
O tamanho final varia com GCC, binutils e a implementação do strip.