
Herramienta defensiva de detección y mitigación para CVE-2026-31431 ("Copy Fail") — LPE de algif_aead en el kernel Linux. No se incluye código de exploit.
Herramienta de detección y mitigación automatizada para la vulnerabilidad
CVE-2026-31431 ("Copy Fail"), una escalada de privilegios
local (LPE) en el módulo algif_aead (interfaz AF_ALG) del kernel Linux.
⚠️ Alcance: este proyecto es puramente defensivo. No contiene, no genera y no referencia código de explotación. El objetivo es permitir que equipos de seguridad y administradores de sistema (1) identifiquen hosts expuestos y (2) apliquen la mitigación recomendada (bloqueo del módulo
algif_aead) hasta que el kernel corregido esté instalado.
Detección (--check)
uname -r)algif_aead está cargado o disponible para
cargaapt/dpkg,
rpm, zypper) en busca de referencia al parche/CVE/etc/os-releaseVULNERABLE, MITIGADO (módulo bloqueado),
CORREGIDO (el kernel ya contiene el parche) o INDETERMINADOMitigación (--mitigate, requiere root)
/etc/modprobe.d/disable-algif-aead-cve-2026-31431.conf con
install algif_aead /bin/false y blacklist algif_aeadrmmod)Informe (--report json|text)
# Solo diagnosticar (no requiere root)
sudo ./bin/copyfail-guard --check
# Diagnosticar y aplicar mitigación temporal
sudo ./bin/copyfail-guard --mitigate
# Salida JSON para integración con otras herramientas
sudo ./bin/copyfail-guard --check --report json
Requisitos: Python 3.8+, Bash, acceso root solo para --mitigate
(la comprobación funciona sin privilegios elevados, con información limitada).
algif_aead) es temporal. Reduce la
superficie de ataque pero no sustituye la actualización del kernel.
En cuanto el paquete de kernel corregido (que contenga el commit
a664bf3d603d o un backport equivalente) esté disponible para su
distribución, debe aplicarse y reiniciarse el sistema.algif_aead (uso directo de AF_ALG para
AEAD desde userspace) pueden ver afectada su funcionalidad por la mitigación.
dm-crypt/LUKS, kTLS, IPsec, SSH y las compilaciones estándar de
OpenSSL/GnuTLS normalmente no dependen de AF_ALG y no se ven afectados.copyfail-guard/
├── bin/
│ └── copyfail-guard # entrypoint (bash) -> llama al módulo Python
├── copyfail_guard/
│ ├── __init__.py
│ ├── detect.py # lógica de detección
│ ├── mitigate.py # lógica de mitigación
│ └── report.py # formato de salida (texto/JSON)
├── tests/
│ └── test_detect.py
├── LICENSE
└── README.md
MIT — ver LICENSE.