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
cve-2026-31431-ansible — # Playbook de Ansible para detectar y aplicar la mitigación de la línea de comandos del kernel para CVE-2026-31431 (Copy Fail) en flotas Debian/Ubuntu/RHEL, con detección de solo lectura y aplicación idempotente. | Kitploit
Herramientas/GitHubGitHub/aestechno/cve-2026-31431-ansible
Seguridad de Infraestructura en la NubeEscáneres de VulnerabilidadesAuditoría de ConfiguraciónDevSecOps
GitHubaestechno/cve-2026-31431-ansible

cve-2026-31431-ansible

# Playbook de Ansible para detectar y aplicar la mitigación de la línea de comandos del kernel para CVE-2026-31431 (Copy Fail) en flotas Debian/Ubuntu/RHEL, con detección de solo lectura y aplicación idempotente.

Ver Repositorio

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 →
3hace 3 mesesAún no revisado
Compartir

CVE-2026-31431 ("Copy Fail") — Receta de mitigación para Ansible

CI

Detecta y aplica la mitigación de la línea de comandos del kernel para CVE-2026-31431 ("Copy Fail") en una flota Debian / Ubuntu / familia RHEL usando Ansible.

La CVE es una falla de escalada de privilegios local en la interfaz algif_aead de AF_ALG del kernel de Linux. Cualquier usuario local sin privilegios — incluidos cuentas de servicio como www-data, mysql, o procesos dentro de una aplicación web comprometida por RCE — puede encadenarla hasta root en unas pocas syscalls. El bug afecta a todas las principales distribuciones publicadas desde 2017.

Qué hace esta receta

  • Detecta qué hosts carecen de la mitigación. Solo lectura por defecto.
  • Aplica la mitigación universal — añade initcall_blacklist=algif_aead_init a la línea de comandos del kernel — cuando se invoca con .
-e apply_mitigation=true
  • Nunca reinicia automáticamente. Los reinicios son decisión del operador.
  • La lista negra de la línea de comandos del kernel funciona en ambas configuraciones: integrada (familia RHEL) y modular (Debian/Ubuntu), algo que el workaround frecuentemente citado modprobe blacklist algif_aead no logra.

    Cómo funciona la mitigación

    algif_aead_init() es la función del kernel que registra el algoritmo aead de AF_ALG con el subsistema de sockets criptográficos durante el arranque. El parámetro de la línea de comandos initcall_blacklist=algif_aead_init indica al kernel que omita esa initcall. El código vulnerable sigue en el binario del kernel, pero socket(AF_ALG, ..., "aead") devuelve ENOENT, por lo que la primera syscall del exploit falla. Sin superficie alcanzable, no hay escalada de privilegios.

    Una vez que los proveedores publican kernels parcheados y reinicias con ellos, la mitigación ya no es necesaria y puede eliminarse.

    Inicio rápido

    root@kitploit:~
    # 1. Detectar (solo lectura) — genera un informe de estado por host
    ansible-playbook -i inventory check_cve_2026_31431.yml
    
    # 2. Preparar la mitigación primero en un solo host (sin reinicio automático)
    ansible-playbook -i inventory --limit <ip-o-host> \
      -e apply_mitigation=true check_cve_2026_31431.yml
    
    # 3. Reiniciar ese host mediante tu mecanismo habitual
    
    # 4. Volver a detectar; confirmar "Mitigación activa: sí"
    
    # 5. Desplegar al resto de la flota por lotes
    

    El informe de un host vulnerable tiene este aspecto:

    root@kitploit:~
    ═══════════════════════════════════════════
    Host:               192.168.1.42
    Distro:             Ubuntu 24.04
    Kernel:             6.8.0-60-generic
    Mitigación activa:  no
    Mitigación preparada: no
    ═══════════════════════════════════════════
    ⚠️  192.168.1.42: la mitigación de CVE-2026-31431 NO está activa.
    

    Revertir después de que se publique un kernel parcheado

    Fuera del alcance de esta receta. One-liners manuales:

    root@kitploit:~
    # Debian / Ubuntu
    sudo sed -i 's/ initcall_blacklist=algif_aead_init//' /etc/default/grub
    sudo update-grub
    sudo reboot
    
    # Familia RHEL
    sudo grubby --update-kernel=ALL --remove-args="initcall_blacklist=algif_aead_init"
    sudo reboot
    

    Comportamiento a prueba de fallos

    La ruta de detección es estrictamente de solo lectura (uname, leer /proc/cmdline, leer /etc/default/grub, grubby --info=ALL). Las sondas usan failed_when: false para que una salida inesperada nunca aborte el play. ignore_unreachable: true significa que los hosts inalcanzables reciben una advertencia clara "INALCANZABLE — tratar como VULNERABLE" en lugar de fallar la ejecución.

    La ruta de aplicación está envuelta en block/rescue para que un único host con problemas nunca detenga al resto. La edición de grub es idempotente y está condicionada a mitigation_staged para que las re-ejecuciones sean no operativas.

    Pruebas

    root@kitploit:~
    bash tests/run-checks.sh all
    

    Etapas: lint (yamllint + ansible-lint) → syntax (ansible-playbook --syntax-check) → dry-run (ejecuta el playbook en modo --check contra localhost con -c local, tanto la ruta de detección como la de aplicación). El mismo script lo invoca la matriz de GitHub Actions en contenedores debian:12, ubuntu:22.04, ubuntu:24.04 y almalinux:9 en cada push y pull request.

    Lo que el dry-run no verifica:

    • No modifica grub, no ejecuta update-grub ni dispara un reinicio.
    • /proc/cmdline dentro de un contenedor de CI muestra la línea de comandos del host del runner, no la del contenedor, por lo que mitigation_active en la salida de CI no tiene significado. CI demuestra que el playbook se ejecuta limpiamente; no demuestra que un host esté mitigado.

    Consulta tests/README.md para más información.

    Fuentes

    • Help Net Security — CVE-2026-31431
    • CloudLinux — mitigación y versiones de kernel parcheadas
    • Ubuntu — CVE-2026-31431
    • Debian Security Tracker — CVE-2026-31431
    • Tenable FAQ — Copy Fail
    • CERT-EU SA 2026-005

    Créditos

    Vulnerabilidad descubierta por Taeyang Lee (Theori) y convertida en una cadena de exploit completa por el Xint Code Research Team, quienes merecen el crédito por hacer que la comunidad de seguridad prestara atención. Esta receta solo automatiza la mitigación que ellos recomendaron.

    Licencia

    Beerware. Consulta LICENSE. En resumen: haz lo que quieras con esto; si alguna vez nos encontramos, invítame una cerveza.

    Mantenedor

    AESTECHNO — Hugues Orgitello — empresa de diseño electrónico, Montpellier, Francia.

    Descargar herramienta