Вітаємо, захисники, вам важко отримати правильну інформацію про збір, аналіз і зберігання ваших подій безпеки? Хоча на ринку є багато комерційних продуктів, вони часто мають високі ціни. Ці високі ціни ускладнюють організаціям утримання безпечного середовища, залишаючи місце в бюджеті для витрат на дослідження та розробки, маркетинг і отримання прибутку.
Як ви можете створити свій власний SOC з відкритим кодом!
Що, якби ми змогли об’єднати найкраще з того, що може запропонувати програмне забезпечення з відкритим вихідним кодом, щоб створити безпечне, надійне, інтелектуальне та проактивне рішення для кіберзахисту? Ну це саме те, що ми вирішили зробити. Навіщо витрачати сотні тисяч на програмне забезпечення безпеки, коли існують безкоштовні інструменти? Використовуйте заощаджені гроші, щоб збільшити обсяг досліджень і розробок, найняти кращих спеціалістів або охопити більше потенційних клієнтів. Все з душевним спокоєм безпечного та сертифікованого (ISO, GDPR, SOC тощо) середовища.
Спочатку нам потрібно зрозуміти, з яких ключових частин складається стек SIEM і чому. Без відповідних інструментів нашій групі безпеки буде важко виявляти, оцінювати, сортувати та реагувати на події безпеки. Це особливо вірно, коли ваші мережі розширюються та кількість переданих журналів збільшується.
Нижче наведено ключові елементи, на мій погляд, які повинні бути вбудовані в будь-який стек SIEM.
Завантаження журналу
Аналіз журналу
Внутрішнє сховище
Візуалізація
Збагачення інтелекту
Управління справами
автоматизація
Розслідування та реагування
Моніторинг здоров'я
Перш ніж наші аналітики зможуть переглядати журнали безпеки, нам потрібно їх отримати. Корисно виконати вправу, щоб визначити, які джерела журналу ви хочете отримати. Загальні журнали включають:
Журнали кінцевих точок (події Windows, журнали Sysmon, Powershell тощо)
Мережеві пристрої (міжмережеві екрани (IDS/IPS), комутатори, точки доступу)
Проксі (Apache, NGINX тощо)
Сторонні компанії (AWS Cloud Trail, O365, Tenable тощо)
Оскільки ми починаємо завантажувати журнали з кількох джерел, для нас дуже важливо переконатися, що наші журнали нормалізуються до загальних імен полів. Наприклад, source_ip , source_ipv4_ip мають бути переписані в поле src_ip. Це заощадить нам час і енергію пізніше, коли ми почнемо розробляти інформаційні панелі та стратегії сповіщень.
Завдяки нормалізації журналу тепер ми можемо створити універсальну інформаційну панель, яка відображає всі мережеві підключення незалежно від джерела, з якого ми зібрали журнал.
Graylog — це наш улюблений інструмент, коли мова заходить про прийом журналів. Graylog відповідає за збір журналів з різних джерел:
Менеджер Wazuh
Мережеві пристрої
Syslog Forwarders від третіх сторін (Cylance, Crowdstrike тощо)
І ще тонна!
Graylog також обробляє керування індексами індексів, які зберігаються в серверній частині Wazuh-Indexer, щоб відповідати життєвому циклу індексу.
Хоча збір великої кількості журналів є хорошою відправною точкою, ми повинні мати можливість аналізувати мета-деталі в наших зібраних журналах, щоб точно створювати сповіщення та визначати пріоритети подій безпеки. Наприклад, можливо, я хочу визначити, коли PowerShell було викликано з -ExecutionPolicy Bypassпрапором.
Аналіз журналів, отриманих від кінцевих точок / служб.
Визначте серйозність журналів, отриманих за допомогою аналізу журналів. Підтримувані можливості для спеціальних правил.
Можливість відхиляти галасливі сповіщення, щоб обмежити переповнення непотрібних даних.
Усі мережі різні, і наявність гнучкості для створення власних правил є обов’язковою.
Wazuh — це чудовий інструмент, який дозволяє нам не лише збирати журнали з наших кінцевих точок, а й має вбудовані правила, які аналізують вміст наших журналів для виявлення атак.
Wazuh також надає:
Оцінка конфігурації
Моніторинг цілісності файлів
Виявлення вразливостей
І багато іншого!
Завантажувати та аналізувати журнали – це чудово, але де ці журнали зберігатимуться? Для нас вкрай важливо забезпечити архітектуру внутрішнього сховища, яка дозволяє:
Зберігання, пошук і перегляд даних (наші зібрані події безпеки)
Висока доступність
Надійна продуктивність
Можливість масштабування
Wazuh-Indexer, який є розгалуженою версією OpenSearch від Wazuh, дозволяє нам робити саме це. Його багатофункціональний API також дозволяє нам підключати інші інструменти до стеку Wazuh-Indexer, такі як Grafana, Elastalert тощо.
Зберігання наших журналів — це лише одна частина головоломки. Якщо наші аналітики SOC не зможуть легко переглядати, орієнтуватися, сортувати та шукати загрози безпеці чи стек, це справді не годиться. Ми б повільно вмирали від виснаження, намагаючись перебрати всі ці колоди, намагаючись знайти голку в стозі сіна.
Наші інструменти візуалізації повинні давати нам можливість:
Переглядайте журнали за допомогою віджетів / інформаційних панелей / тощо.
Швидкий пошук і перегляд даних.
Підтримка можливості читання з кількох сховищ журналів (Wazuh-Indexer, файли csv, MySQL тощо)
Grafana — це наш рекомендований вибір, коли мова йде про наш інструмент візуалізації. Grafana стає легшою (порівняно з Kibana), повністю настроюється, багата попередньо вбудованими віджетами, підтримується сильною спільнотою та пропонує підтримку кількох клієнтів!
Grafana дозволяє нам створити підхід «єдиного скла» для перегляду всіх наших подій безпеки.
Окрім простого аналізу наших журналів, нам потрібен спосіб збагатити наші журнали інтелектуальними даними, щоб допомогти нашому аналітику швидко помітити потенційну зловмисну активність. Наприклад, ця IP-адреса, яку я бачу під час взаємодії з моїм веб-сайтом, є шкідливою чи ні? Нам потрібне рішення, яке може:
Enrich отримав журнали з інформацією про загрози, зібраною від різних постачальників.
Розбирайте та зберігайте вибрані відповіді, щоб зберігати лише важливі дані.
Автоматизовано, щоб вашим аналітикам SOC не доводилося вручну збагачувати отримані журнали.
Перше призначення платформи OpenCTI — забезпечити потужну базу даних для керування знаннями з примусовою схемою, спеціально розробленою для аналізу кіберзагроз і кібероперацій.
MISP забезпечує тегування метаданих , канали , візуалізацію та навіть дозволяє інтегруватись з іншими інструментами для подальшого аналізу завдяки своїм відкритим протоколам і форматам даних .
Обидва інструменти пропонують багатий API, який дозволяє нам автоматизувати пошук інформації про загрози на льоту!
Оскільки команда SOC зростає, нам потрібно надати платформу, яка дозволить їм співпрацювати, збагачувати та реагувати на сповіщення. Надання посібників, завдань і процедур для ваших аналітиків SOC допоможе їм керувати виявленими сповіщеннями та дозволить зосередитися на КРИТИЧНИХ сповіщеннях.
Платформа для перегляду та реагування на події ВИСОКОГО рівня серйозності.
Дозволити співпрацю з кількома аналітиками SOC.
Дозволити відповідні дії, щоб аналітики могли запускати події на своїх кінцевих точках.
TheHIVE дає нам можливість керувати, організовувати, співвідносити ваші інциденти та автоматизувати ваш судово-медичний аналіз, одночасно використовуючи потужні можливості для співпраці.
У той час як Cortex забезпечує дослідження спостережуваних (хешів файлів, IP-адрес, доменів тощо) від сторонніх або застарілих служб і автоматизовану активну відповідь.
Оскільки кількість наших журналів збільшується, нам потрібен інструмент, який може автоматизувати багато наших завдань, наприклад:
Створення кейса
Аналіз фішингу
Невдала перевірка стану здоров'я
Формування звіту
Буквально все :)
Усі інструменти, згадані в цій публікації, надають власний API, до якого ми можемо підключити нашу платформу SOAR, щоб автоматизувати будь-що!
Shuffle — це інтерпретація SOAR із відкритим кодом. Він має на меті надати всі можливості, необхідні для передачі даних у межах підприємства за допомогою додатків plug-and-play , що робить автоматизацію доступною для всіх. Це має усунути потребу в кодері в команді (я все ж пропоную мати принаймні одного...), розширюючи можливості кожного, маючи можливість розгортати нові, складні (або прості) робочі процеси за хвилини, а не за години чи дні.
Слідкуйте за серією блогів Frikky , щоб глибше зануритися в Shuffle, перш ніж ми досліджуватимемо його самостійно :)
Отримання сповіщень — це лише половина успіху, ми повинні надати нашим аналітикам SOC можливість ретельно досліджувати сповіщення, взаємодіючи з контрольованими кінцевими точками масштабованим і швидким способом. Деякі техніки включають:
Перелік запущених процесів
Перерахування авторизованих користувачів
Виявлення портів для прослуховування
Перегляд завантажених файлів
Карантин пристрою
І багато іншого!
Без цієї можливості нашому аналітику SOC важко швидко оцінити фактичну серйозність попередження.
Velociraptor — це вдосконалений цифровий інструмент криміналістики та реагування на інциденти, який покращує видимість ваших кінцевих точок. Натиснувши (кілька) кнопок, ми можемо здійснити цілеспрямований збір цифрових криміналістичних доказів одночасно на наших кінцевих точках зі швидкістю та точністю. Їх надійний API дозволяє нам автоматизувати та ініціювати збір доказів, коли нам це потрібно.
Оскільки наш стек уже побудований, нам потрібно стежити за справністю нашого загального стеку SIEM, щоб забезпечити безперебійну роботу та мінімізувати ризик пропуску сповіщень. Мені подобається розглядати моніторинг у два етапи:
Ресурси кінцевої точки (ЦП, оперативна пам’ять, диск, процеси тощо)
Час роботи WebUI
Наприклад, можливо, служба Grafana працює нормально, але в брандмауер внесено зміни, які забороняють користувачам доступ до Grafana WebUI. Хоча сама Grafana справна, наші аналітики не зможуть переглядати сповіщення без доступу до WebUI, що зрештою зробить Grafana марною, доки проблему не буде вирішено.
InfluxDB у поєднанні з агентом Telegraf дозволяє нам збирати всі показники кінцевих точок і пропонує вбудовані сповіщення про те, коли досягаються порогові значення або критичні процеси (такі як wazuh-indexer) не виконуються. Це дозволяє нашій команді інженерів завчасно реагувати на потенційні проблеми, перш ніж вони переростуть до серйозних наслідків.
Uptime Kuma — це інструмент моніторингу, який можна використовувати для моніторингу веб-сайтів і програм у режимі реального часу. Особливості включають:
Відстежує час безвідмовної роботи веб-сайтів HTTP(s), TCP-портів і контейнерів Docker і отримує таку інформацію, як записи DNS.
Надсилає сповіщення електронною поштою (SMTP), Telegram, Discord, Microsoft Teams, Slack, рекламні SMS, Gotify і понад 90 служб сповіщень.
Підтримує кілька мов.
Надає кілька сторінок стану.
Забезпечує підтримку проксі.
Відображає інформацію про сертифікат SSL.
Зіставляє сторінку стану з доменом.
Безпека – завдання не з легких. Це також не повинно розбити банк. У нас є безліч інструментів з відкритим кодом, які дозволяють створити власний стек SIEM з мінімальними витратами. Гнучкість Open Source також дозволяє нам налаштовувати все, що стосується ваших унікальних мереж і потреб. У цій серії ми детально зануримося в кожен із цих інструментів, щоб допомогти вам стати посібником, коли ви почнете створювати наш власний SOC, який відповідає рівню комерційних інструментів, які зараз є на ринку.
Наша стратегія розгортання (опублікована в наступних публікаціях) буде такою:
Wazuh Indexer (OpenSearch)
Панелі інструментів Wazuh (панелі інструментів OpenSearch)
Грейлог
Wazuh Менеджер / Агенти
Графана
MISP
OpenCTI
TheHIVE / Cortex
Велоцираптор / Агенти
Перетасувати
InfluxDB / Телеграф
Час роботи Кума