Перейти к содержанию

Использование поиска и фильтров

Вебмониторэкс предоставляет несколько удобных механизмов для поиска обнаруженных атак, инцидентов и уязвимостей. В секции События в Консоли управления Вебмониторэкс доступны следующие механизмы поиска:

  • Фильтры для выбора критериев поиска

  • Поисковая строка для ввода поискового запроса с использованием атрибутов и модификаторов, приближенных к человеческому языку

Значения, установленные в фильтрах, автоматически дублируются в поисковой строке. Значения, указанные в поисковой строке, автоматически дублируются в фильтрах.

Вы можете сохранить любой поисковый запрос или комбинацию фильтров как шаблон, используя опцию Сохранить шаблон поиска.

Фильтры

Доступные фильтры поиска представлены в Консоли управления Вебмониторэкс в следующих формах:

  • Панель фильтров, которая разворачивается и сворачивается по кнопке Фильтр

  • Быстрые фильтры для исключения или отображения только событий с конкретным значением параметра

Фильтры в Консоли управления

Если в фильтрах заданы значения для разных параметров, результат будет удовлетворять всем условиям. Если указано несколько значений для одного параметра, результат будет удовлетворять любому из значений.

Поисковая строка

Поисковая строка принимает поисковые запросы с атрибутами и модификаторами, приближенными к человеческому языку, поэтому запрос можно набрать почти интуитивно. Например:

  • attacks xss — поиск всех XSS-атак (межсайтовый скриптинг)

  • attacks today — поиск любых атак за сегодня

  • vulns sqli: поиск уязвимостей к атакам типа внедрение SQL‑кода

  • vulns 11/01/2020 - 11/10/2020 — поиск уязвимостей за указанный период

  • xss 14/12/2020 — поиск всех уязвимостей, подозрений, атак и инцидентов межсайтового скриптинга на 14 декабря 2020 года

  • p:xss 14/12/2020 — поиск всех уязвимостей, подозрений, атак и инцидентов, обнаруженных в параметре xss за 14 декабря 2020 года

  • attacks 9-12/2020 — поиск всех атак с сентября по декабрь 2020 года

  • rce /catalog/import.php: поиск всех RCE-атак, инцидентов и уязвимостей по скрипту /catalog/import.php за последний день

Если в поисковой строке указаны значения для разных параметров, результат будет удовлетворять всем условиям. Если указаны несколько значений для одного параметра, результат будет удовлетворять любому из них.

Поиск по атрибуту со значением НЕ

Чтобы задать исключающее значение атрибута поиска, добавьте ! перед атрибутом. Например: attacks !ip:111.111.111.111 вернет атаки, отправленные с любого IP‑адреса, кроме 111.111.111.111.

Ниже приведен набор атрибутов и модификаторов, которые могут быть использованы в поисковых запросах.

Поиск по типу объекта

Укажите в строке поиска:

  • attack, attacks — чтобы искать только атаки, которые не направлены на известные уязвимости

  • incident, incidents — чтобы искать только инциденты (атаки, эксплуатирующие известную уязвимость)

  • vuln, vulns, vulnerability, vulnerabilities — чтобы искать только уязвимости

Поиск по типу атаки или уязвимости

Укажите в строке поиска:

Название уязвимости может быть указано как строчными, так и заглавными буквами.
Т.е. SQLI, sqli и SQLi будут восприняты одинаково.

Поиск по CVE и известным эксплойтам

  • known: запросы, которые однозначно являются атаками. К ним относятся запросы с эксплойтами, направленными на уязвимости из базы CVE или другие общеизвестные типы уязвимостей.

    Чтобы отфильтровать атаки по определенному идентификатору CVE или другому общеизвестному типу уязвимости, вы можете передать соответствующий идентификатор или тип уязвимости вместе с тегом known или без него. Например: known:CVE-2004-2402 CVE-2018-6008 или CVE-2004-2402 CVE-2018-6008, чтобы вернуть атаки, направленные на уязвимости CVE-2004-2402 и CVE-2018-6008.

  • !known: атаки, которые потенциально могут быть ложными срабатываниями, так как содержат малоизвестные эксплойты или контекст, в котором эксплойты являются легитимными значениями параметров.

Для фильтрации атак по CVE и известным эксплойтам вы также можете использовать быстрый фильтр по типам событий и по CVE и эксплойтам.

Поиск по API-протоколу хита

Чтобы отфильтровать хиты по API-протоколу, по которому они были отправлены, используйте префикс proto: или protocol:.

Префикс может принимать следующие значения:

  • proto:graphql

  • proto:grpc

  • proto:websocket

  • proto:rest

  • proto:soap

  • proto:xml-rpc

  • proto:web-form

  • proto:webdav

  • proto:json-rpc

Поиск хитов по протоколам аутентификации

Чтобы отфильтровать хиты по протоколу аутентификации, который использовал злоумышленник, используйте префикс auth:.

Префикс может принимать следующие значения:

  • auth:none

  • auth:api-key

  • auth:basic

  • auth:bearer

  • auth:cookie

  • auth:digest

  • auth:hawk

  • auth:jwt

  • auth:ntlm

  • auth:oauth1

  • auth:oauth2

  • auth:scram

Поиск по цели атаки или уязвимости

Укажите в строке поиска:

  • client — чтобы искать атаки/уязвимости пользовательских данных;

  • database — чтобы искать атаки/уязвимости базы данных;

  • server — чтобы искать атаки/уязвимости сервера приложений.

Поиск по уровню опасности

Укажите в строке поиска:

  • low — низкий уровень опасности;

  • medium — средний уровень опасности;

  • high — высокий уровень опасности.

Поиск уязвимостей по идентификатору

Для поиска уязвимостей по идентификатору можно указывать его в одном из двух вариантов:

  • полностью: WLRM-ABCD-X0123;

  • сокращенно: X0123.

Поиск по статусу уязвимости

Укажите в строке поиска:

  • open — актуальная уязвимость

  • closed — исправленная уязвимость

Поиск по времени события

Задайте в строке поиска временной интервал. Если временной интервал не задан, отображаются события за последние сутки.

Вы можете использовать несколько способов, чтобы задать временной интервал:

  • Дата: 10/11/2020 - 14/11/2020

  • Дата и время (всегда без секунд): 10/11/2020 11:11, 11:30-12:22, 10/11/2020 11:12 - 14/11/2020 12:14

  • Дата и время относительно определенного момента времени, например: >10/01/20

  • Строковые алиасы:

    • yesterday для вчерашней даты
    • today для сегодняшней даты
    • last <unit> для периода с начала полного прошедшего unit'а до текущей даты

      <unit> может быть: week, month, year или количество таких unit'ов. Например: last week, last 3 month или last 3 months.

    • this <unit> для текущего unit'а

      <unit> может быть: week, month, year. Например: this week вернет события за понедельник, вторник и среду на текущей неделе, если сегодня — среда.

Дата указывается в формате ДД/ММ/ГГГГ, где ММ — полный или сокращенный номер месяца: 10/01/2020 или 10/1/2020. Если ГГГГ не указан в дате, используется текущий год. Время указывается в 24‑часовом формате, например: 13:00.

Поиск по IP‑адресу

Для поиска по IP‑адресу используется префикс ip:, после которого вы можете задать:

  • Конкретный IP‑адрес, например 192.168.0.1 — в этом случае будут найдены все атаки и инциденты, для которых адрес источника атаки соответствует этому IP‑адресу.

  • Выражение, описывающее диапазон IP‑адресов, для которого необходимо произвести поиск.

  • Общее число IP‑адресов, относящихся к атаке или инциденту.

Поиск по диапазону IP‑адресов

Чтобы задать требуемый диапазон IP‑адресов, вы можете использовать:

  • Явный диапазон значений IP‑адресов:

    • 192.168.0.0-192.168.63.255;
    • 10.0.0.0-10.255.255.255.
  • Часть IP‑адреса:

    • 192.168. — эквивалентно 192.168.0.0-192.168.255.255. Допускается избыточный формат записи с модификатором *192.168.*.
    • 192.168.0. — эквивалентно 192.168.0.0-192.168.0.255.
  • IP‑адрес или его часть с диапазоном значений внутри последнего октета в выражении:

    • 192.168.1.0-255 — эквивалентно 192.168.1.0-192.168.1.255;
    • 192.168.0-255 — эквивалентно 192.168.0.0-192.168.255.255.

    Важно

    При использовании диапазона значений внутри октета точка в конце не ставится.

  • Префиксы подсетей (CIDR-нотация):

    • 192.168.1.0/24 — эквивалентно 192.168.1.0-192.168.1.255;
    • 192.168.0.0/17 — эквивалентно 192.168.0.1-192.168.127.255.

Обратите внимание

Вы можете комбинировать перечисленные выше способы поиска по IP‑адресу. Для этого перечислите все необходимые диапазоны с префиксом ip: по отдельности.

Пример: ip:192.168.0.0/24 ip:10.10. ip:10.0.10.0-128

Поиск по числу IP‑адресов

Также есть возможность искать по общему числу IP‑адресов, связанных с атаками и инцидентами:

  • ip:1000+ last month — поиск атак и инцидентов за последний месяц, для которых число уникальных IP‑адресов более 1000
    (эквивалентно запросу attacks incidents ip:1000+ last month).

  • xss ip:100+ — поиск всех атак и инцидентов межсайтового скриптинга.
    Если меньше 100 разных IP‑адресов было зарегистрировано как атакующие с этим типом атаки, результат поиска будет пустым.

  • xss p:id ip:100+ — выполнит поиск всех атак и инцидентов типа XSS для HTTP‑параметра id(?id=aaa) и вернет результат,
    только если число разных IP‑адресов превышает 100.

Поиск по дата‑центру IP‑адреса

Для поиска по дата‑центру, которому принадлежит IP‑адрес, с которого отправлены атаки, используйте префикс source:.

Атрибут принимает следующие значения:

  • tor для узлов Tor

  • proxy для публичного прокси‑сервера или веб‑сервера

  • vpn для сети VPN

  • azure для Microsoft Azure

  • gce для Google Cloud Platform

  • ibm для IBM Cloud

  • alibaba для Alibaba Cloud

  • huawei для Huawei Cloud

  • rackspace для Rackspace Cloud

  • plusserver для PlusServer

  • hetzner для Hetzner

  • oracle для Oracle Cloud

  • ovh для OVHcloud

  • tencent для Tencent

  • linode для Linode

  • docean для Digital Ocean

Поиск по стране регистрации IP‑адреса

Для поиска по стране, в которой зарегистрирован IP‑адрес, с которого отправлены атаки, используйте префикс country:.

Название страны должно быть передано в соответствии со стандартом ISO 3166-1 строчными или заглавными буквами. Например: country:CN или country:cn для атак, отправленных из Китая.

Поиск по статусу ответа сервера

Для поиска по статусу ответа сервера укажите префикс statuscode:.

Статус для поиска может быть задан в виде:

  • числа от 100 до 999;

  • диапазона «N−M», где N и M — это числа от 100 до 999;

  • диапазона «N+» и «N-», где N — это число от 100 до 999.

Поиск по размеру ответа сервера

Для поиска по размеру ответа сервера укажите в строке поиска префикс s: или size:.

В качестве параметра поиска можно указать любое целое число. Числа больше 999 могут задаваться без префикса. Можно указывать диапазоны «N-M», «N+» и «N-». Если в диапазоне числа больше 999, то префикс также можно не указывать.

Поиск по методу HTTP‑запроса

Для поиска по методу HTTP‑запроса укажите префикс method:.

GET, POST, PUT, DELETE и OPTIONS в качестве параметра поиска с учетом регистра могут быть указаны без префикса. Для указания всех остальных значений необходимо использовать префикс.

Поиск по количеству хитов в атаке или инциденте

Для поиска атак или инцидентов по количеству хитов, используйте префикс N:.

Например, вы можете найти атаки с более чем 100 хитами по запросу attacks N:>100 или атаки с менее чем 10 хитами по запросу attacks N:<10.

Поиск по домену

Для поиска по домену укажите префиксы d: или domain:.

Без префикса обрабатывается любая строка, которая может быть доменом второго и более уровня. С префиксом может быть указана любая строка.

В домене можно использовать маски. Символ * заменяет любое количество символов, символ ? заменяет любой один символ.

Поиск по пути

Для поиска по пути укажите префикс u: или url:.

Без префикса обрабатываются строки, которые начинаются с /. С префиксом может быть указана любая строка.

Поиск по приложению

Для поиска по приложению, на адрес которого отправлены атаки или в котором обнаружены уязвимости, используйте префикс application: или app:. Предыдущий префикс pool: также поддерживается, но не рекомендуется к использованию.

В качестве значения атрибута используется название приложения, заданное на вкладке Приложения в секции Настройки. Например: application:'Example application'.

Поиск по параметру или парсеру

Для поиска по параметру или парсеру используйте префикс p:, param: или parameter:, или суффикс =. При использовании суффикса строка, которая начинается не с /, рассматривается как параметр (при этом завершающий = в значение не входит).

Возможные значения атрибута:

  • Название параметра с признаками атаки.

    Например, если необходимо найти атаки на параметр xss, а не xss-атаки (например, найти атаку типа SQL‑injection в параметре URL xss), то в поисковой строке следует ввести attacks sqli p:xss.

  • Название парсера, который нода применила к параметру для чтения значения. Названия должны передаваться в верхнем регистре.

    Например: attacks p:*BASE64 — для поиска атак на любые параметры, к которым нода применяла парсер base64.

  • Последовательность параметров и парсеров.

    Например: attacks p:"POST_JSON_DOC_HASH_from" — для поиска атак, отправленных в параметре from в теле запроса в формате JSON.

В значении атрибута могут использоваться маски. Символ * заменяет любое количество символов, символ ? заменяет любой один символ.

Поиск аномалий в атаках

Для поиска аномалий в атаках укажите префикс a: или anomaly:.

Поддерживаемые параметры для поиска аномалий:

  • size;

  • statuscode;

  • time;

  • stamps;

  • impression;

  • vector.

Пример:

Поиск attacks sqli a:size найдет все атаки вида SQL‑инъекция, где в запросах были аномалии размера ответа.

Поиск по идентификатору запроса

Для поиска атак и инцидентов по идентификатору запроса укажите префикс request_id.

Параметр request_id имеет значение вида a79199bcea606040cc79f913325401fb. Далее в примерах используется условное обозначение <requestId>.

Примеры использования:

  • attacks incidents request_id:<requestId> – поиск атаки или инцидента с request_id равному <requestId>;

  • attacks incidents !request_id:<requestId> – поиск атак или инцидентов с request_id не равному <requestId>;

  • attacks incidents request_id – поиск атак или инцидентов с любым request_id;

  • attacks incidents !request_id – поиск атак или инцидентов с отсутствующим request_id.

Поиск семплированных хитов

Чтобы найти семплированные хиты, добавьте в строку поиска sampled.