WebDisk
Security

Скільки шарів має безпека Ваших файлів? За лаштунками стеку open source у WebDisk

Data publikacji:

Блог WebDisk · категорія: Безпека · час читання: ~9 хвилин

Коротко:- Безпека WebDisk – це не один продукт, а система шарів: застосунковий фаєрвол і мережевий зонд на периметрі, датчики всередині систем, централізована кореляція подій та автоматичне сповіщення цілодобово.- Ми будуємо її на перевірених проєктах open source – зокрема Suricata, Wazuh, Falco, open-appsec – а за всім спостерігаємо на одному екрані.- Усе поєднує один принцип: жоден окремий засіб захисту не є безвідмовним – тому кожен шар страхує решту.

Коли Ви довіряєте комусь свої файли, насправді Ви купуєте дві речі: технологію та пильність. Про технологію ми писали в попередніх частинах цього циклу – про шифрування, доступ без постійних ключів і копії, які неможливо видалити. Сьогодні запрошуємо за лаштунки другої частини: як виглядає система, яка вдень і вночі стежить за нашою платформою – і чому ми побудували її з елементів open source. Англійською такий набір інструментів, що працюють разом, називається стеком – і саме цього слова ми тут дотримуватимемося.

Філософія: сховище за мурами

У безпеці ми не віримо в поодинокі чудодійні рішення. Ми віримо в багатошаровий захист (defense in depth) – принцип, старший за інформатику, знайомий із будь-якого банку: сховище має мури, потім броньовані двері, потім сейф, а за всім стежать камери й датчики. Зловмиснику довелося б долати кожен шар по черзі – і кожен із них має окрему сигналізацію.

Наша платформа працює так само. Перш ніж запит з інтернету дійде до Ваших файлів, він проходить через послідовні пункти контролю; а навіть якби якийсь із них не спрацював, наступні шари спостерігають за тим, що відбувається далі, – і здіймають тривогу, максимально скорочуючи час між подією та реакцією.

Чому open source?

Усі ключові елементи нашого стеку безпеки – це проєкти з відкритим кодом. Це свідоме рішення з трьох причин:

  1. Прозорість. У закритих продуктах безпеку доводиться приймати на віру. У відкритих – кожен механізм можна перевірити, а процеси повідомлення про помилки та їх виправлення є публічними: видно не лише код, а й те, як проєкт реагує на виявлені слабкі місця.
  2. Незалежність. Ми не є заручниками ліцензії чи прайс-листа. Ми можемо налаштовувати, поєднувати та замінювати компоненти так, як цього вимагає наша архітектура, – а не так, як дозволяє договір.
  3. Галузеві стандарти. Suricata, Wazuh чи Falco – це інструменти, на які команди безпеки спираються роками; користуючись ними, ми користуємося також досвідом усієї галузі.

Одне чесне застереження: open source сам собою не дає безпеки – він дає можливість перевірки. Безпека виникає з конфігурації, налаштування та щоденної роботи з цими інструментами. І саме про цю роботу – решта цієї статті.

Шар перший: периметр – фаєрвол, який навчається

Увесь трафік з інтернету спершу потрапляє на наші периметрові сервери. Там працюють два незалежні механізми:

WAF (Web Application Firewall) – застосунковий фаєрвол на основі проєкту open-appsec, який аналізує HTTP-запити, спрямовані до наших застосунків. На відміну від класичних фаєрволів зі списком жорстких правил, open-appsec використовує машинне навчання: він будує модель нормальної поведінки кожної послуги, щоб виявляти відхилення – зокрема й такі, яких ще немає в жодній базі сигнатур. Режим роботи ми добираємо для кожної послуги окремо, залежно від зрілості моделі: частину послуг фаєрвол захищає активно, блокуючи підозрілі запити, а решта працює в режимі навчання та виявлення, у якому трафік аналізується й живить наступні шари, описані нижче, – блокування вмикаємо, коли модель конкретної послуги дозріє.

Suricata – мережевий зонд, який аналізує трафік на рівні пакетів. Він працює з десятками тисяч правил виявлення, що оновлюються постійно: розпізнає шаблони сканування, спроби використання відомих вразливостей, підозрілу поведінку протоколів. Працює на всьому периметрі нашої інфраструктури – не лише перед застосунками, а й перед допоміжними службами.

![Фрагмент нашої панелі безпеки в Grafana. Зелена плитка означає, що компонент живий і звітує; 46,8 дня – це найкоротший час до завершення терміну дії сертифіката в усьому парку серверів; цей час ми контролюємо автоматично, з тривогою задовго до кінцевої дати.](img-grafana-secstack.png)

Шар другий: усередині – датчики там, де відбувається робота

Фаєрвола на периметрі недостатньо – добра безпека припускає, що колись хтось зможе його обійти. Тому друга лінія датчиків працює всередині платформи:

Falco стежить за активними контейнерами та системами в реальному часі – на рівні ядра операційної системи (технологія eBPF). Він виявляє поведінку, якої не мало б бути: процес, що раптом читає чутливі файли, контейнер, який намагається запустити неочікувану команду, нетипову мережеву активність. Це відповідник датчика руху в сховищі – навіть якщо хтось подолав двері, усередині він залишає сліди, і саме ці сліди ми вловлюємо.

До цього додається моніторинг цілісності системних файлів на ключових серверах платформи (несанкціонована зміна конфігурації залишає слід) та класичні механізми посилення захисту систем – від автоматичного блокування адрес, які намагаються підібрати паролі, до обмежувальних прав доступу.

Шар третій: одна картина – SIEM, який складає сигнали в ціле

Окремий датчик бачить лише свій фрагмент. Сила всієї системи – це кореляція: події – з фаєрвола, з мережевого зонда, з датчиків runtime, з операційних систем – надходять до центральної системи класу SIEM на основі проєкту Wazuh, яку живлять агенти, розміщені на всьому парку серверів.

Саме тут окремі сигнали складаються в історію: невдалий вхід на одному сервері – це шум; те саме джерело, яке сканує порти, зачіпає фаєрвол і підбирає паролі на трьох системах, – це вже шаблон атаки. Wazuh класифікує події за важливістю, а в певних сценаріях уміє зреагувати автоматично – не чекаючи на людину.

Паралельно логи надходять до центральної аналітичної платформи, де вони зберігаються й доступні для пошуку – адже в безпеці не менш важлива за виявлення можливість відтворити перебіг подій із точністю до секунди.

Шар четвертий: шукаємо діри в себе – перш ніж їх знайде хтось інший

Захист – це не лише очікування на атаку. Постійний елемент нашої роботи – це активний пошук власних слабких місць:

  • Сканери вразливостей регулярно просвічують усю інфраструктуру – від операційних систем до вебзастосунків і конфігурації TLS.
  • Безпека ланцюга постачання: кожен реліз наших застосунків проходить через pipeline, який генерує перелік компонентів (SBOM), а залежності автоматично перевіряються на відомі вразливості – ще до того, як потраплять на продакшн.
  • Виявлені вразливості потрапляють до єдиної, центральної системи, яка впорядковує їх за важливістю і стежить за термінами усунення – що серйозніша вразливість, то коротший термін.
  • Сертифікати та шифрування моніторяться безперервно – про сертифікат, термін дії якого спливає, ми знаємо задовго до того, як його помітить будь-хто ззовні.

Шар п’ятий: усе на одному екрані – і під зовнішнім наглядом

Кожен елемент стеку звітує про свій стан до централізованого моніторингу на основі Grafana та Prometheus. Команда постійно бачить стан кожного шару: чи працює зонд, чи аналізує фаєрвол трафік, чи не перестав якийсь датчик звітувати. Нижче – фрагмент справжнього перегляду трафіку, який аналізує наш мережевий зонд:

![Перегляд трафіку, який аналізує зонд Suricata: спокійний перебіг із характерними піками – це, зокрема, фонові інтернет-сканування, які зонд фіксує безперервно.](img-suricata.png)

Система сповіщає автоматично о будь-якій порі дня й ночі – повідомлення надходять до команди негайно, незалежно від того, чи хтось саме дивиться в екран. А оскільки «хто стежить за вартовим?» – це в моніторингу засадниче питання, сама система моніторингу перебуває під наглядом незалежного вартового, який працює поза нашою інфраструктурою і здійняв би тривогу навіть тоді, якби вся наша платформа замовкла.

Частину цієї видимості ми, зрештою, передаємо Вам: публічна сторінка status.webdisk.io показує в реальному часі доступність наших послуг – без прикрас, просто із системи моніторингу.

![Публічна сторінка статусу послуг WebDisk – доступність наших застосунків у реальному часі](img-status.png)

Найважливіший шар: люди та звички

Інструменти не замінять культури роботи. Стек має сенс, бо за ним стоїть щоденна практика:

  • правила та винятки налаштовуються – система, яка кричить тисячу разів на день без причини, привчає людей ігнорувати тривоги; наші детекції проходять цикл налаштування, доки тривога не означатиме тривогу,
  • конфігурація стеку живе в репозиторіях як код – зміни версіонуються та є відтворюваними,
  • процедури й оцінки ризику (зокрема DPIA для функцій, що обробляють дані) записані й оновлюються, а програму відповідності ми будуємо на основі визнаних рамок безпеки,
  • і нарешті – ми припускаємо ненадійність власних засобів захисту. Це не песимізм, а метод: кожен шар існує тому, що якийсь інший колись може підвести.

Цей останній принцип стосується також нас самих. Тому ми публікуємо security.txt і політику повідомлення про вразливості: якщо Ви дослідник безпеки й знайдете в нас слабке місце, скажіть нам про це – ми воліємо почути це від Вас, ніж дізнатися з інциденту.

Що з цього випливає для Вас

Порахуймо: периметр, внутрішній простір, кореляція, власні тести, моніторинг – п’ять шарів технології та один людський. Ця система працює у фоновому режимі щоразу, коли Ви завантажуєте файл до WebDisk Files або надсилаєте комусь посилання через WebDisk Send. Вам не потрібно про неї знати – і саме в цьому суть. А там, де безпека стикається з Вашими рішеннями, ми передаємо Вам конкретні інструменти, які описали в попередніх частинах циклу: шифрування в стані спокою (SSE), доступ без постійних ключів (STS) і сховища WORM з функцією Anty-Ransomware.

Безпека – це процес, а не стан, тому цей набір безперервно еволюціонує: додаються нові детекції, нові шари, нові тести. Якщо у Вас є запитання про те, як ми захищаємо Ваші дані, – або Ви хочете поговорити про вимоги безпеки у Вашій організації – напишіть нам.


Стаття є частиною циклу про безпеку даних у послугах WebDisk. Попередні частини: шифрування в стані спокою (SSE-S3, SSE-KMS, SSE-C), доступ до S3 через STS/SSO та S3 Object Lock і захист Anty-Ransomware.

Скільки шарів має безпека Ваших файлів? За лаштунками стеку | WebDisk