Wyrażenia
| Forma | Znaczenie |
|---|---|
słowo | Wyszukiwanie pełnotekstowe. Pojedyncze słowa pasują do całych słów w dowolnym miejscu dokumentu. |
"fraza w cudzysłowie" | Dokładna fraza. |
pole:wartość | Równość, bez rozróżniania wielkości liter. Wartości ze spacjami ujmij w cudzysłów. |
pole:WKS-04* | Symbole wieloznaczne: * zastępuje dowolny ciąg znaków, ? jeden znak. |
pole>10 pole:>=200 | Porównania liczbowe: >, >=, <, <=. |
pole in (a, b) lub pole:(a or b) | Dowolna wartość z listy. |
pole:/wyrażenie/ | Wyrażenie regularne. |
pole:* | Pole istnieje. |
not pole:wartość, -pole:wartość, pole!=wartość | Negacja. |
a and b, a or b, (a or b) and c | Logika, wielkość liter bez znaczenia. Sąsiednie wyrażenia łączy and. |
Pola
Nazwy pól to kanoniczne nazwy z kropkami ze słownika pól: host.name, user.name, process.command_line, source.ip. Pasek zapytania podpowiada je po jednym członie i pokazuje typ oraz opis każdego pola. Po znaku ; inicjały członów rozwijają się do pełnej nazwy: ;pe daje process.executable.
Pole, które źródło wysłało pod własną nazwą, możesz też wyszukiwać po tej nazwie.
Czas
Zakres czasu dla każdego zapytania ustawia selektor zakresu. Przeciągnięcie po histogramie zawęża go.
Potoki
Na stronie Logs zapytanie może mieć kolejne etapy po znaku |. Każdy działa na wyniku poprzedniego:
| Etap | Działanie |
|---|---|
stats count, dc(user.name) by host.name | Agregacje: count, dc, sum, avg, min, max. |
top 10 user.name, rare process.executable | Najczęstsze i najrzadsze wartości. |
where count > 50 | Filtrowanie zagregowanego wyniku. |
fields host.name, user.name, fields - message | Wybór lub usunięcie kolumn. |
dedup host.name, rename count as hits | Jeden wiersz na klucz; zmiana nazwy kolumny. |
sort count desc, head 50, tail 20 | Kształtowanie wyniku. |
seq within 10m by user.name then event.code:4624 | Najpierw to, potem tamto, dla tego samego klucza. |
Przykłady
event.severity:high host.name:NL-WS-0* "failed logon"
event.module:sysmon event.code:1 process.parent.executable:*\cmd.exe
event.code:4625 | stats count by user.name | where count > 20
event.type:logon_failed user.name:j.kowalski
W regułach detekcji
Reguły zapytań korzystają z tego samego języka, ale bez potoków. Do zliczania użyj reguły progowej. Reguły sekwencji i korelacji dodają etapy i okna czasowe; zobacz Pisanie reguł.