
Source code of a multiple series of tutorials about the hypervisor. Available at: https://rayanfam.com/tutorials
Un tutorial sobre cómo crear un hipervisor desde cero
Todas las partes »
Parte 1
·
Parte 2
·
Parte 3
·
Parte 4
·
Parte 5
·
Parte 6
·
Parte 7
·
Parte 8
Si buscas usar un hipervisor para tareas de análisis e ingeniería inversa, echa un vistazo al depurador HyperDbg. Es un depurador basado en hipervisor diseñado específicamente para analizar, hacer fuzzing e ingeniería inversa de aplicaciones. Hay disponible un tutorial gratuito y completo sobre ingeniería inversa basada en hipervisores en el sitio web de OpenSecurityTraining2 (preferido) y en YouTube, que demuestra numerosos ejemplos prácticos sobre cómo utilizar hipervisores para la ingeniería inversa.
Aviso: El tutorial Hypervisor From Scratch fue revisado por completo en agosto de 2022. Se actualizaron los códigos de todas las partes, se eliminaron los detalles innecesarios y se añadieron nuevas explicaciones y materiales al tutorial.
Código fuente de una serie de tutoriales sobre el hipervisor.
Disponible en: https://rayanfam.com/tutorials
Parte 1 - Conceptos básicos y configuración del entorno de pruebas (https://rayanfam.com/topics/hypervisor-from-scratch-part-1)
Parte 2 - Entrando en la operación VMX (https://rayanfam.com/topics/hypervisor-from-scratch-part-2)
Parte 3 - Configurando nuestra primera máquina virtual (https://rayanfam.com/topics/hypervisor-from-scratch-part-3)
Parte 4 - Traducción de direcciones mediante Extended Page Table (EPT) (https://rayanfam.com/topics/hypervisor-from-scratch-part-4)
Parte 5 - Configurando VMCS y ejecutando código invitado (https://rayanfam.com/topics/hypervisor-from-scratch-part-5)
Parte 6 - Virtualizando un sistema ya en ejecución (https://rayanfam.com/topics/hypervisor-from-scratch-part-6)
Parte 7 - Usando EPT y las funciones de monitoreo a nivel de página (https://rayanfam.com/topics/hypervisor-from-scratch-part-7)
Parte 8 - ¡Cómo hacer magia con el hipervisor! (https://rayanfam.com/topics/hypervisor-from-scratch-part-8)
Nota: ten en cuenta que los hipervisores cambian con el tiempo porque se añaden nuevas funciones a los sistemas operativos o se utilizan nuevas tecnologías. Por ejemplo, las actualizaciones de Meltdown & Spectre han provocado muchos cambios en los hipervisores, así que si quieres usar Hypervisor From Scratch en tus proyectos, investigaciones o lo que sea, tienes que usar el controlador de las partes más recientes de esta serie de tutoriales, ya que este tutorial se actualiza activamente y los cambios se aplican a las partes más nuevas (las partes anteriores permanecen intactas), por lo que podrías encontrar errores y problemas de inestabilidad en las partes anteriores; asegúrate de usar las partes más recientes en proyectos del mundo real.
Para compilar este proyecto, tienes que usar el Windows Driver Kit (WDK): primero instala Visual Studio y luego el WDK. Después de eso, puedes compilarlo.
Todos los controladores se probaron tanto en máquina física como en la virtualización anidada de VMWare Workstation. A partir de la parte 8, se añadió soporte para Hyper-V, lo que significa que puedes probar la parte 8 y las partes más nuevas en máquina física, en la virtualización anidada de VMWare Workstation y en la virtualización anidada de Hyper-V.
Si quieres saber más sobre hipervisores, puedes visitar el repositorio awesome virtualization.
Esta serie está escrita por:
Un agradecimiento especial a estas personas por su ayuda y contribuciones:
Hypervisor From Scratch está licenciado bajo una licencia MIT.