## https://sploitus.com/exploit?id=D2217B37-29E7-5C06-A6C5-567A31B31CA0
# CVE-2026-31431 - Copy Fail - Script de detection
Script Python pour verifier si un systeme Linux est vulnerable a la faille **CVE-2026-31431** (Copy Fail), une elevation de privileges locale dans le noyau Linux.
## La faille en bref
Depuis 2017 (commit `72548b093ee3`), le module cryptographique `algif_aead` du noyau gere les operations en place de facon incorrecte. Via `splice()`, un utilisateur non-privilegie peut corrompre le page cache d'un binaire setuid et obtenir les droits root **sans toucher le disque**.
- CVSS: **7.8 (Eleve)**
- Versions affectees: noyau Linux **4.13 a 6.18.21 / 6.19.11**
- Versions corrigees: **6.18.22+**, **6.19.12+**, **7.0+**
## Ce que le script verifie
| # | Verification |
|---|--------------|
| 1 | Version du noyau (plage vulnerable) |
| 2 | Module `algif_aead` charge ou chargeable |
| 3 | Socket `AF_ALG SOCK_SEQPACKET` accessible sans privileges |
| 4 | `os.splice()` disponible (exploit Python direct) |
| 5 | Binaires setuid lisibles par tous (`sudo`, `passwd`...) |
| 6 | Protections actives (SELinux, AppArmor, blacklist modprobe) |
## Utilisation
```bash
python3 check_cve_2026_31431.py
```
Aucune dependance externe. Fonctionne sans root.
## Detection uniquement
Ce script ne fait qu'analyser le systeme. Il n'exploite pas la faille, ne charge aucun module et n'ecrit rien sur le disque.
## Contournement (si pas de mise a jour possible)
```bash
echo 'install algif_aead /bin/false' | sudo tee /etc/modprobe.d/algif_aead-block.conf
```
> Ce contournement ne fonctionne **pas** sur les distributions RHEL (module integre au noyau).