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
copy-fail-CVE-2026-31431-poc — Prueba de concepto de exploit para CVE-2026-31431, una vulnerabilidad de escalada de privilegios local en el kernel de Linux en el módulo algif_aead, que permite a usuarios no privilegiados obtener acceso root mediante una escritura de 4 bytes en la caché de páginas. | Kitploit
Herramientas/GitHubGitHub/euriconicacio/copy-fail-cve-2026-31431-poc
Escalada de PrivilegiosFrameworks de ExploitsAnálisis de VulnerabilidadesExplotaciónExplotación de Binarios
GitHubeuriconicacio/copy-fail-cve-2026-31431-poc

copy-fail-CVE-2026-31431-poc

Prueba de concepto de exploit para CVE-2026-31431, una vulnerabilidad de escalada de privilegios local en el kernel de Linux en el módulo algif_aead, que permite a usuarios no privilegiados obtener acceso root mediante una escritura de 4 bytes en la caché de páginas.

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
Ver Repositorio
1hace 3 mesesAún no revisado

CVE-2026-31431 — Prueba de Concepto de Copy Fail

Este repositorio contiene una prueba de concepto (PoC) del exploit para CVE-2026-31431, una vulnerabilidad de escalada de privilegios local de alta gravedad en el kernel de Linux que permite a cualquier usuario local sin privilegios obtener acceso root. El fallo, denominado «Copy Fail», reside en el módulo algif_aead y puede encadenarse con la interfaz de socket AF_ALG y la llamada al sistema splice() para realizar una escritura controlada de 4 bytes en la caché de páginas de cualquier archivo legible, como el binario setuid /usr/bin/su.

La vulnerabilidad afecta a casi todos los kernels de Linux publicados desde 2017, incluidas todas las principales distribuciones (Ubuntu, Debian, RHEL, SUSE, Amazon Linux y muchas otras). Se divulgó públicamente el 29 de abril de 2026. Se ha confirmado una corrección en el árbol principal (commit a664bf3d603d), pero muchos proveedores aún están en proceso de publicar kernels parcheados. Hasta que haya un kernel corregido disponible, se recomienda encarecidamente deshabilitar el módulo del kernel algif_aead como mitigación temporal.

⚠ Importante: Este material se proporciona estrictamente con fines educativos y de investigación de seguridad autorizada. No lo utilice contra sistemas que no sean de su propiedad ni sin permiso explícito.

Archivos de la Prueba de Concepto

El repositorio contiene dos implementaciones de PoC que demuestran la explotación desde diferentes ángulos.

1. copy-fail-poc-short.py — mínimo, cercano al original

Una versión condensada que se mantiene muy cerca del exploit en Python publicado originalmente. Utiliza nombres de variables de una sola letra y omite comentarios o constantes, lo que la hace extremadamente compacta (732 bytes). Esta variante:

  • Abre /usr/bin/su y un socket AEAD AF_ALG en bruto.
  • Envía una carga útil descomprimida en fragmentos de 4 bytes a través del socket.
  • Utiliza os.splice para copiar con cero copias el fragmento correspondiente de 4 bytes del archivo objetivo.
  • Finalmente ejecuta /usr/bin/su para obtener un shell root.

2. copy-fail-poc.py — completamente refactorizado, exhaustivo

Una versión completamente reescrita y bien documentada que sigue las mejores prácticas de Python. Esta variante:

  • Define constantes significativas y funciones auxiliares.
  • Incluye comentarios detallados que explican cada paso de la cadena de ataque.
  • Utiliza una función dedicada (send_data_over_crypto_socket()) para aislar la lógica central.
  • Añade un manejo de errores adecuado y elimina todos los números mágicos.

Esta versión es ideal para quienes deseen comprender la vulnerabilidad en profundidad o adaptar el código para investigaciones posteriores.

Qué Hace el Exploit

A alto nivel, el exploit:

  1. Abre el binario setuid objetivo (/usr/bin/su).
  2. Crea un socket AEAD AF_ALG y lo configura con los parámetros necesarios para desencadenar el fallo lógico.
  3. Empalma datos del descriptor de archivo abierto en el socket, aprovechando el mecanismo de copia con cero copias splice().
  4. Debido al fallo en el módulo algif_aead, el kernel escribe erróneamente 4 bytes de datos controlados por el atacante en la caché de páginas del binario objetivo.
  5. Modificar la caché de páginas en memoria de /usr/bin/su parchea efectivamente el binario en tiempo de ejecución, lo que permite a un usuario sin privilegios ejecutar una versión parcheada que devuelve un shell root.

El exploit es extremadamente fiable (tasa de éxito del 100 %) y no requiere ventanas de carrera ni offsets específicos por kernel.

Referencias

  • Entrada CVE: CVE-2026-31431
  • Sitio oficial de divulgación: copy.fail
  • Informe técnico de Xint Code: Copy Fail – Escalada de Privilegios Local en Linux
  • Análisis del blog de Wiz: Copy.Fail: Vulnerabilidad Universal de LPE en Linux
  • Corrección en el kernel principal de Linux: a664bf3d603d (git.kernel.org)
  • Aviso de CERT-EU (2026-005): Vulnerabilidad de Alta Gravedad en el Kernel de Linux («Copy Fail»)
Descargar herramienta