Modificación del contenido para usar el Modelo avanzado de información de seguridad (ASIM) (versión preliminar pública)
El contenido de seguridad normalizado de Microsoft Sentinel incluye reglas de análisis, consultas de búsqueda y libros que funcionan con analizadores de normalización unificados.
Puede encontrar contenido original normalizado en las galerías y soluciones de Microsoft Sentinel, crear su propio contenido normalizado o modificar el contenido personalizado existente para usar datos normalizados.
En este artículo se explica cómo convertir las reglas de análisis de Microsoft Sentinel existentes para usar datos normalizados con el Modelo avanzado de información de seguridad (ASIM).
Para entender cómo encaja el contenido normalizado en la arquitectura de ASIM, consulte el diagrama de arquitectura de ASIM.
Sugerencia
Vea también el seminario web de profundización sobre los analizadores de normalización de Microsoft Sentinel y el contenido normalizado o revise las diapositivas. Para más información, consulte la sección Pasos siguientes.
Importante
ASIM está actualmente en versión preliminar. En la página Términos de uso complementarios para las Versiones preliminares de Microsoft Azure se incluyen términos legales adicionales que se aplican a las características de Azure que se encuentran en versión beta, versión preliminar o que todavía no se han publicado para su disponibilidad general.
Modifique el contenido personalizado para usar la normalización
Para permitir que su contenido personalizado de Microsoft Sentinel use la normalización:
Modifique sus consultas para usar cualquier analizador unificado pertinente para la consulta.
Modifique los nombres de campo de la consulta para usar los nombres de campo de esquema normalizados.
Si procede, cambie las condiciones para usar los valores normalizados de los campos en la consulta.
Normalización de ejemplo para reglas de análisis
Por ejemplo, considere la regla de análisis de DNS Rare client observed with high reverse DNS lookup count, que funciona en eventos de DNS enviados por servidores DNS de Infoblox:
let threshold = 200;
InfobloxNIOS
| where ProcessName =~ "named" and Log_Type =~ "client"
| where isnotempty(ResponseCode)
| where ResponseCode =~ "NXDOMAIN"
| summarize count() by Client_IP, bin(TimeGenerated,15m)
| where count_ > threshold
| join kind=inner (InfobloxNIOS
| where ProcessName =~ "named" and Log_Type =~ "client"
| where isnotempty(ResponseCode)
| where ResponseCode =~ "NXDOMAIN"
) on Client_IP
| extend timestamp = TimeGenerated, IPCustomEntity = Client_IP
El código siguiente es la versión independiente de origen, que usa la normalización para proporcionar la misma detección para cualquier origen que proporcione eventos de consulta de DNS. En el ejemplo siguiente se usan analizadores de ASIM integrados:
_Im_Dns(responsecodename='NXDOMAIN')
| summarize count() by SrcIpAddr, bin(TimeGenerated,15m)
| where count_ > threshold
| join kind=inner (imDns(responsecodename='NXDOMAIN')) on SrcIpAddr
| extend timestamp = TimeGenerated, IPCustomEntity = SrcIpAddr
Para usar analizadores de ASIM implementados en el área de trabajo, reemplace la primera línea por el código siguiente:
imDns(responsecodename='NXDOMAIN')
Diferencias entre los analizadores integrados y los implementados en el área de trabajo
Las dos opciones del ejemplo anterior son funcionalmente idénticas. La versión independiente de origen normalizada tiene las siguientes diferencias:
Se usa el analizador normalizado
_Im_Dns
oimDns
en lugar del analizador de Infoblox.Los analizadores normalizados solo capturan eventos de consulta de DNS, por lo que no es necesario comprobar el tipo de evento, tal y como hace
where ProcessName =~ "named" and Log_Type =~ "client"
en la versión de Infoblox.El campo
SrcIpAddr
se usa en lugar deClient_IP
.El filtrado de parámetros del analizador se usa para ResponseCodeName, lo que elimina la necesidad de cláusulas
where
explícitas.
Nota
Además de admitir cualquier origen DNS normalizado, la versión normalizada es más corta y fácil de entender.
Si el esquema o los analizadores no admiten parámetros de filtrado, los cambios son similares, salvo que las condiciones de filtrado se quitan de la consulta original. Por ejemplo:
let threshold = 200;
imDns
| where isnotempty(ResponseCodeName)
| where ResponseCodeName =~ "NXDOMAIN"
| summarize count() by SrcIpAddr, bin(TimeGenerated,15m)
| where count_ > threshold
| join kind=inner (imDns
| where isnotempty(ResponseCodeName)
| where ResponseCodeName =~ "NXDOMAIN"
) on SrcIpAddr
| extend timestamp = TimeGenerated, IPCustomEntity = SrcIpAddr
Pasos siguientes
En este artículo se aborda el contenido del Modelo avanzado de información de seguridad (ASIM).
Para más información, consulte:
- Vea el seminario web de profundización sobre los analizadores de normalización de Microsoft Sentinel y el contenido normalizado o revise las diapositivas
- Introducción al Modelo avanzado de información de seguridad (ASIM)
- Analizadores del Modelo avanzado de información de seguridad (ASIM)
- Esquemas del Modelo avanzado de información de seguridad (ASIM)
- Contenido del Modelo avanzado de información de seguridad (ASIM)