3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

В прошлых статьях мы немного ознакомились со стеком elk и настройкой конфигурационного файла Logstash для парсера логов, в данной статье перейдем к самому важному с точки зрения аналитики, то что вы хотите увидеть от системы и ради чего все создавалось — это графики и таблицы объединенные в дашборды. Сегодня мы поближе ознакомимся с системой визуализации kibana, рассмотрим как создавать графики, таблицы, и в результате построим простенький дашборд на основе логов с межсетевого экрана Check Point.

Первым шагом работы с kibana — это создание index pattern, логически, это база индексов единых по определенному принципу. Разумеется, это исключительно настройка для того, чтобы Kibana более удобно искала информацию по всем индексам одновременно. Задается она по сопоставлению строки, допустим “checkpoint-*” и названия индекса. Например, «checkpoint-2019.12.05 » подойдет под паттерн, а просто «checkpoint» уже нет. Отдельно стоит упоминания, что в поиске искать информацию по разным паттернам индексов одновременно нельзя, чуть позже в последующих статьях мы увидим что API запросы делаются либо по названию индекса, либо как раз по одной строчке паттерну, картинка кликабельна:

3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

После этого проверяем в меню Discover, что все логи индексируются, и настроен правильный парсер. Если обнаружатся какие либо несоответствия, например, поменять тип данных со строки на целое число, необходимо отредактировать конфигурационный файл Logstash, в результате новые логи будут записываться правильно. Для того, чтобы старые логи до изменения приняли нужный вид, помогает только процесс реиндексации, в последующих статьях эта операция будет рассмотрена более детально. Удостоверимся, что все в порядке, картинка кликабельна:

3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

Логи оказались на месте, значит, можно приступить к построению дашбордов. На основе аналитики дашбордов от security продуктов можно понять состояние ИБ в организации, наглядно увидеть уязвимые места в текущей политике, и в дальнейшем выработать способы по их устранению. Построим небольшой дашборд, используя несколько средств визуализации. Дашборд будет состоять из 5 компонентов:

  1. таблица для подсчета суммарного количества логов по блейдам
  2. таблицу по критическим сигнатурам IPS
  3. круговую диаграмму по событиям Threat Prevention
  4. диаграмма по наиболее популярным посещаемым сайтам
  5. диаграмма по использованию наиболее опасных приложений

Для создания фигур визуализации, нужно перейти в меню Visualiséieren, и выбрать нужную фигуру, которую хотим построить! Пойдем по порядку.

Таблица для подсчета суммарного количества логов по блейдам

Для этого выберем фигуру Donnéeën Table, проваливаемся в оснастку для создания графиков, слева проставляется настройки фигуры, справа то как она будет выглядеть в текущих настройках. Сначала продемонстрирую как будет выглядеть готовая таблица, после этого пройдем по настройкам, картинка кликабельна:

3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

Более детальные настройки фигуры, картинка кликабельна:

3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

Разберем настройки.

Первоначально настраивается Metriken, это значение, по которому будут агрегироваться все поля. Метрики вычисляются на основе значений, извлеченных тем или иным способом из документов. Значения обычно извлекаются из Felder документа, но также могут быть сгенерированы с использованием скриптов. В данном случае ставим в Aggregation: Count (суммарное количество логов).

После этого делим таблицу по сегментам (полям), по которым будет считаться метрика. Эту функцию выполняет настройка Buckets, которая в свою очередь состоит из 2 вариантов настройки:

  1. split rows — добавление колонн и в последующем деление таблицы на строки
  2. split table — деление на несколько таблиц по значениям определенного поля.

В Eemer можно добавить несколько делений для создания нескольких столбцов или таблиц, ограничения тут скорее стоят логические. В aggregation можно выбрать по какому способу будет происходить деление на сегменты: ipv4 range, date range, Terms и т.д. Наиболее занятным выбором является именно Benotzungsconditiounen и Significant Terms, деление на сегменты производится по значениям определенного поля индекса, разница между ними заключается в количестве возвращаемых значений, и их отображение. Так как мы хотим поделить таблицу по названию блейдов, выбираем поле — product.keyword и задаем размер в количестве 25 возвращаемых значений.

Вместо строк в elasticsearch используется 2 типа данных — Text и Schlësselwuert. Если вы хотите выполнить полнотекстовый поиск, вы должны использовать тип text, очень удобная вещь при написании своего поискового сервиса, например, ищете упоминание слова в конкретном значении поля (тексте). Если вы хотите только точное совпадение, вы должны использовать тип keyword. Так же тип данных keyword следует использовать для полей, требующих сортировки или агрегации, то есть, в нашем случае.

В результате Elasticsearch считает количество логов за определенное время с агрегированием по значению в поле product. В Custom Label задаем название колонны, которое будет отображаться в таблице, задаем время за которое собираем логи, запускаем прорисовку — Kibana отправляет запрос в elasticsearch, ждет ответ и после визуализирует полученные данные. Таблица готова!

Круговая диаграмма по событиям Threat Prevention

Определенный интерес представляет информация, а сколько вообще в процентном соотношении реакций ze entdecken и Präventioun на инциденты ИБ в текущей политике безопасности. Для такого случая хорошо подходит круговая диаграмма. Выбираем в Visualize — Pie Chart. Также в метрике задаем агрегацию по количеству логов. В buckets ставим Terms => action.

Вроде все правильно, но в результате показываются значения по всем блейдам, нужно отфильтровать только по тем блейдам, которые работают в рамках Threat Prevention. Поэтому обязательно настраиваем Trimester для того, чтобы искать информацию только по блейдам отвечающие за инциденты ИБ — product: («Anti-Bot» OR «New Anti-Virus» OR «DDoS Protector» OR «SmartDefense» OR «Threat Emulation»). Картинка кликабельна:

3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

И более детальные настройки, картинка кликабельна:

3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

Таблица по событиям IPS

Далее очень важным с точки зрения ИБ является просмотр и проверка событий по блейду IPS и Bedrohung Emulatioun, wat не блокируются текущей политикой, для того чтобы в последующем либо перевести сигнатуру в prevent, либо если трафик валидный — не проверять сигнатуру. Таблицу создаем также как и для первого примера, только с тем отличием, что создаем несколько колонн: protections.keyword, severity.keyword, product.keyword, originsicname.keyword. Обязательно настраиваем фильтр для того, чтобы искать информацию только по блейдам отвечающие за инциденты ИБ — product: ( «SmartDefense» OR «Threat Emulation»). Картинка кликабельна:

3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

Более детальные настройки, картинка кликабельна:

3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

Диаграммы по наиболее популярным посещаемым сайтам

Для этого создаем фигуру — Vertikal Bar. Метрику также используем count (ось Y), а на оси X в качестве значений будем использовать название посещенных сайтов — “appi_name”. Тут есть небольшая хитрость, если запустить настройки в текущем варианте, то все сайты будут отмечаться на графике одним цветом, для того чтобы сделать их разноцветными используем дополнительную настройку — “split series”, которая позволяет делить уже готовую колонну на еще несколько значений, в зависимости от выбранного поля конечно! Это самое деление можно либо использовать как одна разноцветная колонна по значениям в режиме stacked, либо в режиме normal для того чтобы создать несколько колонн по определенному значения с оси X. В данном случае здесь мы используем то же значение, что и по оси X, это дает возможность сделать все колонки разноцветными, справа сверху они будут обозначаться цветами. В фильтре задаем — product:«URL Filtering» для того, чтобы увидеть информацию только по посещенным сайтам, картинка кликабельна:

3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

Astellungen:

3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

Диаграмма по использованию наиболее опасных приложений

Для этого создаем фигуру — Vertical Bar. Метрику также используем count (ось Y), а на оси X в качестве значений будем использовать название используемых приложений- “appi_name”. Наиболее важным является задание фильтра — product: «Application Control» AND app_risk: (4 OR 5 OR 3 ) AND action:«accept». Фильтруем логи по блэйду Application control, берем только те сайты которые категоризированы как сайты с риском Critical, High, Medium и только в том случае если на эти сайты доступ разрешен. Картинка кликабельна:

3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

Настройки, кликабельно:

3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

Dashboard

Просмотр и создание дашбордов находится в отдельном пункте меню — bäi. Здесь все просто, создается новый дашборд, в него добавляется визуализация, расставляется по местам и все!

Создаем дашборд, по которому можно будет понять базовую ситуацию состояния ИБ в организации, понятно, только на уровне Check Point, картинка кликабельна:

3. Elastesche Stack: Analyse vu Sécherheetsprotokoller. Dashboards

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

Konklusioun

Мы рассмотрели возможности базовой визуализации в Kibana и построили дашборд, но это лишь малая часть. Далее в курсе отдельно рассмотрим настройку карт, работу с системой elasticsearch, познакомимся с API запросами, автоматизацией и много чего еще!

Also bleiwt drunHëllefe profitéieren, Facebook, VK, TS Léisung Blog), Yandex Zen.

Source: will.com

Setzt e Commentaire