VectorKernel
PoCs para investigación o educación en técnicas de rootkits en modo kernel.
Actualmente enfocado en el sistema operativo Windows.
Todos los módulos son compatibles solo con sistemas operativos de 64 bits de la familia x64.
Entorno
Todos los módulos se prueban en Windows 11 x64.
Para probar los controladores, se pueden usar las siguientes opciones en la máquina de prueba:
-
Habilitar la carga de controladores firmados de prueba
-
Configurar la depuración en modo kernel
Cada opción requiere deshabilitar el arranque seguro.
Módulos
La información detallada se encuentra en README.md en los directorios de cada proyecto.
Todos los módulos se prueban en Windows 11.
| Nombre del módulo | Descripción |
|---|
| BlockImageLoad | PoCs para bloquear la carga de controladores con el método de devolución de llamada de notificación de imagen de carga. |
| BlockNewProc | PoCs para bloquear nuevos procesos con el método de devolución de llamada de notificación de procesos. |
| CreateToken | PoCs para obtener un token SYSTEM con todos los privilegios usando la API ZwCreateToken(). |
| DropProcAccess | PoCs para eliminar el acceso al identificador de proceso con la devolución de llamada de notificación de objetos. |
| ElevateHandle | PoCs para elevar el acceso al identificador con el método DKOM. |
| FileDirHide | PoCs para ocultar archivos/directorios. |
| GetFullPrivs | PoCs para obtener todos los privilegios con el método DKOM. |
| GetKeyStroke | PoCs para registrar acciones del teclado con un controlador de kernel. |
| GetProcHandle | PoCs para obtener un identificador de proceso con acceso completo desde el modo kernel. |
| InjectLibrary | PoCs para realizar inyección de DLL con el método de inyección APC del kernel. |
| MemRead |
Tareas pendientes
Se agregarán más PoCs, especialmente sobre los siguientes temas:
- Devolución de llamada de notificación
- Mini-filtro del sistema de archivos
- Mini-filtro de red
Referencias recomendadas
-
Pavel Yosifovich, Windows Kernel Programming, 2nd Edition (Publicado de forma independiente, 2023)
-
Bruce Dang, Alexandre Gazet, Elias Bachaalany, and Sébastien Josse, Practical Reverse Engineering: x86, x64, ARM, Windows Kernel, Reversing Tools, and Obfuscation (Wiley Publishing, 2014)
-
Greg Hoglund, and Jamie Butler, Rootkits : Subverting the Windows Kernel (Addison-Wesley Professional, 2005)
-
Bill Blunden, The Rootkit Arsenal: Escape and Evasion in the Dark Corners of the System, 2nd Edition (Jones & Bartlett Learning, 2012)
-
Pavel Yosifovich, Mark E. Russinovich, Alex Ionescu, and David A. Solomon, Windows Internals, Part 1: System architecture, processes, threads, memory management, and more, 7th Edition (Microsoft Press, 2017)
-
Andrea Allievi, Mark E. Russinovich, Alex Ionescu, and David A. Solomon, Windows Internals, Part 2, 7th Edition (Microsoft Press, 2021)
-
Matt Hand, Evading EDR - The Definitive Guide to Defeating Endpoint Detection Systems (No Starch Press, 2023)