Skip to content
KitploitKITPLOIT
HerramientasBlog
Log in
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_31694 — Escáner pasivo de vulnerabilidades para hosts Linux para CVE-2026-31694: comprueba el kernel en ejecución, la configuración de FUSE, los metadatos de paquetes y la evidencia de parches, y luego genera recomendaciones de mitigación personalizadas. | Kitploit
Herramientas/GitHubGitHub/zenzue/cve_2026_31694
Herramientas DefensivasEscáneres de VulnerabilidadesAnálisis de VulnerabilidadesAuditoría de Configuración
GitHubzenzue/cve_2026_31694

CVE_2026_31694

Escáner pasivo de vulnerabilidades para hosts Linux para CVE-2026-31694: comprueba el kernel en ejecución, la configuración de FUSE, los metadatos de paquetes y la evidencia de parches, y luego genera recomendaciones de mitigación personalizadas.

Ver Repositorio
14hace 2 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-31694 Escáner pasivo

Una herramienta pasiva de evaluación de hosts Linux para CVE-2026-31694, una escritura fuera de los límites en la caché de readdir de FUSE del kernel de Linux.

El escáner evalúa el kernel en ejecución, la exposición a FUSE, los metadatos de paquetes locales, la evidencia del código fuente del kernel, el entorno de ejecución y la familia de sistemas operativos. Cuando el host puede estar afectado, produce una guía de mitigación adaptada a la distribución detectada.

Autor: Aung Myat Thu [w01f]


Tabla de contenidos

  • Visión general
  • Resumen de la vulnerabilidad
  • Modelo de seguridad
  • Características
  • Requisitos
  • Instalación
  • Uso
  • Opciones de línea de comandos
  • Flujo de trabajo de evaluación
  • Veredictos
  • Códigos de salida
  • Fuentes de detección
  • Soporte de distribuciones
  • Generación de mitigaciones
  • Comportamiento en contenedores y WSL
  • Formatos de informe
  • Automatización e integración
  • Guía operativa
  • Limitaciones
  • Solución de problemas
  • Referencias

Visión general

cve_2026_31694_scanner.py es una utilidad local de evaluación de vulnerabilidades que no explota la vulnerabilidad.

No confirma la vulnerabilidad activando la ruta de código FUSE afectada. En su lugar, combina múltiples indicadores pasivos:

  • versión del kernel en ejecución;
  • líneas base de versiones corregidas de upstream;
  • tamaño actual de la página de memoria;
  • configuración del kernel CONFIG_FUSE_FS;
  • tipos de sistema de archivos FUSE registrados;
  • presencia de /dev/fuse y acceso del usuario actual;
  • disponibilidad del asistente de montaje de FUSE;
  • montajes FUSE activos;
  • inspección del código fuente del kernel instalado;
  • propiedad de los paquetes del kernel;
  • evidencia del changelog de paquetes local;
  • metadatos de actualización de paquetes en caché;
  • comparación entre el kernel instalado y el kernel en ejecución;
  • detección de la distribución y el gestor de paquetes;
  • detección de contenedores, máquinas virtuales y WSL.

El resultado es una evaluación de exposición, no una prueba basada en explotación.


Resumen de la vulnerabilidad

CVE-2026-31694 afecta a la caché de readdir de FUSE del kernel de Linux.

La lógica vulnerable calcula el tamaño serializado de una entrada de directorio a partir de una longitud de nombre controlada por el servidor y copia el registro en una única página de la caché de páginas. Una entrada de directorio con una longitud de nombre de 4095 puede producir un tamaño serializado de 4120 bytes.

En un sistema que utiliza páginas de 4096 bytes, ese registro excede una página en 24 bytes.

La corrección de upstream rechaza los registros de directorio que no caben en una sola página antes de que se produzca la copia en la caché.

Componente afectado```text

fs/fuse/readdir.c fuse_add_dirent_to_cache()

### Datos de línea base del escáner

El escáner contiene las siguientes líneas base estables corregidas de upstream:

| Serie del kernel | Línea base corregida |
|---|---:|
| 5.10 | 5.10.258 |
| 5.15 | 5.15.209 |
| 6.1 | 6.1.175 |
| 6.6 | 6.6.136 |
| 6.12 | 6.12.84 |
| 6.18 | 6.18.25 |
| 7.0 | 7.0.2 |
| Mainline | 7.1 o superior |

Estas versiones se utilizan como una de las entradas de evaluación. No se tratan como la única fuente de verdad, porque los proveedores de distribuciones pueden aplicar un backport de la corrección conservando un número de versión upstream más antiguo.

---

## Modelo de seguridad

El escáner está diseñado para evitar invocar la operación vulnerable.

### El escáner no

- montar un sistema de archivos FUSE;
- abrir o comunicarse con `/dev/fuse`;
- iniciar un servidor FUSE;
- enviar registros de directorio manipulados;
- asignar memoria para pruebas de colocación de páginas;
- manipular los asignadores del kernel;
- modificar `/etc/passwd`;
- cambiar la configuración del kernel;
- cargar o descargar módulos del kernel;
- modificar los permisos de `/dev/fuse`;
- instalar o eliminar paquetes;
- reiniciar el sistema;
- intentar una escalada de privilegios.

### El escáner puede

- leer archivos bajo `/proc`, `/boot`, `/lib/modules`, `/usr/lib/modules`, `/usr/src` y los directorios de metadatos de paquetes;
- ejecutar consultas de paquetes limitadas y de solo lectura;
- inspeccionar los montajes activos y el registro de sistemas de archivos;
- escribir un informe solo cuando se proporciona `--output` explícitamente;
- imprimir comandos de mitigación para revisión del administrador.

Los comandos de mitigación son salida de documentación. Nunca se ejecutan automáticamente.

---

## Características

### Identificación del host y del kernel

- Lee `platform.release()` y analiza la versión del kernel de estilo upstream.
- Lee `/etc/os-release` o `/usr/lib/os-release`.
- Detecta la arquitectura de la CPU y el tamaño de página de memoria.
- Identifica si el kernel escaneado pertenece al sistema operativo actual.

### Evaluación de exposición FUSE

- Lee `CONFIG_FUSE_FS` de las fuentes de configuración del kernel disponibles.
- Detecta soporte FUSE integrado y configuraciones de módulo cargable.
- Lee `/proc/filesystems`.
- Comprueba los metadatos de `/dev/fuse` y el acceso de lectura/escritura del usuario actual.
- Localiza `fusermount3` o `fusermount`.
- Analiza los montajes FUSE activos desde `/proc/self/mountinfo`.

### Evidencia de parche

- Compara la versión en ejecución con las líneas base corregidas de upstream.
- Busca en el código fuente del kernel instalado la protección contra registros de tamaño excesivo.
- Comprueba los changelogs de paquetes RPM o Debian locales para:
  - `CVE-2026-31694`;
  - el título del parche de upstream.

### Estado del paquete y del reinicio

- Intenta identificar el paquete al que pertenece el kernel en ejecución.
- Consulta los metadatos locales del gestor de paquetes sin actualizar los repositorios.
- Detecta un kernel instalado más reciente cuando el entorno del host es autoritativo.
- Comprueba `/var/run/reboot-required` cuando corresponde.

### Detección del entorno

- Detecta contenedores compatibles con Docker.
- Detecta contenedores compatibles con Podman.
- Detecta cgroups relacionados con contenedores.
- Detecta WSL.
- Detecta máquinas virtuales usando `systemd-detect-virt` cuando está disponible.

### Informes

- Salida de texto legible por humanos.
- Salida JSON legible por máquina.
- Salida de informe en Markdown.
- Salida solo de mitigación.
- Salida opcional a archivo.
- Códigos de salida de proceso significativos.

---

## Requisitos

### Requisitos obligatorios

- Linux para la evaluación del kernel.
- Python 3.9 o superior.
- Acceso de lectura a los metadatos normales del sistema.

El escáner utiliza únicamente la biblioteca estándar de Python.

### Comandos opcionales

Se recopila evidencia adicional cuando las siguientes herramientas están presentes:

| Herramienta | Propósito |
|---|---|
| `dpkg-query` | Descubrimiento de la propiedad del paquete de kernel y del changelog en Debian/Ubuntu |
| `rpm` | Inspección de la propiedad del paquete y del changelog en Fedora/RHEL/SUSE |
| `pacman` | Metadatos de paquetes de kernel y actualizaciones para la familia Arch |
| `apt` | Consulta de actualizaciones en caché para la familia Debian |
| `dnf` o `dnf5` | Consulta de actualizaciones en caché para Fedora/RHEL |
| `zypper` | Consulta de parches CVE en caché para SUSE |
| `apk` | Consulta de paquetes/actualizaciones de Alpine |
| `systemd-detect-virt` | Detección de contenedores y máquinas virtuales |
Descargar herramienta