💙 SIEM: что под капотом новой системы мониторинга безопасности?
Наши инженеры SOC разработали и запустили собственную SIEM:
🔹 Модульная система, которая способна обрабатывать очень большое количество данных. Она объединяет как новые, так и успешно зарекомендовавшие себя инженерные решения VK.
🔹 Инфраструктура размещена в едином облаке VK (OneCloud) – там же, где находятся сервисы ВКонтакте, Одноклассников, Дзен, VK Видео и других сервисов VK. Что это значит? Огромные вычислительные мощности и масштабируемость, что делает VK SIEM невероятно быстрым.
Дмитрий Куколев, руководитель VK SOC, рассказывает, как устроена VK SIEM и что изображено на схеме:
1️⃣ Модуль нормализации: преобразование «сырых» логов в CEF+
Для обработки всех поступающих событий мы используем универсальную схему Common Event Format, но постоянно расширяем ее (сейчас она содержит 300+ полей).
🔹 Для нормализации событий используем Vector.dev.
2️⃣ Модуль обогащения: наша реализация «активных листов»
Сразу на потоке добавляем контекст, чтобы уже на моменте корреляции получать всю необходимую информацию о событии.
🔹 Реализовали функционал «статических активных листов» (обновление списков обогащения раз в несколько часов) и «динамических активных листов» (обновление списков обогащений несколько раз в минуту на основе информации из предыдущих событий). Один из сценариев «динамических активных листов» – обновления на основе результатов коррелятора.
3️⃣ Хранилище обогащений
Key-value хранилище, источник модуля обогащения.
4️⃣ Коррелятор
Потоковый коррелятор событий, который анализирует на скоростях в миллионы EPS. Может легко масштабироваться без потери производительности. Все правила написаны и обновляются нашими аналитиками.
🔹 Также дополнительно разрабатываем «ретроспективный» коррелятор для корреляции и поиска IoC в логах, автоматически записанных в наши базы данных.
5️⃣ Пользовательский интерфейс (UI) для аналитиков SOC
Используем OpenSearch Dashboards: во-первых, чтобы сохранить пользовательский опыт наших инженеров (это очень удобный инструмент для работы с логами и выявления аномалий), а во-вторых, это Open Source, который мы можем использовать как конструктор и дорабатывать под наши потребности.
6️⃣ Холодное хранилище
Выбрали YTSaurus как успешно зарекомендовавшее себя внутри VK (и не только) решение для распределенного хранения данных, особенно, с потенциалом для масштабирования. Наша задача – получать доступ к логам, полученные минимум за последние полгода, а в идеале – без ограничения по сроку.
7️⃣ Индексатор
Разработали модуль индексации, чтобы обеспечить быстрый полнотекстовый поиск по петабайтам событий и возможностью сложных агрегаций.
8️⃣ Горячее хранилище
Чтобы максимально быстро находить актуальные события, в нашей архитектуре предусмотрено горячее хранилище. В сочетании с индексатором это дает аналитикам возможность за несколько секунд получать доступ к данным за последние 3 месяца.
🔹 Здесь используем Click House, который предоставляется в нашей инфраструктуре как сервис.
9️⃣ Транслятор
Так как наше модульное решение включает ClickHouse (горячее хранилище), YTSaurus (холодное хранилище), собственный индексатор и ядро OpenSearch Dashboard (только UI, от хранения событий в OpenSearch мы сознательно отказались), то для их объединения и бесшовного функционирования нам понадобилось создать транслятор.
🔹Используя внешний индексатор, он преобразовывает запросы пользователя в базы данных, а затем снова преобразовывает для отображения ответа в UI. Транслятор умеет одновременно работать с холодным и горячим хранилищем, поэтому аналитику не нужно думать, где хранятся те или иные данные, все работает по одной кнопке.
🔹 О том, как мы в VK пришли к созданию своей собственной SIEM-системы – про новые реалии и вызовы BigTech, как формулировали задачу и с какими сложностями столкнулись на пути, можно послушать
здесь.
💬 Оставляйте ваши вопросы в комментариях.
VK Security #soc #siem