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-2018-19323 — Un framework de explotación para CVE-2018-19323 - Vulnerabilidad de escalada de privilegios GIGABYTE GDrv con soporte multiarquitectura e integración con framework | Kitploit
Herramientas/GitHubGitHub/blueisbeautiful/cve-2018-19323
Frameworks de Pruebas de PenetraciónEscalada de PrivilegiosFrameworks de ExploitsShellcodeRed TeamingGeneración de ShellcodeDesarrollo de PayloadsExplotación de Binarios
GitHubblueisbeautiful/cve-2018-19323

CVE-2018-19323

Un framework de explotación para CVE-2018-19323 - Vulnerabilidad de escalada de privilegios GIGABYTE GDrv con soporte multiarquitectura e integración con framework

hace 11 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
Ver Repositorio

CVE-2018-19323: Framework de Explotación de GIGABYTE GDrv


Resumen

Este repositorio contiene un framework de explotación completo y avanzado para CVE-2018-19323, una vulnerabilidad crítica en el controlador gdrv.sys de GIGABYTE. Esta vulnerabilidad permite a usuarios no privilegiados leer y escribir Registros Específicos del Modelo (MSR) arbitrarios, lo que lleva a un compromiso total del Ring-0 (kernel) y una escalada de privilegios a NT AUTHORITY\SYSTEM.

El framework está diseñado para ser modular, robusto y rico en funciones, proporcionando una herramienta integral para la investigación de seguridad, operaciones de equipo rojo y análisis de vulnerabilidades.

Características Principales

  • Exploit de Kernel Completo: Logra la escalada de privilegios filtrando la dirección base del kernel a través del MSR IA32_LSTAR y ejecutando un shellcode de robo de tokens.
  • Soporte Multiarquitectura: Se adapta dinámicamente a las arquitecturas x86, x64 y ARM64, incluyendo shellcodes, estructuras y gadgets específicos de cada arquitectura.
  • Motor de Evasión Avanzado: Implementa una amplia gama de técnicas antianálisis, antivirtualización y antidetección para eludir las soluciones de seguridad modernas.
  • Sistema de Payloads Personalizado: Cuenta con un potente constructor de payloads para generar shellcodes personalizados (robo de token, shells inversas/enlazadas, etc.) con varias opciones de codificación (XOR, Shikata Ga Nai, Polimórfico).
  • Integración con Frameworks: Genera módulos y scripts listos para usar en frameworks C2 populares, incluyendo Metasploit, Cobalt Strike, Empire y Sliver.
  • Monitorización Integral: Incluye un sistema detallado de registro y monitoreo de rendimiento que genera informes JSON con puntuaciones de fiabilidad.
  • Diseño Modular: El código está organizado en módulos lógicos (core, payloads, evasion, monitor, multiarch, framework) para facilitar la extensión y el mantenimiento.

Estructura de Archivos

root@kitploit:~
.
├── exploit.py         # Framework de explotación principal y CLI
├── core.py            # Interacción central con el controlador y primitivas de exploit
├── payloads.py        # Generación de shellcodes, payloads personalizados y codificación
├── evasion.py         # Técnicas antivirtualización, antidetección y persistencia
├── monitor.py         # Registro, monitoreo de rendimiento e informes
├── multiarch.py       # Soporte multiarquitectura (x86/x64/ARM64)
├── framework.py       # Integración con Metasploit, Cobalt Strike, etc.
├── tests.py           # Pruebas unitarias, de integración y rendimiento exhaustivas
└── README.md          # Este archivo de documentación

Primeros Pasos

Requisitos

  • Sistema Operativo: Windows (probado en Windows 7, 10, 11)
  • Controlador Vulnerable: El controlador gdrv.sys debe estar presente en el sistema objetivo.
  • Python: Python 3.x
  • Dependencias: psutil, cryptography, requests
root@kitploit:~
# Instalar los paquetes Python requeridos
pip install psutil cryptography requests

Uso

El framework de explotación principal se ejecuta mediante exploit.py. Proporciona varias opciones de línea de comandos para diferentes modos operativos.

root@kitploit:~
# Mostrar ayuda y todas las opciones disponibles
python exploit.py --help

# Modo sigiloso por defecto (recomendado)
# Ejecuta todas las comprobaciones de evasión previas a la explotación.
python exploit.py

# Modo agresivo
# Omite las comprobaciones de evasión para una ejecución más rápida en entornos controlados.
python exploit.py --aggressive

# Modo depuración
# Proporciona registro detallado para desarrollo y análisis.
python exploit.py --debug

# Ejecutar el conjunto completo de pruebas
# Valida todos los componentes del framework sin ejecutar el exploit.
python exploit.py --test-only

Advertencia Legal

[!WARNING] Este software está destinado únicamente a fines educativos y de investigación de seguridad autorizados. El uso no autorizado en cualquier sistema es ilegal y está estrictamente prohibido. El autor, kali, no se hace responsable de ningún daño o mal uso de este framework.

Inmersión Técnica

Información de la Vulnerabilidad

  • ID CVE: CVE-2018-19323
  • Puntuación CVSS: 9.8 (Crítica)
  • Componente Afectado: Controlador GIGABYTE gdrv.sys
  • Impacto: Escalada de Privilegios Local a SYSTEM
  • Vector de Ataque: Requiere acceso local
  • Uso en el Mundo Real: Explotado por ransomware RobbinHood y grupos APT

Análisis de la Vulnerabilidad (CVE-2018-19323)

El controlador gdrv.sys expone un IOCTL 0xC3502580 que puede ser llamado por cualquier aplicación en modo usuario. Este IOCTL toma una estructura que contiene un tipo de operación (lectura/escritura), un índice de registro MSR y un valor. El controlador no realiza ninguna comprobación de control de acceso, lo que permite a cualquier proceso leer o escribir en cualquier MSR.

Esto es un fallo crítico porque los MSR controlan operaciones fundamentales de la CPU. Específicamente, el MSR IA32_LSTAR (en la dirección 0xC0000082) almacena la dirección del manejador de llamadas al sistema en el kernel. Al leer este MSR, podemos derrotar la Aleatorización del Espacio de Direcciones del Kernel (KASLR) y calcular la dirección base del kernel. Al escribirlo, podemos redirigir las llamadas al sistema a nuestro propio shellcode, logrando la ejecución de código arbitrario en Ring-0.

Cadena de Explotación

  1. Conectar al Controlador: El framework abre un manejador al dispositivo \\.\GIO.
  2. Filtrar la Base del Kernel: Lee el MSR IA32_LSTAR para obtener un puntero dentro del kernel, evitando KASLR.
  3. Inyección del Payload: Se prepara un shellcode de robo de tokens. Este shellcode está diseñado para encontrar la estructura EPROCESS del proceso actual, localizar la EPROCESS del proceso SYSTEM (PID 4) y copiar su token de seguridad a nuestro proceso.
  4. Secuestro del Flujo de Ejecución: La dirección del MSR IA32_LSTAR se sobrescribe con la dirección de nuestro shellcode.
  5. Desencadenar el Payload: Se desencadena una llamada al sistema, lo que hace que la CPU salte a nuestro shellcode en lugar del manejador legítimo del kernel.
  6. Escalada de Privilegios: El shellcode se ejecuta y nuestro proceso ahora tiene privilegios de NT AUTHORITY\SYSTEM.
  7. Limpieza: El valor original del MSR IA32_LSTAR se restaura para evitar la inestabilidad del sistema.

Características Adicionales Implementadas

  • Nuevos Vectores de Evasión: El módulo evasion.py incluye comprobaciones de número de núcleos de CPU, tamaño del disco, actividad reciente de archivos, programas instalados y detección avanzada de temporización/hooking para crear una huella ambiental más robusta.
  • Sistema de Payloads Personalizado: El módulo payloads.py permite la generación dinámica de varios payloads (shells inversas, Meterpreter, balizas de Cobalt Strike) para diferentes arquitecturas, con múltiples capas de codificación.
  • Soporte Multiarquitectura: El módulo multiarch.py proporciona una capa de abstracción integral para manejar las diferencias entre x86, x64 y ARM64, incluyendo tamaños de puntero, convenciones de llamada, estructuras del kernel y conjuntos de instrucciones.
  • Integración con Frameworks: El módulo framework.py puede generar módulos listos para usar para Metasploit (.rb), Cobalt Strike (.cna), Empire (.py) y Sliver (.go), automatizando el proceso de integración para operaciones de equipo rojo.

Pruebas

El framework incluye un conjunto completo de pruebas en tests.py. Puede ejecutar todas las pruebas para asegurar la integridad y funcionalidad de todos los componentes.

root@kitploit:~
# Ejecutar todas las pruebas unitarias, de integración y rendimiento
python tests.py --all

# Ejecutar solo las pruebas unitarias
python tests.py --unit

Este proyecto es una demostración de técnicas avanzadas de explotación y debe ser utilizado de forma responsable.

Descargar herramienta