Construir instrucciones KQL para Microsoft Sentinel
Enfoque: canalización tabular, búsquedas amplias, filtros precisos, variables, columnas calculadas, orden y control de salida.
0/10
01 / 10Introducción
Kusto Query Language (KQL) es el lenguaje de solo lectura detrás de los registros, reglas de análisis, libros y búsqueda de Sentinel. Este módulo presenta operadores para recuperar, filtrar, transformar, ordenar y dar forma a los datos.
02 / 10Comprender la estructura de una instrucción KQL
Una consulta es una secuencia de instrucciones. Una expresión tabular comienza con un origen y envía filas por operadores separados por |; cada operador recibe el resultado completo de su izquierda.
SecurityEvent
| where TimeGenerated > ago(1d)
| summarize Events = count() by Account
| top 10 by Events desc
Clave: el orden cambia significado y rendimiento: origen → filtrar → transformar → agregar → presentar.
let vincula un nombre a un escalar, expresión tabular, lista dinámica, vista o función. Mejora legibilidad, reutilización y umbrales consistentes; cada declaración termina en punto y coma.
let timeframe = 7d;
let suspiciousEvents = dynamic([4625, 4672]);
SecurityEvent
| where TimeGenerated > ago(timeframe)
| where EventID in (suspiciousEvents)
Una expresión tabular puede referenciarse como tabla. ago() calcula tiempo relativo.
Elegí el operador correcto: search para ubicación desconocida, where para filas, let para reutilización, extend para cálculos, order by para ordenar y project para la salida.