![](https://habrastorage.org/files/b1b/78d/4a2/b1b78d4a24ec4a4d883816dbd2aa3347.jpg)
Упрощенная SIEM-система Advanced Reporting Tool позволяет добавлять пользовательские справочные таблицы для кастомизации отчетов в соответствии с потребностями предприятия. Рассмотрим, как это можно сделать.
Сегодня мы подробно расскажем о том, как можно кастомизировать отчеты в упрощенной SIEM-системе Advanced Reporting Tool (ART) с использованием справочных таблиц. Это может потребоваться в тех случаях, когда Вам необходимо добавить определенные характеристики анализируемой корпоративной сети, например:
• Привязать IP-адреса к структурным подразделениям предприятия и удаленным офисам или географическому местоположению
• Выделить корпоративные и не корпоративные приложения
• Указать конечные точки VIP-сотрудников (руководство, бухгалтерия, и т.д.)
Для этого нам необходимо предоставить SIEM-системе пользовательскую справочную таблицу, подготовленную с учетом следующих аспектов:
• Формат файла: CSV с разделителем в виде запятой
• Без специальных символов
• Первая строка с названиями столбцов на английском языке
• Максимальный размер: 2 ГБ
• Столбец с первичным ключом
• Разрешаются дополнительные столбцы
В качестве примера рассмотрим ситуацию, когда мы решили организовать все исполняемые файлы по категориям с привязкой к производителю. Для этого будем использовать файл Executable_Category.csv. Ниже приведен фрагмент содержимого этого файла:
Столбец Service будет играть роль столбца с первичным ключом.
Итак, давайте начнем.
Если Вы хотите параллельно самостоятельно выполнять данные действия параллельно, то Вы можете сделать это в демо-консоли продукта, для использования которой требуется лишь браузер Google Chrome или Mozilla Firefox.
URL: demologin.pandasecurity.com
Логин: DRUSSIAN_FEDERATION_C16@panda.com
Пароль: DRUSSIAN#123
После входа в демо-консоль продукта Panda Adaptive Defense, в верхней части консоли Вам необходимо нажать на кнопку Advanced Search (Расширенный поиск), чтобы перейти в SIEM-систему Advanced Reporting Tool.
Войдя в интерфейс ART, нажмите на иконке Search, а на открывшейся странице нажмите на закладку Lookup Management.
![](https://habrastorage.org/files/745/7e2/953/7457e295358b4ed285fe07da784db84d.jpg)
На открывшейся странице будет показан список справочных пользовательских таблиц (возможно, он будет пустой). В правом верхнем углу нажмите на кнопку New Lookup для загрузки нашей таблицы.
![](https://habrastorage.org/files/ed8/9ee/da4/ed89eeda46a643a4a7616b322aa21cea.jpg)
В появившейся форме укажите название таблицы (Table name) и выберите файл (Choose File). После проверки файла появится список столбцов файла, в котором необходимо проверить, что метка Is Key указана для столбца Service. Нажмите кнопку Upload.
![](https://habrastorage.org/files/f82/677/f30/f82677f309574a309a040d54c3175348.jpg)
Нажмите кнопку Upload и подождите примерно 10 минут, чтобы обновилась таблица со справочными таблицами.
![](https://habrastorage.org/files/810/33e/e33/81033ee33ba9429dabfc80fbff85f2a5.jpg)
Чтобы загрузить обновленную версию данной таблицы, удалить ее или проверить ее структуру, Вы можете нажать на кнопку опций (…).
![](https://habrastorage.org/files/4d2/3d8/8d3/4d23d88d3e3c410b91e7674207f7ee02.jpg)
Теперь давайте перейдем к таблице Ops в ART: нажмите на иконку Search
![](https://habrastorage.org/files/36d/5fe/b9f/36d5feb9f81f4464a50f27cd158c0984.jpg)
В правой секции нажмите на Ops
![](https://habrastorage.org/files/752/5aa/f0e/7525aaf0ef0a4b778d402cd2273774ae.jpg)
На открывшейся странице в панели управления сверху нажмите на иконку Create Column :
![](https://habrastorage.org/files/050/f18/907/050f18907c0d4c1085b00d6e7b33aaeb.jpg)
Теперь давайте выберем те записи, которые заканчиваются на .exe в поле ParentPath. Для этого выполните следующие действия:
• в выпадающем списке Operation выберите значение Ends with
• нажмите кнопку New argument
• в выпадающем списке String выберите значение parentPath
• снова нажмите кнопку New argument
• у аргумента Sufix нажмите справа иконку для редактирования записи и введите значение .exe
![](https://habrastorage.org/files/c42/0ee/eef/c420eeeef9f9419fb16ffae135896baa.jpg)
Теперь нам необходимо извлечь название исполняемого файла в ParentPath в новый столбец под названием ExecutableName.
Для этого нажмите на иконку Create Column
![](https://habrastorage.org/files/050/f18/907/050f18907c0d4c1085b00d6e7b33aaeb.jpg)
• Укажите название поля
• Выберите функцию Substitute
• Добавьте аргумент: поле parentPath
• Добавьте аргумент: регулярное выражение (.*\\)(?=.*(\.\w*)$|(\w+)$).
Например, это регулярное выражение извлекает “chrome.exe” из “PROGRAM_FILESX86|\Google\Chrome\Application\chrome.exe“ в столбец ExecutableName.
• Нажмите на кнопку Create column
![](https://habrastorage.org/files/0e4/9a9/6ac/0e49a96ac4ae4aa288a98b3f7e6f972c.jpg)
А теперь давайте создадим еще одно поле ExecutableName2Lower, т.к. запрос, который мы хотим сделать, зависит от регистра букв. Для этого укажите в форме для добавления столбца следующие параметры:
• Название поля
• Выберите функцию Lower case
• Добавьте аргумент и в выпадающем списке выберите ExecutableName
• Нажмите кнопку Create column
![](https://habrastorage.org/files/b11/8cc/5af/b118cc5af2c74d0cb36b06feea83fcc5.jpg)
В результате Вы должны увидеть нечто подобное:
![](https://habrastorage.org/files/c2a/5fc/9f0/c2a5fc9f03c9495a9296e29bef976e56.jpg)
Если же описанный выше процесс кажется Вам несколько громоздким, то Вы можете нажать на иконку Toggle Query Editor
![](https://habrastorage.org/files/5bc/897/5f9/5bc8975f9d514d92bed93ba5232bc033.jpg)
from oem.panda.paps.ops
where endswith(parentPath, ".exe")
select subs(parentPath, re("(.*\\\\)(?=.*(\\.\\w*)$|(\\w+)$)"), template("")) as ExecutableName,
lower(ExecutableName) as ExecutableName2Lower
![](https://habrastorage.org/files/026/5a5/6b5/0265a56b5c1d4a47ad6398f985d74000.jpg)
В итоге Вы получите тот же самый результат при условии, если Вы правильно загрузили справочную таблицу (о чем мы говорили в самом начале).
Снова нажмите на иконку Create Column:
![](https://habrastorage.org/files/050/f18/907/050f18907c0d4c1085b00d6e7b33aaeb.jpg)
Теперь мы вставим поле Category из нашей справочной таблицы для тех записей, у которых значение поля Executable2Lower равно соответствующему значению поля Service в справочной таблице, в новый столбец под названием Software Category.
![](https://habrastorage.org/files/05a/5c1/d6c/05a5c1d6ccc74874a8aecb6bd3f70343.jpg)
Теперь вы увидите новый столбец в результатах запроса:
![](https://habrastorage.org/files/b2e/983/228/b2e98322889e4928850b5202f7bd876c.jpg)
Кроме этого по данному новому столбцу Вы можете воспользоваться функцией Data Extract, чтобы увидеть суммарное распределение результатов по категориям. Для этого наведите мышкой на иконку со стрелкой вниз в правом верхнем углу у названия столбца Software Category. Значение Null говорит о том, что данная запись не найдена в справочной таблице.
![](https://habrastorage.org/files/75e/444/5ad/75e4445ad23544d89f90f9f527649b9d.jpg)
Теперь сгруппируем Software Category и ExecutableName. Для этого выполните следующие действия:
• Выделите данные столбцы
• В панели управления нажмите на кнопку Group
![](https://habrastorage.org/files/746/391/97f/74639197fd194541816eee58ca7d58d2.jpg)
![](https://habrastorage.org/files/290/a4d/375/290a4d3751dc40f4907b7f006dcad149.jpg)
После этого добавь столбец, используя соответствующую кнопку в панели управления и закладку Aggregate function в открывшейся форме:
![](https://habrastorage.org/files/734/380/44e/73438044ef344de39a6fd51eafdc9895.jpg)
В результате этих действий Вы должны получить примерно следующее:
![](https://habrastorage.org/files/bda/b69/74e/bdab6974e7ee470ebb4e4cf6853c7efd.jpg)
Если же описанный выше процесс кажется Вам несколько громоздким, то Вы можете нажать на иконку Toggle Query Editor
![](https://habrastorage.org/files/5bc/897/5f9/5bc8975f9d514d92bed93ba5232bc033.jpg)
from oem.panda.paps.ops
where endswith(parentPath, ".exe")
select subs(parentPath, re("(.*\\\\)(?=.*(\\.\\w*)$|(\\w+)$)"), template("")) as ExecutableName,
lower(ExecutableName) as ExecutableName2Lower
select `lu/Executable_Category/Category`(ExecutableName2Lower) as `Software Category`
group every 15s by `Software Category`, ExecutableName
every 0
select count() as count
![](https://habrastorage.org/files/c2e/133/980/c2e13398051a47c49335a021b63156d9.jpg)
И, наконец, с этим недавно добавленным счетчиком мы можем сделать что-нибудь более визуальное: например, диаграмма Вороного. Нажмите в панели управления на кнопку Setup
![](https://habrastorage.org/files/b30/cb7/263/b30cb726380f41a8915497c127e5d94f.jpg)
![](https://habrastorage.org/files/df9/5cf/f48/df95cff487214a7ea5c17fb4fff5b46a.jpg)
Теперь перетащите Sofware Category и ExecutableName в панель SIGNALS в настройках диаграммы Вороного.
![](https://habrastorage.org/files/d8f/ec8/681/d8fec86810af48128b86dc8ce7256550.jpg)
Также перетащите count в панель VALUE.
И… готово!
![](https://habrastorage.org/files/b1b/78d/4a2/b1b78d4a24ec4a4d883816dbd2aa3347.jpg)
Надеемся, что это поможет вам более гибко настраивать нашу упрощенную SIEM-систему Advanced Reporting Tool под конкретные потребности вашего предприятия.
Поделиться с друзьями