Синтаксис запросов поиска угроз
25 февраля 2025
ID 229881
Для поиска событий телеметрии необходимо использовать определенный синтаксис. В поисковых запросах необходимо использовать следующие синтаксические правила:
- Запрос должен содержать хотя бы одно логическое выражение, соответствующее следующему синтаксису:
<имя поля события> <оператор сравнения> <значение поля>. - Запрос может содержать несколько логических выражений. Логические выражения можно комбинировать с использованием следующих логических операторов:
AND(логическое И)Результат запроса будет включать все события, удовлетворяющие обоим условиям (слева и справа от оператора
AND).Например, в результате выполнения запроса
DetectActionResult == "Quarantine" AND DetectStatus == "Malware*"будут отображаться события, в которых DetectStatus начинается с Malware и при этом DetectActionResult равен Quarantine.OR(логическое ИЛИ)Результат запроса будет включать события, удовлетворяющие хотя бы одному из логических выражений.
Например, в результате выполнения запроса
DetectActionResult == "Quarantine" OR DetectStatus == "Malware*"будут отображаться события, в которых DetectStatus начинается с Malware или DetectActionResult равен Quarantine.NOT(логическое НЕ)Результат запроса будет включать события, не удовлетворяющие условию.
Например, в результате выполнения запроса
NOT (DetectActionResult == "Quarantine")будут отображаться события, в которых DetectActionResult не равен Quarantine.
- Порядком выполнения логических операций можно управлять с помощью круглых скобок.
Например, в результате выполнения запроса
(DetectActionResult == "Quarantine" OR DetectStatus == "Malware*") AND FileSize > 16будут отображаться события, в которых DetectStatus начинается с Malware или DetectActionResult равен Quarantine, и при этом размер вложенного файла превышает 16 байт.А в результате выполнения запроса
DetectActionResult == "Quarantine" OR (DetectStatus == "Malware*" AND FileSize > 16)будут отображаться события, в которых DetectActionResult равен Quarantine, или DetectStatus начинается с Malware при том, что размер вложенного файла превышает 16 байт. - Можно использовать следующие операторы сравнения:
- == (равно)
Например, в результате выполнения запроса
DetectActionResult == "Quarantine"будут отображаться события, в которых значение поля DetectActionResult равно Quarantine. - != (не равно)
Например, в результате выполнения запроса
DetectActionResult != "Quarantine"будут отображаться события, в которых значение поля DetectActionResult не равно Quarantine. - > (больше чем)
Например, в результате выполнения запроса
FileSize > 16будут отображаться события с вложенным файлом размером более 16 байт. - < (меньше чем)
Например, в результате выполнения запроса
FileSize < 16будут отображаться события с вложенным файлом размером менее 16 байт. - >= (больше или равно)
Например, в результате выполнения запроса
FileSize >= 16будут отображаться события с вложенным файлом размером большим или равным 16 байт. - <= (меньше или равно)
Например, в результате выполнения запроса
FileSize <= 16будут отображаться события с вложенным файлом размером меньшим или равным 16 байт.
- == (равно)
- Список названий полей событий можно просмотреть в разделе Поиск угроз, на вкладке Справка.
- Элемент
<тип поля>не чувствителен к регистру символов. Например, результаты выполнения запросовcomputername == "host"иCOMPUTERNAME == "host"будут одинаковы. - Элемент
<значение поля>представляет собой последовательность букв, цифр и специальных символов.<Значение поля>не может быть именем<типа поля>. Строковые значения необходимо заключать в кавычки. Исключением является поиск непустой строки. В этом случае возможен ввод без кавычек (например,computername == *илиcomputername == "*"). - Элемент
<значение поля>не чувствителен к регистру символов. Например, результаты выполнения запросовComputerName == "host"иComputerName == "HOST"будут одинаковы. - Элемент
<значение поля>может включать следующие специальные символы:*: звездочка обозначает любое количество символов в строке (применимо только к строковым значениям).Например, в результате выполнения запроса
EventName == "H*"будут отображаться события, начинающиеся с буквы "H".Также символ звездочки можно использовать для исключения полей с пустыми значениями: например, в результате выполнения запроса
EventName == "*"илиEventName == *будут отображаться события, в которых поле EventName имеет непустое значение.?: знак вопроса обозначает один любой символ в строке (применимо только к строковым значениям).Например, в результате выполнения запроса
ProcessUserName == "User?"будут отображаться события, у которых ProcessUserName имеет такие значения, как Users, User1, User2 и другие совпадающие подстроки.\: обратный слеш используется для экранирования (использования в запросах) звездочки, знака вопроса и обратного слеша.Например, обратный слеш используется при поиске пути:
file_pathes == "c:\\windows\\system32\\nslookup.exe".