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
copyfail-mitigation — # Playbooks Ansible pour auditer et atténuer CVE-2026-31431 (« Copy Fail »), une vulnérabilité d'élévation de privilèges locale dans le module `algif_aead` du noyau Linux affectant toutes les principales distributions depuis 2017. | Kitploit
Outils/GitHubGitHub/mahradbt/copyfail-mitigation
Sécurité de l'Infrastructure CloudAnalyse des VulnérabilitésAudit de ConfigurationDevSecOpsRéponse aux Incidents
GitHubmahradbt/copyfail-mitigation

copyfail-mitigation

# Playbooks Ansible pour auditer et atténuer CVE-2026-31431 (« Copy Fail »), une vulnérabilité d'élévation de privilèges locale dans le module `algif_aead` du noyau Linux affectant toutes les principales distributions depuis 2017.

Voir le dépôt
24il y a 4 moisPas encore vérifié

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

CVE-2026-31431 — Copy Fail

Élévation de privilèges / corruption mémoire du noyau Linux algif_aead
Playbooks d'audit et d'atténuation basés sur Ansible — prêts à être exécutés en production


Vue d'ensemble

Copy Fail (CVE-2026-31431) est une vulnérabilité dans le module algif_aead du noyau Linux — l'interface AEAD orientée utilisateur de la famille de sockets crypto AF_ALG.
Une faille dans le chemin copy_*user du noyau à l'intérieur du gestionnaire de requêtes AEAD permet à un utilisateur local non privilégié de corrompre la mémoire du noyau ou d'élever ses privilèges en forgeant une requête de socket malformée.

ChampDétail
ID CVECVE-2026-31431
SurnomCopy Fail
ComposantNoyau Linux — algif_aead (net/socket.c, crypto/algif_aead.c)
Vecteur d'attaqueLocal
Privilèges requisFaibles (utilisateur non privilégié)
ImpactCorruption mémoire du noyau / élévation de privilèges locale
CorrigéCorrectif en amont du noyau en cours — vérifiez auprès de votre éditeur de distribution

Systèmes concernés

DistributionVersions concernéesStatut
Ubuntu 22.04 / 24.04noyaux < version corrigéeCorrectif en attente — voir l'USN Ubuntu
Debian 12 (Bookworm)noyaux < version corrigéeCorrectif en attente
RHEL / AlmaLinux / Rocky 8 & 9noyaux < version corrigéeCorrectif en attente
Amazon Linux 2 / 2023noyaux < version corrigéeCorrectif en attente
Amont génériquealgif_aead compilé ou chargé automatiquementVulnérable si le module est présent

Un système n'est pas à risque immédiat si algif_aead n'est pas chargé et qu'aucun outil espace utilisateur ne le charge à la demande (voir l'étape 1 de l'audit).


Impact en un coup d'œil

Sous-systèmeAffecté par cette CVE ?Affecté par l'atténuation ?
dm-crypt / LUKSNonNon
kTLSNonNon
IPsec / StrongSwanNonNon
OpenSSL (build par défaut)NonNon
GnuTLS / NSSNonNon
OpenSSHNonNon
Moteur afalg d'OpenSSLPotentiellement ouiOui — à examiner avant application
Outils kcapi-enc / kcapi-dgstOuiOui

Structure du dépôt

root@kitploit:~
.
├── audit_algif_aead.yml      # Étape 1 — audit : détecter l'exposition par hôte
├── mitigate_copyfail.yml     # Étape 2 — atténuation : décharger + mettre sur liste noire le module
└── README.md                 # Ce document

Prérequis

  • Ansible ≥ 2.14 sur le nœud de contrôle
  • Collection community.general (ansible-galaxy collection install community.general)
  • Accès SSH + become: true (sudo) sur les hôtes cibles
  • lsof installé sur les cibles (généralement présent par défaut)

Configuration de l'inventaire

inventory.ini est ignoré par git — il reste local et n'atteint jamais le dépôt. inventory.ini.example est le modèle versionné à partir duquel tout le monde démarre.

root@kitploit:~
# Cloner et préparer
git clone https://github.com/your-org/copy-fail-CVE-2026-31431.git
cd copy-fail-CVE-2026-31431
cp inventory.ini.example inventory.ini

# Modifier inventory.ini avec vos vrais hôtes, puis exécuter :
ansible-playbook -i inventory.ini audit_algif_aead.yml

Les chemins suivants sont ignorés par git pour éviter toute fuite de données d'infrastructure :

Chemin ignoré par gitPourquoi
inventory.iniVrais noms d'hôtes / IP
inventories/Tout répertoire d'inventaire local
copyfail_reports/La sortie d'audit contient les versions du noyau, les listes de processus
.vault_passFichier de mot de passe Ansible Vault
*.retryArtefacts de nouvelle tentative Ansible

Étape 1 — Audit

Exécutez le playbook d'audit avant de toucher à quoi que ce soit. Il collecte des preuves par hôte et écrit un rapport à la fois localement et sur chaque cible.

root@kitploit:~
ansible-playbook -i inventory.ini audit_algif_aead.yml

Les rapports sont récupérés dans ./copyfail_reports/<hostname>_audit.txt.

Ce que vérifie l'audit

VérificationCommandeVerdict
Version du noyauuname -rInformatif
Module chargé ?lsmod | grep algif_aeadChargé = risque d'exposition
Sockets AF_ALG activeslsof | grep AF_ALGUtilisateurs trouvés = à examiner obligatoirement
Moteur afalg d'OpenSSLopenssl engine | grep afalgActif = examiner l'impact
Outils kcapi présentswhich kcapi-*Présents = utilisateurs potentiels
Atténuation déjà appliquéestat /etc/modprobe.d/disable-algif.confPrésent = déjà atténué

Interprétation du verdict

ConditionAction recommandée
Module NON chargéRisque immédiat faible — surveiller le correctif du noyau
Module chargé, aucun utilisateur de socket AF_ALGSans risque d'appliquer l'atténuation
Module chargé et utilisateurs AF_ALG actifsExaminer les processus avant d'appliquer l'atténuation
Fichier d'atténuation déjà présentL'atténuation a été appliquée précédemment — vérifier

Étape 2 — Atténuation

Exécutez d'abord l'audit. Le playbook d'atténuation peut être exécuté de manière idempotente, mais l'audit vous fournit la piste de preuves.

root@kitploit:~
ansible-playbook -i inventory.ini mitigate_copyfail.yml

Pour ignorer des hôtes spécifiques (par ex. hôtes avec dépendance kcapi confirmée) :

root@kitploit:~
ansible-playbook -i inventory.ini mitigate_copyfail.yml \
  -e '{"skip_hosts": ["db-prod-01", "hsm-node-02"]}'

Ce que fait l'atténuation

  1. Crée /etc/modprobe.d/disable-algif.conf avec install algif_aead /bin/false
  2. Décharge le module algif_aead du noyau en cours d'exécution (aucun redémarrage requis pour la protection initiale)
  3. Met à jour l'initramfs pour que la liste noire survive à un redémarrage (update-initramfs sur Debian/Ubuntu, dracut --force sur RHEL)
  4. Écrit un journal horodaté dans /var/backup/copyfail_mitigation/mitigation.log

Aucun redémarrage n'est requis pour retirer le module de la mémoire.
Un redémarrage reste recommandé pour confirmer que la liste noire prend effet et pour établir un état post-atténuation propre.


Vérification

Une fois le playbook terminé, vérifiez sur n'importe quel hôte cible :

root@kitploit:~
# Le module ne doit PAS apparaître
lsmod | grep algif_aead

# Le fichier de liste noire doit exister et contenir la ligne install
cat /etc/modprobe.d/disable-algif.conf

# Le chargement manuel doit être rejeté
sudo modprobe algif_aead   # Attendu : FATAL: Module algif_aead not found or refused

Annulation (après le correctif du noyau)

Une fois que votre éditeur publie un noyau corrigé et que vous l'avez appliqué :

root@kitploit:~
# Sur chaque hôte — supprimer la liste noire
sudo rm /etc/modprobe.d/disable-algif.conf

# Reconstruire l'initramfs
sudo update-initramfs -u        # Debian / Ubuntu
sudo dracut --force              # RHEL / CentOS / Amazon Linux

# Redémarrer sur le noyau corrigé
sudo reboot

Références

  • Avis de sécurité CERT Europa 2026-005
  • Avis de sécurité Ubuntu — Copy Fail
  • xint.io — Copy Fail sur les distributions Linux
  • Source algif_aead du noyau Linux

Licence

Publié sous licence MIT.
À utiliser à vos propres risques. Validez toujours dans un environnement de préproduction avant d'appliquer à des systèmes de production.


Maintenu par la communauté. Les PR et les rapports de problèmes sont les bienvenus.

Télécharger l’outil