Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
copyfail-mitigation — # Playbooks de Ansible para auditar y mitigar CVE-2026-31431 ("Copy Fail") Una vulnerabilidad de escalada de privilegios local en el módulo `algif_aead` del kernel de Linux que afecta a todas las principales distribuciones desde 2017. | Kitploit
Herramientas/GitHubGitHub/mahradbt/copyfail-mitigation
Seguridad de Infraestructura en la NubeAnálisis de VulnerabilidadesAuditoría de ConfiguraciónDevSecOpsRespuesta a Incidentes
GitHubmahradbt/copyfail-mitigation

copyfail-mitigation

# Playbooks de Ansible para auditar y mitigar CVE-2026-31431 ("Copy Fail") Una vulnerabilidad de escalada de privilegios local en el módulo `algif_aead` del kernel de Linux que afecta a todas las principales distribuciones desde 2017.

Ver Repositorio
2hace 3 mesesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

CVE-2026-31431 — Copy Fail

Escalada de privilegios / corrupción de memoria en el kernel de Linux algif_aead
Playbooks de auditoría y mitigación basados en Ansible — listos para ejecutar en producción


Resumen

Copy Fail (CVE-2026-31431) es una vulnerabilidad en el módulo algif_aead del kernel de Linux — la interfaz AEAD orientada al espacio de usuario de la familia de sockets criptográficos AF_ALG.
Un fallo en la ruta copy_*user del kernel dentro del manejador de solicitudes AEAD permite a un usuario local sin privilegios corromper la memoria del kernel o escalar privilegios mediante la creación de una solicitud de socket malformada.

CampoDetalle
ID de CVECVE-2026-31431
ApodoCopy Fail
ComponenteKernel de Linux — algif_aead (net/socket.c, crypto/algif_aead.c)
Vector de ataqueLocal
Privilegios requeridosBajos (usuario sin privilegios)
ImpactoCorrupción de memoria del kernel / escalada local de privilegios
ParcheadoParche del kernel upstream en curso — consulte a su proveedor de distribución

Sistemas afectados

DistribuciónVersiones afectadasEstado
Ubuntu 22.04 / 24.04kernels < versión parcheadaParche pendiente — consulte el USN de Ubuntu
Debian 12 (Bookworm)kernels < versión parcheadaParche pendiente
RHEL / AlmaLinux / Rocky 8 y 9kernels < versión parcheadaParche pendiente
Amazon Linux 2 / 2023kernels < versión parcheadaParche pendiente
Upstream genéricoalgif_aead compilado o auto-cargadoVulnerable si el módulo está presente

Un sistema no está en riesgo inmediato si algif_aead no está cargado y ninguna herramienta del espacio de usuario lo carga bajo demanda (consulte el paso 1 de auditoría).


Impacto de un vistazo

Subsistema¿Afectado por esta CVE?¿Afectado por la mitigación?
dm-crypt / LUKSNoNo
kTLSNoNo
IPsec / StrongSwanNoNo
OpenSSL (compilación predeterminada)NoNo
GnuTLS / NSSNoNo
OpenSSHNoNo
Motor afalg de OpenSSLPotencialmente síSí — revise antes de aplicar
Herramientas kcapi-enc / kcapi-dgstSíSí

Estructura del repositorio

root@kitploit:~
.
├── audit_algif_aead.yml      # Paso 1 — auditoría: detectar exposición por host
├── mitigate_copyfail.yml     # Paso 2 — mitigación: descargar + bloquear módulo
└── README.md                 # Este documento

Requisitos previos

  • Ansible ≥ 2.14 en el nodo de control
  • Colección community.general (ansible-galaxy collection install community.general)
  • Acceso SSH + become: true (sudo) en los hosts de destino
  • lsof instalado en los objetivos (normalmente presente por defecto)

Configuración del inventario

inventory.ini está en gitignore — permanece local y nunca llega al repositorio. inventory.ini.example es la plantilla confirmada desde la que todos parten.

root@kitploit:~
# Clonar y preparar
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

# Edite inventory.ini con sus hosts reales y luego ejecute:
ansible-playbook -i inventory.ini audit_algif_aead.yml

Las siguientes rutas están en gitignore para evitar la filtración de datos de infraestructura:

Ruta en gitignorePor qué
inventory.iniNombres de host / IPs reales
inventories/Cualquier directorio de inventario local
copyfail_reports/La salida de auditoría contiene versiones de kernel, listas de procesos
.vault_passArchivo de contraseña de Ansible Vault
*.retryArtefactos de reintento de Ansible

Paso 1 — Auditoría

Ejecute el playbook de auditoría antes de tocar nada. Recopila evidencia por host y escribe un informe tanto localmente como en cada objetivo.

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

Los informes se descargan a ./copyfail_reports/<hostname>_audit.txt.

Qué comprueba la auditoría

ComprobaciónComandoVeredicto
Versión del kerneluname -rInformativo
¿Módulo cargado?lsmod | grep algif_aeadCargado = riesgo de exposición
Sockets AF_ALG activoslsof | grep AF_ALGUsuarios encontrados = debe revisar
Motor afalg de OpenSSLopenssl engine | grep afalgActivo = revisar impacto
Herramientas kcapi presenteswhich kcapi-*Presentes = usuarios potenciales
Mitigación ya aplicadastat /etc/modprobe.d/disable-algif.confPresente = ya mitigado

Interpretación del veredicto

CondiciónAcción recomendada
Módulo NO cargadoRiesgo inmediato bajo — supervise el parche del kernel
Módulo cargado, sin usuarios de sockets AF_ALGSeguro aplicar la mitigación
Módulo cargado y usuarios AF_ALG activosRevise los procesos antes de aplicar la mitigación
Archivo de mitigación ya presenteLa mitigación se aplicó previamente — verifique

Paso 2 — Mitigación

Ejecute primero la auditoría. El playbook de mitigación es seguro de ejecutar de forma idempotente, pero la auditoría le proporciona el rastro de evidencia.

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

Para omitir hosts específicos (p. ej., hosts con dependencia confirmada de kcapi):

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

Qué hace la mitigación

  1. Crea /etc/modprobe.d/disable-algif.conf con install algif_aead /bin/false
  2. Descarga el módulo algif_aead del kernel en ejecución (no se requiere reinicio para la protección inicial)
  3. Actualiza el initramfs para que el bloqueo sobreviva a un reinicio (update-initramfs en Debian/Ubuntu, dracut --force en RHEL)
  4. Escribe un registro con marca de tiempo en /var/backup/copyfail_mitigation/mitigation.log

No se requiere reinicio para eliminar el módulo de la memoria.
Aun así, se recomienda un reinicio para confirmar que el bloqueo surte efecto y para establecer un estado posterior a la mitigación limpio.


Verificación

Después de que el playbook complete, verifique en cualquier host de destino:

root@kitploit:~
# El módulo NO debe aparecer
lsmod | grep algif_aead

# El archivo de bloqueo debe existir y contener la línea de instalación
cat /etc/modprobe.d/disable-algif.conf

# La carga manual debe ser rechazada
sudo modprobe algif_aead   # Esperado: FATAL: Module algif_aead not found or refused

Reversión (después del parche del kernel)

Una vez que su proveedor publique un kernel parcheado y lo haya aplicado:

root@kitploit:~
# En cada host — elimine el bloqueo
sudo rm /etc/modprobe.d/disable-algif.conf

# Reconstruya el initramfs
sudo update-initramfs -u        # Debian / Ubuntu
sudo dracut --force              # RHEL / CentOS / Amazon Linux

# Reinicie con el kernel parcheado
sudo reboot

Referencias

  • Aviso de seguridad CERT Europa 2026-005
  • Aviso de seguridad de Ubuntu — Copy Fail
  • xint.io — Copy Fail en distribuciones de Linux
  • Código fuente de algif_aead del kernel de Linux

Licencia

Publicado bajo la Licencia MIT.
Úselo bajo su propio riesgo. Valide siempre en un entorno de pruebas antes de aplicarlo a sistemas de producción.


Mantenido por la comunidad. Se aceptan PRs e informes de incidencias.

Descargar herramienta