Glosario
CommandLineEventConsumer
El consumidor WMI estándar que inicia un proceso: CommandLineTemplate, ExecutablePath y WorkingDirectory, lanzado como SYSTEM cuando se dispara su filtro.
CommandLineEventConsumer es el consumidor de eventos WMI estándar que inicia un proceso cuando se dispara el filtro de eventos al que está enlazado. Las propiedades que importan son CommandLineTemplate (la línea de comandos completa), ExecutablePath (el programa, opcional si la plantilla ya lo indica) y WorkingDirectory; otras controlan la ventana, la prioridad del proceso y un KillTimeout. El proceso lo inicia el host de proveedores WMI, WmiPrvSE.exe, y se ejecuta como SYSTEM. La clase está definida en root\subscription y deriva de __EventConsumer.
Por qué importa en una investigación
Es el consumidor que más se ve en la persistencia WMI, porque ejecuta cualquier cosa: un binario depositado en una carpeta en la que los usuarios pueden escribir, un comando PowerShell codificado, mshta o rundll32 con una carga útil remota. Combinado con un disparador de arranque o de inicio de sesión, proporciona a un atacante ejecución de código como SYSTEM tras cada reinicio, sin clave Run, servicio ni tarea programada.
No todas las instancias son maliciosas. El BVTConsumer del propio Windows, presente en imágenes de la época de Windows 7, es un CommandLineEventConsumer que ejecutaría cscript KernCap.vbs desde C:\tools\kernrate; normalmente el script no existe, así que no se ejecuta nada. Juzgue cada consumidor por su contenido: el comando, las rutas, el filtro al que está enlazado y su CreatorSID. En el host, los procesos cuyo padre es WmiPrvSE.exe son la evidencia de ejecución correspondiente.
Ejemplo
El consumidor del ejemplo de WMI Parser (host ficticio FIN-WKS-07), escrito en MOF:
instance of CommandLineEventConsumer as $Cons
{
Name = "IntelPerfMonitor";
CommandLineTemplate = "C:\\ProgramData\\Intel\\m64.exe -svc";
};
Enlazado a un filtro que se dispara unos cuatro minutos después de cada arranque, inicia m64.exe como SYSTEM en cada reinicio. Una copia anterior del mismo consumidor, recuperada del espacio liberado, muestra que antes ejecutaba un comando PowerShell codificado.
Términos relacionados
- Consumidor de eventos (__EventConsumer)
- ActiveScriptEventConsumer
- __EventFilter
- __FilterToConsumerBinding
Cargue el ejemplo o su propio repositorio en WMI Parser para ver cada consumidor de línea de comandos con su enlace. Para distinguir los elementos predeterminados de Windows de los hallazgos reales, lea SCM Event Log Consumer y BVTConsumer.