Creación de consultas KQL
Kusto Query Language (KQL) es un lenguaje de consulta que puede utilizar para consultar el lago de datos QRadar® . KQL le permite crear diversos tipos de consultas, desde consultas de búsqueda simples a consultas agregadas más complejas.
Procedimiento
Resultados
Cuando se ejecuta una consulta, se añade una tarjeta de 'consulta activa'. Cada consulta caduca 4 días después de su creación. La hora de caducidad se muestra en la tarjeta.
Ejemplo
Devuelve 100 filas de la tabla de sucesos.
events
| take 100
Devuelve 10 categorías de sucesos que tienen más sucesos.
events_all
| summarize Count=count() by qid_event_category
| order by Count desc
| take 10
Devuelve 10 orígenes de datos que tienen el mayor recuento de sucesos.
events
| project data_source_name, original_time
| where data_source_name != ''
| summarize Events=count() by data_source_name
| order by Events desc
| take 10
Devuelve los orígenes de datos durante la última hora.
events
| project original_time, data_source_name
| where original_time > ago(1h)
| summarize Count=count() by Time=bin(original_time, 5m), data_source_name
| order by Time, data_source_name desc
Devuelve sucesos de los últimos 5 minutos hasta un máximo de 10000.
events
| project original_time, data_source_name, name, user_id, low_level_categories,
src_ip, src_port, dst_ip, dst_port, payload
//--- Search for the last 5 minutes of data
| where original_time > ago(5m)
//--- USER Criteria Here
| take 10000
Devuelve sucesos de la última hora hasta un máximo de 10000
events
| project original_time, data_source_name, name, user_id, low_level_categories,
src_ip, src_port, dst_ip, dst_port, payload
//--- Search for the last hour of data
| where original_time > ago(5m)
//--- USER Criteria Here
| take 10000
Buscar sucesos para las últimas 24 horas que tienen la dirección IP de origen 127.0.0.1.
events
| project original_time, data_source_name, name, user_id, low_level_categories,
src_ip, src_port, dst_ip, dst_port, payload
//--- Search for IP = 127.0.0.1 over the last 24 hour of data
| where original_time > ago(24h) and src_ip = ‘127.0.0.1’
//--- USER Criteria Here
| take 100
Buscar sucesos de las últimas 24 horas que no tienen la dirección IP de origen 127.0.0.1.
events
| project original_time, data_source_name, name, user_id, low_level_categories,
src_ip, src_port, dst_ip, dst_port, payload
//--- Search for IP not equal to 127.0.0.1 over the last 24 hour of data
| where original_time > ago(24h) and src_ip != ‘127.0.0.1’
//--- USER Criteria Here
| take 100
Buscar sucesos para la última hora en la que la carga útil tiene una coincidencia en svchost.
events
| project original_time, data_source_name, name, user_id, low_level_categories,
src_ip, src_port, dst_ip, dst_port, payload
//--- Search for payload that has a match on ‘svchost’ over last hour
| where original_time > ago(1h) and payload has ‘svchost’
//--- USER Criteria Here
| take 100