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
Kernel_VADInjector — Inyector de DLL para Windows 10 mediante driver que utiliza VAD y oculta el driver cargado | Kitploit
Herramientas/GitHubGitHub/lleon1435/kernel_vadinjector
Evasión de IDS/IPSShellcodePost-ExplotaciónRed TeamingDesarrollo de PayloadsAtaque Adversario
GitHublleon1435/kernel_vadinjector

Kernel_VADInjector

Inyector de DLL para Windows 10 mediante driver que utiliza VAD y oculta el driver cargado

Ver Repositorio
54124hace 2 añosRevisado por Kitploit

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

Driver DLL Injector

Driver DLL Injector Descripción

Driver DLL Injector es una herramienta potente que permite a los usuarios cargar los controladores de su elección utilizando su mapeador preferido. Aprovechando las capacidades de un cargador de controladores sin firmar, como KDmapper, este inyector fue construido y probado en procesos x64 de Windows 10 2004

Parte del Controlador:

El controlador engancha una función segura de PatchGuard conocida como xKdEnumerateDebuggingDevices para la comunicación con nuestro proceso de modo usuario. Este método es altamente detectado por los anti-trampas populares, así que vamos un paso más allá y atrapamos un hilo de modo usuario en el kernel para comunicarnos, restaurando la dirección de la función original y evadiendo así las comprobaciones de integridad de la función.

El controlador hace lo siguiente para ocultar los rastros que deja atrás:

  • Manipulación de VAD: El controlador asigna memoria estratégicamente detrás de la "pila del hilo" aprovechando funciones no documentadas del Descriptor de Direcciones Virtuales (VAD) como MiInsertChange y MiAllocVad, que no son ampliamente conocidas. Una vez que el VAD se asigna y la DLL se carga correctamente, el controlador elimina el VAD del árbol de VAD.

  • Manipulación de PTE: Para evadir las comprobaciones de NtQueryVirtualMemory, el controlador manipula las Entradas de Tabla de Páginas (PTE) para hacer ejecutables las páginas asignadas por el VAD. Al modificar las PTE, el controlador garantiza que el VAD no se actualice con el bit ejecutable (X) habilitado, eludiendo posibles restricciones.

  • Limpieza de PiDDBCacheTable, MmUnloadedDrivers (lista de cubos hash).

  • Dependiendo del mapeador manual que uses para el controlador, también tendrás que tener en cuenta los grandes pools.

Parte de Modo Usuario:

El proceso de modo usuario utiliza la superposición de Discord para llamar a la función main de nuestra DLL.

El proceso de modo usuario hace lo siguiente:

  • Se "enlaza" con la función del kernel interceptada, proporcionando todas nuestras direcciones y códigos de mensaje.
  • Escanea el proceso en busca de la superposición de Discord; si la encuentra, prepara el shellcode y asigna el VAD.
  • Prepara el shellcode para llamar a la función main de la DLL y luego
  • Una vez que la DLL se inyecta, el proceso de modo usuario envía un mensaje al controlador diciendo "¡Hemos terminado!" y el controlador limpia todos los rastros que quedan atrás.

Para usar Driver DLL Injector, sigue estos pasos:

root@kitploit:~
1. Elige e instala un mapeador compatible, como KDmapper.
2. Compila o construye el proyecto Driver DLL Injector.
3. Carga el controlador usando el mapeador seleccionado
4. Ejecuta la aplicación de prueba (con la superposición de Discord habilitada)
5. Ejecuta la aplicación de modo usuario y espera el cuadro de mensaje Hello World.

Vectores de Detección

  • Recorridos de tabla de páginas, recorridos de pila, etc.
  • WDF listará el controlador cargado porque no se limpia como MmUnLoadedDrivers
  • El hilo de modo usuario tendrá una cantidad increíble de tiempo de ciclos de CPU en el kernel; consulta el Administrador de tareas para ver "Tiempo de kernel"

Problemas Encontrados

Al hacer este proyecto, hubo varios obstáculos en el camino. Algunos de los siguientes fueron:

  • La DLL fallaba porque sus propiedades estaban configuradas incorrectamente. Establecer /sdl-, /GS- y la biblioteca en tiempo de ejecución en /MT solucionó mis problemas de bloqueos.
  • Mapear el controlador usando un mapeador provocaba una BSOD KMODE_EXCEPTION, lo cual se solucionó estableciendo la propiedad del controlador /GS-.
  • La superposición de Discord tarda en inicializarse; si intentas inyectar antes de que la superposición se inicialice, se producirá un bloqueo debido a punteros NULL.

Créditos

ModMap - por mostrar la manipulación de VAD

SkCrypt - por el cifrado

Stealthy Kernel Mode Injector - por la base del controlador

Poseidon - por atrapar un hilo de modo usuario en el kernel

FACE INJECTOR - por el shellcode

Descargar herramienta