Saltar al contenido

Obtener historial de comandos lanzados por CMD o Powershell en Windows Server

Obtener historial de comandos lanzados por CMD o Powershell en Windows Server

Cuando lanzamos un programa, el que sea, estamos lanzando “por debajo” un proceso que corre en segundo plano hasta que salimos del programa. Este proceso se identifica con su Process ID o PID.

Es importante mantener un tracking exhaustivo de los comandos lanzados por cualquier usuario que acceda a un servidor Windows, en según qué casos. La forma de hacerlo es sencilla, como podrás ver hoy.

Obtener historial de comandos usados en Windows Server consultando eventos

El evento 4688 documenta la creación de cada proceso, el usuario y contexto en que se ejecutó, el proceso el proceso que lanzó dicho proceso y, desde Windows Server 2016 en adelante, cualquier comando invocado a través de un intérprete como Símbolo de sistema o Powershell.

Podemos además correlar este tipo de evento contra otros eventos según el process ID para determinar qué hizo el programa durante su ejecución y cuando se detuvo (evento 4689)

Eso sí, ten en cuenta que bajo este método se registrarán todos los procesos de sistema y aplicaciones, así que tendremos mucho “ruido” de eventos inútiles que deberemos filtrar con alguna herramienta como Logbinder Supercharger, o bien buscando uno a uno con el visor de eventos de Windows.

Configuraciones para registrar los comandos lanzados con CMD o Powershell

Ajustes en Política de seguridad local

Accederemos al apartado Local Security Policy (en mi caso está en inglés) desde el Server Manager > Tools:

Política de seguridad local de Windows Server

Ahora, en Security Settings > Advanced Audit Policy Configuration, navegaremos desplegando subcategorías hasta llegar a Detailed Tracking. Seleccionaremos Audit process creation.

Estableceremos el ajuste en Success o Failure, dependiendo de si solo queremos registrar los comandos aceptados con éxito o cualquier intento de uso de comandos. Esto está soportado en Windows 7 y posteriores.

Aún nos falta la segunda parte, que consiste en acceder al Editor de Políticas de Grupo Local (gpedit.msc) y seleccionar estos ajustes:

Abriremos la ventana “ejecutar” o bien pulsaremos tecla WINDOWS + X, escribiendo después gpedit.msc seguido de INTRO.

Ahora navegaremos Computer Configuration > Administrative templates > System > Audit Process Creation. Finalmente marcaremos la opción correspondiente (Enabled/activado).

Este tipo de eventos como hemos dicho los podemos consumir desde el propio Visor de Eventos de Windows, filtrando en Windows Logs > Security > 4688.

Espero que os resulte de ayuda y ya sabéis, cualquier sugerencia o aporte será siempre bienvenido.

Alejandro Ver todo

Trabajo como consultor de ciberseguridad y me gusta lo que hago. Aficionado a la informática / tecnología en general, me gusta compartir con la gente lo poco que sé. También soy aficionado al deporte y los videojuegos.

Deja tu comentario (puedes hacerlo de forma anónima)

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios .

A %d blogueros les gusta esto: