Todos sabemos que es fundamental implementar medidas de seguridad diversas para reducir la probabilidad de que un atacante comprometa algún activo de la organización; sin embargo, a pesar de su importancia, la prevención no es suficiente ya que nunca se puede eliminar ese riesgo al cien por ciento y por lo tanto, es importante tener la capacidad de detectar y responder a un incidente de seguridad lo antes posible.

Una de las medidas necesarias de detección y respuesta, es la auditoría de procesos, la cual consiste en generar un registro de los procesos que se ejecutan en una computadora y de sus propiedades, como lo son la ruta completa, el identificador de proceso (PID), el identificador de proceso padre (PPID), los valores hash del programa, la línea de comando completa, entre otros. Esta información resulta muy valiosa en caso de que se requiera realizar una investigación de seguridad en las computadoras para determinar qué acciones ocurrieron en ese equipo en un periodo determinado. 

Existen algunas soluciones de endpoint conocidas como EDR que proporcionan capacidades de respuesta y detección de incidentes, las cuales pueden auditar la ejecución de procesos, las conexiones de red, así como muchas otras funciones como, por ejemplo, gestión desde una consola centralizada, aislar a un equipo sospechoso de la red o incluso volcar y analizar la memoria RAM de algún equipo. Estas soluciones son muy útiles y recomendables, sin embargo, el hecho de no contar con una de estas tecnologías no es una excusa para no auditar al menos los procesos, ya que hay varias herramientas disponibles de forma gratuita, que si bien no tienen todas las capacidades de un EDR, al menos llevan un registro de los procesos, el cual puede ser analizado posteriormente en caso de ser necesario.

Una de las herramientas disponibles de forma gratuita para auditar procesos es Sysmon, desarrollada por Mark Russinovich y Thomas Garnier de Microsoft, esta forma parte de la suite de herramientas SysInternals y crea un log de auditoría de los procesos de Windows. En este artículo se explicará cómo instalar, configurar y utilizar esta útil herramienta.

Dependiendo del nivel de madurez de una organización es posible combinar la auditoría de seguridad de Sysmon con otras tecnologías de seguridad como SIEM, a fin de pasar de investigaciones post-mortem a protección en tiempo real. Las fases de madurez en auditoría de procesos se listan a continuación:

Fase 0, esta es desgraciadamente la fase más común y es cuando en la organización no se tiene ningún registro de auditoría de procesos habilitada.

Fase 1, en esta fase se tiene habilitada la auditoría de procesos localmente en cada equipo. Esto se puede realizar con Sysmon, la auditoría de procesos de Microsoft o bien, con una solución de terceros. Se caracteriza por generar el registro de manera local, pero tiene la desventaja de que en caso de que el atacante logre los privilegios suficientes, pueda eliminar el log. Adicionalmente, la información no puede ser explotada en tiempo real, sino que sólo se almacena y queda disponible para una investigación post-mortem en caso de que el ataque no elimine el log.

Fase 2, la información es enviada a un repositorio central, de forma que incluso si un atacante logra privilegios de administrador en el equipo vulnerado, no pueda eliminar el registro de procesos, ya que éste se encuentra en otro equipo de la red en el que el atacante no tiene autorización. En esta fase este servidor únicamente se ocupa como repositorio, y no para procesamiento y análisis en tiempo real.

Fase 3, la información de procesos del servidor central se analiza contra un set de reglas de seguridad en busca de anomalías en tiempo real y se generan las alertas correspondientes. Esto se puede implementar al enviar el log de eventos de Sysmon a un SIEM y configurar las reglas de alertamiento correspondientes.

A pesar de que varias tecnologías EDR proporcionan un mecanismo robusto de auditoría de procesos, muchas organizaciones no cuentan con dichas tecnologías, sin embargo, esto no es pretexto para no habilitar al menos el monitoreo de procesos en la fase 1.

En este artículo veremos cómo usar la herramienta Sysmon para la auditoría de procesos y otros eventos del sistema. Microsoft proporciona esta herramienta de forma gratuita como parte de la suite de utilidades SysInternals. Además de auditar procesos del sistema, esta herramienta es capaz de auditar también conexiones de red generadas en el equipo y otras propiedades útiles como valores hash, línea de comandos, así como la información del proceso padre que generó cada proceso.

La herramienta Sysmon permite implementar una configuración de auditoría personalizada que se puede hacer muy granular y específica para cada ambiente a proteger, sin embargo, inicialmente es posible que no contemos con la información necesaria para implementar esta política, por lo que como fase 1, se ocupará una configuración genérica.

 

 Instalación

Descargar Sysmon desde el sitio de Internet https://download.sysinternals.com/files/Sysmon.zip

En primer lugar hay que decidir las opciones de instalación. Se recomienda como mínimo auditar los procesos, conexiones de red y registrar los hashes md5, sha1, sha256 e imphash. Para hacerlo, ejecutar desde una terminal el siguiente comando:

Sysmon.exe -i -n -h sha256,md5,sha1,imphash

A continuación, se explican los parámetros de instalación utilizados:

-n Registra conexiones de red

-h Registra los valores hash SHA256, md5, sha1 e imphash

David Bernal - Fig. 1

Sysmon no sólo puede auditar la creación de procesos, sino también eventos adicionales como conexiones de red, creación de archivos y ciertos tipos de inyección de código, entre otros. Una de las ventajas de Sysmon es que el archivo de log de eventos generado no va a superar el tamaño definido para este tipo de archivo, y en caso de que se generen muchos eventos, simplemente se va a reemplazar la información antigua con la más reciente. En caso de que se desee incrementar el tamaño del log de eventos de Sysmon a 200 MB, se puede ejecutar el siguiente comando:

wevtutil sl Microsoft-Windows-Sysmon/Operational /ms:209715200

David Bernal - Fig. 2

Sysmon se habilita automáticamente después de instalarse, instala un driver, crea un servicio y genera el log de auditoría disponible en el visor de eventos del sistema operativo Windows, al cual se puede acceder desde la ruta: Registros de aplicaciones y servicios, Microsoft, Windows, Sysmon, Operational.

David Bernal - Fig. 3

Al abrir un registro del log se pueden observar todos los atributos, para ejemplificar esto, a continuación se muestra el registro generado al ejecutar notepad.exe:

David Bernal - Fig. 4 

 

Desinstalación

En caso de que por algún motivo se desee desinstalar Sysmon, basta con ejecutarlo con el parámetro -u. Esto elimina el servicio del sistema y la entrada Sysmon del log de eventos, pero deja el archivo del log de eventos en la carpeta C:\Windows\System32\winevt\Logs. Esto es útil ya que en caso de que se desee reinstalar o actualizar, la información registrada anteriormente seguirá disponible.

C:\Windows\Sysmon64.exe -u

David Bernal - Fig. 5

 

 

Cambio de configuración de Sysmon

Si se desea cambiar un parámetro de configuración, por ejemplo dejar de registrar conexiones de red, simplemente se debe ejecutar el mismo comando pero sustituyendo la bandera -i con la bandera -c y las nuevas opciones de configuración. En el siguiente ejemplo se muestra cómo deshabilitar las conexiones de red:

Sysmon64.exe -c -h sha256,md5,sha1,imphash

David Bernal - Fig. 6

En este caso, se instaló Sysmon con una configuración genérica, pero para crear una auditoría personalizada para cada organización, se recomienda revisar los eventos registrados por Sysmon durante cierto tiempo (por ejemplo una semana), para después identificar los procesos creados como resultado de la actividad normal del sistema operativo o de los aplicativos base de la organización. Este proceso de puesta a punto requiere un conocimiento profundo del sistema operativo y del ambiente a proteger, con el propósito de deshabilitar la auditoría de los procesos que corresponden a actividad válida y definir condiciones específicas de auditoría. Así mismo, es necesario revisar este archivo periódicamente para aplicar mejoras y ajustarlo a medida que el ambiente de la organización cambie. En el siguiente artículo mostraremos cómo crear un archivo personalizado de auditoría de Sysmon.

[email protected] 

 

Referencias:

https://technet.microsoft.com/en-us/sysinternals/sysmon

https://blogs.technet.microsoft.com/motiba/2016/10/18/sysinternals-sysmon-unleashed/