
# Copy Fail(CVE-2026-31431)向けの最小限のno-libc Linux x86_64 ELF PoCビルド
Copy Fail 用の最小 436 バイトのエクスプロイト。ゴルフの力に感謝
この ELF は、完全にアンマップされ rwx であること、そしてキャッシュを汚染するための ELF ペイロードとして条件付きで自身を使用することで、エクスプロイトを超ゴルフ化しています。より呪われた ELF 内部のゴルフが近日公開予定
より良いアイデアをお持ちですか? https://copy.golf/ で競い合いましょう
=== BEGIN SLOPPED PORTION ===
Debian/Ubuntu の場合:
sudo apt install build-essential binutils
このリポジトリには、固定された shell.nix と .envrc が含まれています。
nix-shell を使用する場合:
nix-shell
direnv を使用する場合:
direnv allow
これにより、ここで使用される再現可能なツールチェーンが提供されます:
gcc 15.2.1
GNU ld / strip from llvmPackages_19.bintools
python3
make
Nix または direnv を使用している場合、make はシェルからツールチェーンを自動的に使用します。
クイックな Ubuntu Server 24.04 LTS VM 内でエクスプロイトを試すこともできます
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
再現可能なより小さいビルド:
gcc 15.2.1
GNU ld 2.46
GNU strip with --strip-section-headers
最終的なサイズは、GCC、binutils、および strip の実装によって異なります。