
Agente de detección de inyección de memoria PoC basado en ETW, con fines de investigación ofensiva y defensiva
Este proyecto fue creado para investigar, construir y probar diferentes casos de uso de detección de inyección de memoria y técnicas de bypass. El agente utiliza el proveedor de seguimiento de eventos Microsoft-Windows-Threat-Intelligence, como una alternativa más moderna y estable al hooking en modo usuario, con el beneficio de la visibilidad en modo kernel.
El proyecto depende de la biblioteca microsoft/krabsetw para la configuración y consumo de ETS.
Una publicación de blog complementaria se puede encontrar aquí: https://blog.redbluepurple.io/windows-security-research/kernel-tracing-injection-detection

Las funciones de detección se pueden agregar fácilmente en DetectionLogic.cpp y llamarse desde detect_event(GenericEvent evt) para cualquier tipo de evento fuente. El soporte para nuevos campos de evento se puede agregar fácilmente añadiendo su nombre al mapa en la declaración de la clase GenericEvent.
Asumiendo que no tienes un certificado de firma confiable de Microsoft:
PD. Si no quieres escribir un controlador ELAM, puedes obtener uno de https://github.com/pathtofile/PPLRunner/tree/main/elam_driver
Agradecimientos especiales a @pathtofile por la publicación aquí: https://blog.tofile.dev/2020/12/16/elam.html