Windows vs Sysmon


En la última conferencia de ZeroNights, en el curso de una comunicación informal con nuestros colegas en el sistema de monitoreo, nos hicieron una pregunta simple a primera vista: se creía ampliamente que Sysmon debería usarse para monitorear completamente el punto final con el sistema operativo Windows, ¿es así? Y si es así, ¿por qué razones específicas (hola Seryozha!)? No pudimos encontrar una respuesta integral inequívoca en nuestro bagaje de conocimientos o una comparación correspondiente en Internet, por lo tanto, en primer lugar, para nosotros mismos, y no menos importante, de modo que en el futuro dicha fuente aún estaría disponible en la comunidad, decidimos explorar este tema y compare los eventos cara a cara de Windows y Sysmon. Como dice el refrán, "1 ... 2 ... 3 ... ¡Lucha!".


Introducción


Cualquier especialista en el campo de la seguridad de la información se ve obligado a trabajar dentro de un determinado marco. Por ejemplo, dentro de un presupuesto limitado, la seguridad, con raras excepciones, no es la forma principal para que una organización obtenga ganancias o realice otras funciones dentro de su negocio principal. Por lo tanto, en condiciones de recursos limitados que posee la organización, solo una pequeña parte de ellos a menudo se asigna al sector de seguridad para mantener esta dirección al nivel mínimo suficiente (de acuerdo con ciertos requisitos). Incluso con recursos ilimitados, siempre habrá otras restricciones que no permitirán llevar el nivel de seguridad al absoluto. Estas son las notorias vulnerabilidades del día cero o normal (administración de parches sin fin), y la carrera armamentista constante de piratas informáticos y guardias de seguridad,y el dinamismo del desarrollo de la infraestructura de TI, y mucho, mucho más.

En este sentido, más que nunca, la cuestión de priorizar los medios y métodos de protección es urgente, incluso en la dirección del monitoreo. En esta área, según las estadísticas basadas en los datos de la matriz MITER ATT & CK , sobre la que ya escribimos la última vez, las prioridades son las siguientes: una fuente de eventos de seguridad como puntos finales toma el primer lugar incondicional .


Esta fuente lidera la cantidad de técnicas matriciales que pueden identificarse en función de los eventos registrados en ella. El sistema operativo más común para puntos finales sigue siendo Microsoft Windows. Recopilar exactamente sus registros en la mayoría de las infraestructuras corporativas dará el mejor resultado en la relación de todos los tipos de costos a la cobertura de dispositivos de red y la cobertura de técnicas maliciosas. Esto es confirmado por las estadísticas de los mismos autores. Los lugares 1-3, 5, 7, 8, 10 y la parte 4 ocupan solo estos llamados eventos básicos.


Pero, como en el famoso chiste, hay una advertencia. En los últimos años, se ha aceptado ampliamente que los registros de Windows deben complementarse, si no reemplazarse, con eventos Sysmon; dicen que son más completos, mejores y más adaptados como herramienta de monitoreo desde el punto de vista de la seguridad de la información.

Además, este enfoque de alguna manera cumple con el concepto de minimalismo. Cada producto de software que está tratando de agregar a los suyos o que un cliente empresarial le haya dado voluntariamente es un aumento en el área de ataque, los costos de administración y actualización, y los puntos de falla. Y a menudo, y justo antes de la implementación de su sistema de monitoreo, mientras su enfoque pasa la aprobación.

Sysmon fue desarrollado por especialistas de Microsoft, y recientemente absorbido por esta corporación, que brinda cierto nivel de confianza por parte de TI. Además, los registros se escriben en forma de un registro .evtx, que le permite recopilarlos y procesarlos utilizando las mismas herramientas y métodos que los registros normales de Windows.

Inmediatamente haga una reserva de que el artículo resultó ser grande, aunque intentamos duplicar y comprimir el material mínimamente. El lector, por supuesto, puede decir, refiriéndonos a esa broma sobre Lenin: "Pero él podría haber cortado ...". O que "la publicación podría dividirse en dos o tres partes para una mayor legibilidad". Pero nos pareció que, a pesar del volumen del material preparado, debemos proporcionar una respuesta completa a la pregunta de nuestros colegas en la tienda, y la búsqueda sería más conveniente. Por lo tanto, para no perder nada, le recomendamos que lea el artículo 1 por completo, tal vez tome notas por sí mismo y solo luego regrese a grupos específicos de eventos y profundice en ellos en detalle.

Para mayor comodidad, agregamos una tabla de contenido:
Introducción
Tabla de contenido
Formato de comparación
Creación de un proceso
Conexiones de red
Finalización de un proceso
Descarga de un controlador
Acceso a un proceso
Creación de un archivo
Acciones de registro
Configuración de WMI Consultas
DNS
Eventos únicos de Sysmon Eventos de
filtrado
Otros proveedores de eventos base gratuitos
Salida general

Formato de comparación


Por qué y qué se comparó, parece estar claro. ¿Y cómo se hizo esto y por qué exactamente?

Decidimos hacer una comparación en forma de tabla para cada uno de los grupos de eventos que reflejan una determinada actividad en el sistema. Por ejemplo, los eventos con ID (ID de evento, EID) 12, 13 y 14 en Sysmon, que reflejan la actividad con el registro, ni siquiera se filtran por separado, aunque hablan de diferentes acciones atómicas. Por la misma lógica, se hizo el resto de la agrupación.

Dichos grupos incluyeron solo eventos similares. Por ejemplo, un análogo del evento Sysmon EID 6 es el evento Windows EID 6. Al mismo tiempo, hay al menos 219 y 7036 eventos de Windows sobre la carga de controladores. Pero surgen en caso de falla. Aquellos. no lleve la misma carga semántica y, si es necesario, puede complementar los eventos de Sysmon o Windows, según lo que hayamos decidido recopilar.

Para los grupos de eventos reflejados en la tabla, los campos informativos (que utilizamos para fines de monitoreo) contenidos en los eventos se presentan en forma de cadenas. Para cada uno de estos campos, se indica su nombre. Para Windows, son posibles 2 opciones, para xml y vistas de revistas (¿quién hubiera pensado que coincidirían?) Si difieren más que por espacios. Esto se hace porque El nombre del campo que se incluirá en el sistema de monitoreo puede depender del método de recolección. Las líneas también contienen datos de eventos (para comprender su formato) y un comentario (si en nuestra opinión esto es obligatorio).

Los campos con la misma carga semántica para ambas fuentes se combinan en una línea. En ausencia de un campo con la misma carga semántica para una de las fuentes, los guiones ("-") se indican en los campos correspondientes.

Las líneas que contienen información sobre una entidad particular, por ejemplo, el sujeto que realiza la acción, se combinan en un grupo semántico.

La comparación se realizó para las versiones de Windows Kernel 6.3 (Windows 2012R2) y 10.0 (Windows 10, 2016, 2019). No se consideraron versiones anteriores, ya que aunque todavía están muy extendidas, están desapareciendo gradualmente. Si los eventos para diferentes versiones de kernel no diferían, las columnas se combinaron en una para reducir la duplicación.

Como la tasa es a tiempo completo, las columnas se organizan en el siguiente orden desde el centro hasta los bordes: datos, nombre del campo, comentario. Esto hace que la comparación sea más visual. Para la separación visual de las columnas de acuerdo con las fuentes a las que se refieren, se utilizan colores.

Exclusivo de Sysmon EID (dado que en este caso es una herramienta adicional, el registro del sistema operativo se incluye en la funcionalidad básica del sistema operativo) se proporciona en una sección separada.

La sección con la tabla muestra la configuración de GPO que se debe realizar para habilitar la grabación en el registro de eventos del grupo, como El número de posibles opciones de auditoría es generalmente bastante grande. Para Sysmon, tales configuraciones no se muestran porque Todos ellos están contenidos en un único archivo de configuración.

Proceso de creación


Paradójicamente, decidieron comenzar desde el principio. Y luego tampoco fueron originales y se pusieron en orden, al aumentar EID Sysmon.

El registro de datos de eventos en Windows se habilita de la siguiente manera:

• Configuración del equipo - Políticas - Configuración de Windows - Configuración de seguridad - Configuración avanzada de políticas de auditoría - Políticas de auditoría - Seguimiento detallado - Creación del proceso de auditoría - El éxito permite el registro del evento en sí;

• Configuración de la computadora - Políticas - Plantillas administrativas - Sistema - Creación del proceso de auditoría - Incluir línea de comando en eventos de creación de proceso - agrega la línea de comando del proceso iniciado al evento, lo que a menudo hace posible distinguir un inicio legítimo de uno ilegítimo.

La comparación en el formato descrito anteriormente se presenta en la siguiente tabla.


En lo sucesivo, todas las tablas están representadas por imágenes y se puede hacer clic en ellas. Dado que, en primer lugar, no encontramos una buena manera de transferir tablas a Markdown o HTML mientras conservamos el ancho de columna o la separación silábica de acuerdo con la versión existente en Excel. Y en segundo lugar, sus contenidos no son muy valiosos para la indexación, excepto los comentarios. Mucho más valioso en las tablas es la composición de los campos discutidos en este artículo y el formato de datos con el que tendrá que trabajar si se utilizan estos orígenes de eventos.

Considérelo en orden, pero no línea por línea: cada uno hará un análisis tan detallado por sí mismo. En esta sección y a continuación, nos detendremos solo en la información encontrada por primera vez. Inmediatamente comience con un ejemplo de este comportamiento. Los campos de la sección Sistema están presentes en cada evento que cae en el registro, independientemente de la fuente: Sysmon o Windows. Incluyen información general:

  • El nombre del proveedor del evento.
  • EID
  • La hora en que se registró el evento.
  • El nombre de la revista de donde obtuvimos este evento.
  • El host en el que ocurrió el evento.

El nombre del proveedor y el registro después de la conexión generalmente no son utilizados por el analista. Pero permiten comprender dónde y quién escribe los registros, lo cual es importante si el proceso de recopilación aún no ha comenzado. El tiempo, el host y el EID son las principales balizas mediante las cuales se realiza el filtrado primario de eventos.

Además, entre los campos que me gustaría destacar, el GUID para la sesión del usuario y los procesos hijo y padre solo existe en los registros de Sysmon. Y para la misma alcancía, por rarezas: el ID del proceso (nuevo y principal) en los eventos de Windows se escribe en hexadecimal, aunque se muestra en notación decimal en el mismo Administrador de tareas. Como dice el refrán, feliz depuración ("-¿Quieres mejorar? -Github") ...

La línea de comando al iniciar un proceso en eventos de Windows tiene un formato diferente dependiendo de la utilidad utilizada para iniciarlo. Pero en Sysmon, los autores querían y podían: el formato no depende de otra entrada. No voy a juzgar las razones, pero los creadores del contenido de SIEM no escribirán gracias a Microsoft sobre esto, eso es seguro.

La principal característica distintiva de Sysmon para esto, así como para otros eventos que contienen este campo, llamaría el hash del archivo ejecutable. El formato hash se selecciona en la configuración de Sysmon.

De nuevo, de los bonos adicionales interesantes de Sysmon: el campo Nombre de la regla. Esta es, de hecho, una etiqueta que es conveniente para marcar ciertos filtros en el archivo de configuración y luego usarla al analizar eventos. Por ejemplo, podemos decir que el proceso de inicio X se refiere a las tácticas Y o la técnica Z. Este enfoque es interesante tanto desde el punto de vista del analista como desde el punto de vista del desarrollador de contenido SIEM o Sysmon: nos permite comprender la razón por la que decidimos recopilar este evento.

Conclusión


Sysmon es mucho mejor para arreglar este grupo de eventos:

  • GUID , , , , ID ( ). , , . . ID , , SIEM, . GUID, — .
  • — — , , . — Sysmon , SIEM ( ). - — , . , SIEM . , , IBM QRadar. , - . , , — Windows , , .
  • Rule Name .
  • La aplicabilidad de los campos únicos restantes, que en los eventos de Windows, que en los eventos de Sysmon, juega un papel, como se dice en inglés, caso por caso. Por lo tanto, para decidir la elección de un registro particular, o en general combinarlos, también es necesario caso por caso.

Conexiones de red


Grabación de estos eventos en Windows: Configuración del equipo - Políticas - Configuración de Windows - Configuración de seguridad - Configuración de política de auditoría avanzada - Políticas de auditoría - Acceso a objetos - Conexión de plataforma de filtrado de auditoría

¿Por qué decidió centrarse en los eventos de la Plataforma de filtrado de Windows (WFP) y no en el Firewall de Windows? La respuesta es simple. Según nuestra práctica, los puntos finales en forma de antivirus ya están en los hosts de todos modos. Aunque no están diseñados para monitorear los eventos básicos del sistema (por lo que no son adecuados para nuestros propósitos), sin embargo, en las realidades modernas, siempre incluyen un firewall host. Por esta razón, para evitar la duplicación, el Firewall de Windows generalmente simplemente se cancela. En consecuencia, nadie escribe al coronel ... Sin embargo, el PMA, aunque puede filtrar el tráfico, lo usamos solo para monitoreo. Por lo tanto, la duplicación está ausente.


La tabla muestra que si intentamos confiar en los eventos de Windows, entonces el ultrasonido del usuario y el FQDN de los hosts que interactúan tendrán que ser restaurados por enriquecimiento de eventos. Sin embargo, si lo piensa, es más importante para nosotros saber qué proceso ha establecido la conexión y no qué usuario. Por ejemplo, el malware va a su centro de C&C. De todos modos, queremos saber quién inició el proceso o crear un incidente en base al entendimiento de que el bloc de notas no va a Internet en sí (es decir, en función de la información disponible en el evento).

Y con FQDN es aún más simple: todos los sistemas modernos incluyen el componente CMDB como una funcionalidad básica o adicional. Y si no, definitivamente vale la pena abastecerse de una solución de terceros. Conocer su infraestructura es la base de la seguridad de la información en general. Por lo tanto, la información está disponible mediante enriquecimiento o mediante una tarjeta de activos, que permitirá su uso en correlación. Lo principal es, si es posible, no olvidar conectar los registros de DHCP para que la información esté actualizada.

Todos los demás campos únicos no son tan significativos, por ejemplo:

  • Puertos famosos No confiaríamos en este campo: no es en vano que haya medios para detectar anomalías en el tráfico cuando, por ejemplo, el túnel ssh pasa por el puerto 80 en lugar de HTTP.
  • Dirección del tráfico. Conociendo la ID del host (IP o FQDN) y la fuente \ destino de la conexión, puede calcular fácilmente la dirección.

Conclusión


Y en este caso, Sysmon gana, pero de manera menos significativa: GUID, FQDN, el usuario proporciona una conveniencia que es bastante posible de lograr utilizando SIEM o soluciones de terceros. Sin embargo, pequeños esfuerzos no significan cero.

Proceso de finalización


En general, el evento, como ya se mencionó anteriormente, no se usa con mucha frecuencia, pero ...


Si es necesario, entonces hay una clara victoria del lado de Windows. Agregamos solo cómo habilitar el registro y vamos directamente a las conclusiones.

Configuración del equipo - Políticas - Configuración de Windows - Configuración de seguridad - Configuración avanzada de la política de auditoría - Políticas de auditoría - Seguimiento detallado - Terminación del proceso de auditoría - Éxito

Conclusión


En este caso, la ventaja del registro nativo del sistema operativo se logra mediante:

  • Muestra el usuario que completó el proceso.
  • La presencia del código de salida, que puede hablar sobre la finalización regular del proceso, así como los errores.

Descarga de controlador


Este evento de Windows, a diferencia de los otros, está habilitado de forma predeterminada y se introduce en el registro del sistema. No hay muchos campos informativos en estos eventos.


Y de nuevo, inmediatamente a las conclusiones.

Conclusión


En este grupo, los eventos de Sysmon proporcionan al analista información mucho más útil. Por ejemplo, según los eventos de Windows, ni siquiera está claro qué archivo de controlador se utilizó. Por lo tanto, en este grupo de Windows en personas externas explícitas.

Acceso al proceso


No clasificaríamos este grupo de eventos como básico, sino como un nivel ligeramente avanzado. Desde el punto de vista de la seguridad, el evento puede ser de gran interés. Hay muchas formas en que un proceso malicioso puede hacer que su legítimo "mejor". Por supuesto, no por el altruismo, sino por acciones maliciosas. Y los eventos bajo consideración solo nos ayudarán a descubrir muchas opciones para tal creatividad. Estos registros están habilitados en Configuración del equipo - Políticas - Configuración de Windows - Configuración de seguridad - Configuración avanzada de la política de auditoría - Políticas de auditoría - Acceso a objetos - Objeto del núcleo de auditoría - Éxito


Windows tiene dos ventajas. En primer lugar, la asignación del usuario a partir del cual está trabajando el proceso de origen. Como señalamos anteriormente, la ventaja suele ser insignificante. Y, en segundo lugar, HandleID y derechos de acceso.

Si el interés en los derechos de acceso es claro, HandleID solo es útil para buscar eventos relacionados. Es necesario para organizar la interacción del usuario a través de procesos con objetos del sistema operativo: los mismos procesos (sus hilos), archivos, etc. En consecuencia, los eventos adicionales pueden mostrar cómo, como resultado, a quién se emitió y cuándo se revocó el identificador requerido para el acceso.

Al tocar el tema de los objetos y manejarlos por primera vez, así como registrar acciones con ellos, es importante tener en cuenta dos cosas.

Primero, para registrar los pasos adicionales anteriores, es importante habilitar configuraciones de políticas de auditoría adicionales, en particular Configuración del equipo - Políticas - Configuración de Windows - Configuración de seguridad - Configuración avanzada de la política de auditoría - Políticas de auditoría - Acceso a objetos - Manipulación del controlador de auditoría - Éxito. Vale la pena recordar que el volumen de estos eventos puede ser muy grande. El mango se emite al recibir una solicitud, respectivamente, refleja los derechos reclamados. Pero, ¿por qué no podemos esperar el mismo volumen de eventos directamente de la auditoría de acceso a objetos?

Esto se debe a que, en segundo lugar, es necesario habilitar SACL en el objeto que se planea controlar. De hecho, esta es una lista similar a la lista de derechos de acceso DACL, que determina si el sujeto u objeto creado con su token recibirá éxito o falla cuando intente acceder al objeto. Pero la SACL determina aproximadamente la misma forma, no los derechos para interactuar con el objeto, sino si se generarán eventos de seguridad al solicitar y ejercer ciertos derechos. Estos eventos incluirán los derechos de acceso no solicitados, pero en realidad utilizados.

Como resultado, obtenemos un filtro que le permite registrar solo el acceso a los objetos que son críticos para nosotros y solo aquellos tipos de acceso que son importantes para nosotros. Pero a cambio, debemos adjuntar una SACL directamente a cada objeto o indicar que la SACL se hereda del objeto padre. Por supuesto, esto puede ser automatizado por varios métodos. Pero mantener la configuración de tales herramientas de automatización es poco probable que sea conveniente. A diferencia de una simple lista de Sysmon, que también puede incluir comodines, aunque sean peculiares. Hablaremos sobre el filtrado en Sysmon en una sección separada.

Afortunadamente, para los objetos de tipo, ya existe un proceso SACL por defecto para la versión del núcleo 6.3 y superior. Si alguien puede especificar una forma de recibir este SACL (recomendaciones de este artículono pudimos cumplir), será interesante escuchar / discutir.

En el lado de Sysmon, además de los GUID y los nombres de reglas ya discutidos, hay varios campos más interesantes. Primero, el PID del proceso objetivo. Le permitirá monitorear la actividad posterior del objeto infectado, porque puede haber varias instancias desde un archivo ejecutable. En segundo lugar, el campo CallTrace, que captura las acciones del origen del evento en el destino. Mira esto y date cuenta de que "juego de manos y sin fraude" no son solo palabras. Por otro lado, un análisis tan detallado ya es el destino de los forenses. Y quien tenga un forense dedicado probablemente no esté al comienzo del camino para construir un sistema de monitoreo.

Conclusión


En este grupo, los eventos difieren en un número bastante grande de campos. Pero si en los eventos de Windows esta información probablemente proporciona la conveniencia del análisis inicial, entonces Sysmon captura datos únicos que son difíciles de obtener de cualquier otra manera. Por lo tanto, la ventaja permanece con Sysmon.

Creación de archivos


Esta categoría se incluye en Windows de la siguiente manera: Configuración de la computadora - Políticas - Configuración de Windows - Configuración de seguridad - Configuración avanzada de la política de auditoría - Políticas de auditoría - Acceso a objetos - Sistema de archivos de auditoría - Éxito


Como se puede ver en la tabla, todos los pros y los contras de este grupo son similares a los ya descritos anteriormente. Incluyendo los pros y los contras de SACL (para archivos y carpetas para todos los usuarios (Todos), incluye Propiedades - Seguridad - Avanzado - Auditoría - Agregar - Todos - Éxito - Escribir (para archivos) o Modificar (para un directorio)).

También puede configurar SACL en archivos de forma global definiéndolo en Configuración del equipo - Políticas - Configuración de Windows - Configuración de seguridad - Configuración avanzada de políticas de auditoría - Políticas de auditoría - Acceso a objetos - Auditoría de acceso a objetos global - Sistema de archivos. Pero el número de eventos, especialmente con archivos temporales, aumentará en proporción al volumen de operaciones. No diría que este es un enfoque efectivo, solo es posible para una pequeña parte de las operaciones.

Me gustaría señalar las rarezas de registro que comienzan aquí. Para este grupo no es fijo sucesos de Windows cuando se crea un archivo a través de Powershell, por ejemplo, el New-Item el directorio C: \ ForTest \ test.t . Al mismo tiempo, la misma acción se muestra perfectamente en los registros de Sysmon.

Conclusión


Este grupo de eventos se registra mejor con Sysmon.

Acciones de registro


Hasta ahora, hablando del grupo, hemos incluido solo un evento en él. Esta tendencia cambiará aquí.


El registro de estos eventos se configura de la siguiente manera: Configuración de la computadora - Polcies - Configuración de Windows - Configuración de seguridad - Configuración avanzada de la política de auditoría - Políticas de auditoría - Acceso a objetos - Registro de auditoría - Éxito.

La SACL para todos los usuarios (Todos) se define de la siguiente manera: regedit.exe - rama de registro - Permisos - Avanzado - Auditoría - Todos - Éxito - Permisos avanzados - Control total o establecer valor, Crear subclave, Crear enlace, Eliminar, Escribir DAC.

También puede configurar SACL en archivos de forma global definiéndolo en Configuración del equipo - Políticas - Configuración de Windows - Configuración de seguridad - Configuración avanzada de políticas de auditoría - Políticas de auditoría - Acceso a objetos - Auditoría de acceso a objetos global - Registro. Los contras del enfoque son similares a las mismas operaciones de archivo.

Inmediatamente enfóquese en las limitaciones. Para Sysmon, todas las operaciones (crear, modificar, eliminar) con valor o eventos de aumento de clave (excepto el cambio de nombre del valor). Para ventanas:

  • Todas las operaciones con eventos de aumento de valor.
  • Crear una clave no genera eventos.
  • Cambiar el nombre de la clave solo genera el evento Access; no se muestra el nuevo nombre de la clave; los derechos solicitados especificados en el evento no tienen una correspondencia intuitiva inequívoca con la operación. Por lo tanto, la operación de cambio de nombre solo se puede determinar mediante el método de excepción: no hay un evento de eliminación 4660 con este HandleID.
  • La eliminación de la clave provoca el evento 4663 seguido de 4660.

Además de los campos discutidos en las secciones anteriores, es importante tener en cuenta que los eventos de Windows contienen datos antiguos y nuevos de nombres y valores de clave y valor, que durante la investigación pueden ayudar a comprender el motivo del atacante. Especialmente si los valores iniciales no son estándar o típicos, y la configuración, incluidos los datos de registro de la máquina bajo investigación, no se almacena en ningún lugar fuera del host.

Conclusión


Como podemos ver, existen restricciones más estrictas en el registro de Windows. Y para corregir algunos hechos, se necesita una "correlación", aunque sea la más simple. Sin embargo, puede proporcionar una mayor cantidad de información realmente útil. Es difícil dar preferencia a uno de los participantes para este grupo de eventos.

Configuración de WMI


Pasamos al penúltimo grupo de eventos. Estos son eventos de WMI. Un atacante puede crear un filtro (filtro) que recibe cualquier evento sobre un cambio en el estado del sistema, en nuestro ejemplo, un cambio en el estado de un servicio. Y para llevar a cabo ciertas acciones basadas en los eventos recibidos de este filtro, creando un consumidor. En nuestro caso, esta es una entrada en el archivo de registro. A continuación, debe conectar la salida del filtro a la entrada del consumidor, creando un enlace entre el filtro y el consumidor. Resultará un sistema que funciona bajo condiciones dadas. A menudo se usa para tácticas de persistencia . Es precisamente en el orden descrito que se registran los eventos 19-21 Sysmon.

Es importante comprender que crear un filtro o consumidor en sí mismo no representa una amenaza, pero, por supuesto, puede ser parte de un ataque. Además, para actividades maliciosas, se puede utilizar un filtro existente, un consumidor o ambos. Aquí es como con un cuchillo o, más cerca del tema del recurso, con mensajeros cifrados. La pregunta no está en la herramienta, sino en su uso.

Echemos un vistazo más de cerca a la mesa.


Un punto importante que debe tenerse en cuenta en primer lugar: el evento 5861 se genera en el registro especificado solo sobre el hecho de la creación o modificación posterior (incluso en términos de filtro y consumidor) del paquete. Esto, por un lado, facilita el seguimiento de actividades supuestamente maliciosas (no se necesita correlación entre dos o tres eventos) si no solo se crea un grupo dentro de él. Y, por otro lado, perdemos la hora de inicio de esta actividad si el filtro o el consumidor se crean precisamente dentro del marco y con anticipación.

¿Es esto crítico? Caso por caso. Si comenzamos a desenrollar la secuencia de un incidente y vemos que se creó un filtro o consumidor atípico y supuestamente malicioso hace dos años, inmediatamente nos damos cuenta de que los atacantes han estado en casa con nosotros durante más de dos años. Y las huellas del ataque deben buscarse al menos a esta profundidad. ¿Con qué frecuencia ocurre esto? Esta es la pregunta principal.

Pero si se realizan cambios en el filtro o en el consumidor del paquete existente, veremos la imagen completa en un solo evento. Mientras que Sysmon reflejará solo aquellos cambios (ese objeto) que se hicieron.

Entre otras diferencias: en los eventos de Sysmon, los datos se reflejan en una forma más estructurada y en un formato más conveniente. Por ejemplo, en lugar del SID en un formato atípico, el inicio de sesión del usuario se presenta de inmediato. Pero los datos son un poco menos. Quizás esto es crítico para su caso.

Concluimos con restricciones. En primer lugar, a pesar de que esta revista ha estado presente desde Windows 2012 (kernel 6.2), no pudimos obtener estos eventos incluso para el kernel 6.3 (2012R2), que se estudia en el artículo. Quizás esto se deba a la ausencia de parches.

En segundo lugar, según el autor de esteartículos, el filtro para eventos de temporizador no está arreglado por Sysmon. Sería posible no tomar una palabra, sino verificar. Además, la versión de Sysmon es antigua. Pero aquí es importante un precedente: no hay algunos tipos de filtros y consumidores de WMI. A partir de dicho estudio, complementado con detalles, se podría hacer un artículo separado. Simplemente pruebe los tipos de destino para comprender exactamente lo que se registrarán.

Conclusión


En este caso, nos sentimos más cómodos con el uso de eventos de Windows. Desde el punto de vista de la conveniencia: más datos, no hay necesidad de correlación primaria. Entonces, desde el punto de vista del establecimiento de objetivos, corrige la creación de un mecanismo (basado en partes nuevas, modificadas o existentes), y no sus piezas individuales.

Consultas DNS


Entonces, pasamos al grupo final que se compara, pero aún lejos de la conclusión de nuestro artículo. Este tipo y el conjunto correspondiente de eventos son recientes no solo por la aparición en nuestro artículo, sino también al agregar Sysmon al kit de herramientas.

En los últimos años, el tema del uso de DNS para otros fines, por ejemplo, para recibir comandos de C&C o robar información a través de este canal, se ha vuelto popular. Lo más probable es que no lo haga por sí solo: remitiríamos las historias sobre tal uso de los canales ICMP y DNS a cero. En ese momento, los estudiantes familiares eran sofisticados en la encapsulación del tráfico de juguetes para llegar a los codiciados servidores de juegos de la red del instituto a través de los únicos canales permitidos (hola, Zhenyatumbochko!). Esto permitió pasar el tiempo aburrido o dominar rápidamente sus laboratorios. Y no fue su idea.

Pero no hace mucho tiempo, se agregó un concepto como DoH a este canal de fuga, lo que complicó la detección de tráfico DNS sospechoso a nivel de red.

O tal vez fue solo una estratagema de marketing: vender una nueva, que también es una vieja y olvidada. O el inicio de la ocurrencia generalizada de tales canales en actividad maliciosa detectable. No profundizamos en este tema, preparados para recolectar granos; de repente, uno de los lectores decide dejar caer un poco de sabiduría en los comentarios.

Entonces, más cerca del punto. Active el Visor de eventos - Registros de aplicaciones y servicios - Microsoft - Windows - Eventos de cliente DNS - Operativo - Menú contextual - Habilitar registro.


Todo lo mismo que ya se discutió. En cuanto a la información sobre el tema, prestamos atención a la indicación explícita de la imagen del archivo ejecutable que ejecutó la solicitud en el evento Sysmon.

Si hablamos del objeto, hay mucha más información en los registros de Windows. Pero hay varios "peros" importantes. En primer lugar, la información se distribuye en varios eventos con todas las consecuencias.

En segundo lugar, la información se presenta de forma poco intuitiva. Descifrar la mayor parte del conocimiento requiere conocer cómo se forman los campos del paquete y la capacidad de transformar estos datos nuevamente en hechos que faciliten la decisión del analista. Podemos decir que, de hecho, el analista no es en vano obtener un salario y por qué no sentarse y resolverlo. Si, eso es correcto. Pero les recuerdo que estamos hablando de un pequeño equipo sin especialistas de perfil estrecho, antes del cual las tareas de seguridad de la información no tienen fin. Y si por cada evento analizado por SIEM, tal tarea recae sobre él, no los alcanzará en unos años.

Conclusión


Para este grupo, el ganador es difícil de determinar. Sysmon ofrece una versión lacónica, desde la cual puede exprimir fácilmente una buena porción de información útil. Windows ofrece una opción avanzada. Queda por "coserlo", lidiar con el contenido y preguntarse si era hora de presentar NTA?

Eventos únicos de Sysmon


Atribuimos lo siguiente a los eventos únicos de Sysmon:

  • EID 4, 16. Aunque puede rastrearse a través de los registros de Windows, solo nos informan sobre los eventos en Sysmon. En consecuencia, en su ausencia no tienen sentido.
  • EID 2: EID 4663 podría considerarse como un análogo, pero incluso teniendo en cuenta las listas de derechos de acceso proporcionadas en él, el evento no es tan granular como EID2, y no está enriquecido a ese estado con otros eventos de Windows.
  • EID 7-9, 17 — . ETW. , , .
  • EID 15 — , ETW. , — .
  • EID 18 — (named pipes) . , -, . -, , . ETW.


Hay tres opciones para filtrar eventos en el lado de origen.

El primero está disponible solo para eventos de Windows y solo para monitorear el acceso y las operaciones con objetos. Implementado usando SACL. Entre las desventajas de este enfoque está la complejidad de la configuración granular (por ejemplo, no solo puede monitorear archivos existentes o creados con la extensión .exe). Entre las ventajas está la capacidad de limitar la lista de usuarios para quienes se registran las operaciones con el objeto.

El segundo está disponible tanto para eventos de Windows como para eventos de Sysmon: usando Xpath, teniendo en cuenta las restricciones impuestas por el gran Microsoft. Dado que el método está disponible para ambas fuentes, la descripción está más allá del alcance de este artículo.

Y el tercero es la configuración de Sysmon. Hay muchas opciones:

  • Emulación de comodines: contiene (any | all), excluye (any | all), termina con, comienza con. El uso de contiene | excluye todo le permite emular expresiones como "C: \ Windows \ *. Exe".
  • Coincidencia exacta - es, no es, imagen.
  • Aritmética: menos que, más que.

Cabe señalar que dicho filtrado no está disponible para todos los campos. Por ejemplo, no puede incluir en la lista blanca hashes de software estándar, la creación de procesos para los que no estamos interesados. Un ejemplo de nuestra experiencia: el proceso legítimo git.exe creó decenas de miles de eventos de inicio por día en los hosts de nuestros desarrolladores. Quizás, específicamente en este caso, su comportamiento podría ser más estricto, reduciendo así este eje de eventos. Pero excluir archivos ejecutables por nombre de imagen no es una buena idea. Bueno, tal vez solo un antivirus con autodefensa habilitado.

Sysmon también solo está en camino hacia un filtrado sofisticado mediante la combinación de condiciones de diferentes campos. Puede crear solo un grupo de reglas para cada EID combinado por relaciones AND, y solo uno con relaciones OR. En consecuencia, las condiciones de la forma (A y B) o (C y D) ya no se pueden escribir. Dependiendo de la corriente filtrada, este hecho puede no dar ninguna ventaja significativa, pero también puede dar un resultado tangible.

Otros proveedores de eventos base gratuitos


En esta sección, en primer lugar, me gustaría hablar sobre el mecanismo ETW (Event Trace for Windows). Los registros de eventos integrados de Windows y Sysmon registran eventos utilizando este mecanismo. De hecho, por cada acción en el sistema podemos obtener un evento. La forma más fácil de ver el volumen potencial de tales eventos es habilitar la opción Visor de eventos - Ver - Mostrar análisis y depuración. Para que los eventos no llenen inmediatamente su sistema, cada registro se activa por separado en su menú contextual. Miras esta bondad e involuntariamente te haces una pregunta: ¿por qué necesitamos a Sysmon con un volumen de eventos tan diversos?

El hecho es que, en primer lugar, estos registros originalmente estaban destinados a la depuración, y no con fines de seguridad. Por lo tanto, no se proporciona su colección centralizada. En particular, no encontrará el FQDN del host en el que se crearon en ninguna parte. La cuestión, por supuesto, puede ser resuelta por utilidades de terceros, desde pequeñas a grandes, desde scripts hasta servicios de registro completos. Pero debe recordar que este es un software adicional en una gran empresa y, en consecuencia, una tarea separada. Permítame recordarle que en la introducción procedemos del principio del minimalismo en la actividad adicional para instalar software.

Y en segundo lugar, estos registros informan con tanto detalle sobre cada estornudo que también tienen que seleccionar la información poco a poco. Las entradas del diario son verdaderamente atómicas y requerirán una correlación previa o enriquecimiento para que el analista trabaje productivamente. Después de todo, un programador que depura su creación usando estos eventos sabe cómo debería funcionar todo. Y un guardia de seguridad, especialmente de perfil amplio, piensa en niveles mucho más altos de abstracción. Sí, además, busca actividad ilegítima desconocida. Tal declaración del problema conduce a un módulo de software adicional que llevará a cabo el preprocesamiento. Esto nuevamente complicará nuestro concepto.

Si bien no hemos ido muy lejos de iniciar sesión con Windows, no olvidaremos mencionar WMI. Esta herramienta básicamente captura los cambios de estado sin mostrar su fuente. Como ejemplo de una excepción, cargar un archivo dll: muestra el módulo dll y el proceso que lo está cargando. Pero por razones de seguridad, este evento también requiere enriquecimiento, ya que aquí es donde se agota su información. En general, la falta de pescado y el cáncer son peces. Pero la herramienta solo se puede usar como extra.

Otra opción popular, pero no cubierta en el artículo, es la osquery.. Las dos razones principales por las que no consideramos esta solución aquí son la baja frecuencia de actualizaciones del producto (menos tanto en términos de seguridad como de funcionalidad) y el mayor uso de los recursos del sistema en comparación con otras opciones (se incluye una base de datos completa). Presumiblemente, la solución es adecuada para servidores para los que fue desarrollada. Pero para estaciones de trabajo, posiblemente con hardware obsoleto, apenas.

Recientemente, han aparecido varias herramientas más que no están tan extendidas como las consideradas. Estos incluyen Velociraptor y SilkETW. No inventan una bicicleta y también funcionan por encima del estándar de Windows: ETW. En vista del volumen de material ya citado, se decidió separar estas herramientas en una publicación separada (ya que el tiempo y el esfuerzo están disponibles, así como un sentido de demanda).

Conclusión general


En el curso de la comparación, se demostró que los eventos de Sysmon que tienen análogos generalmente superan a los eventos de Windows en sus características funcionales. Algunos eventos de Sysmon simplemente no tienen alternativas.

Sin embargo, no olvide que, en primer lugar, la solución debe elegirse en función de sus tareas. Si solo está construyendo un sistema de monitoreo y en el primer año planea implementar métodos para detectar de siete a diez incidentes, como Gartner legó, entonces debería tener suficientes eventos de Windows. Y quizás mucho más de un año.

En segundo lugar, el sistema de registro de eventos de Windows también se actualiza constantemente, y durante la redacción de este artículo, aparecieron los EID de Windows como 4798 y 4799. También es posible que el conjunto de campos se complemente. Por lo tanto, esta comparación, aunque es la más completa, basada en la información que poseemos, no está tallada en piedra.

Y en tercer lugar, Sysmon sigue siendo una herramienta externa, lo que conlleva una serie de riesgos. Por ejemplo, hemos tenido casos en los que el registro de EID individuales se terminó sin declarar un motivo. En este caso, la grabación de otros eventos fue como de costumbre. Más colegas eminentes afirman que el problema estaba relacionado con pérdidas de memoria en la versión 10.41. Pero la versión 10.42, en la que este problema se cierra total o parcialmente (con el registro de cambios de Sysmon, todo no está tan detallado), no resolvió nuestros problemas en esta dirección. Solo el componente desinstalar-instalar ayuda. Toda seguridad y que tengas un buen día!

Gracias a timurzinintpor ayuda en la preparación de la publicación.

UPD1 : Resulta muy difícil mantener un registro de cambios normal o agregar nuevas características a la descripción principal, así como descubrimos (gracias, tío Dimshudv), un camión con nishtyaks volcó en nuestra calle hace ya 9 meses ... Resumen: en Sysmon puedes hacer (A y B) o (C y D), solo shh ...

All Articles