Skip to content

Jet-Security-Team/Jet-Container-Security-Framework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 

Repository files navigation

Jet Container Security Framework (JCSF)

Введение

Контейнеры давно и прочно вошли в жизнь IT - все больше приложений работают в них, все больше компаний переходят с классических монолитных приложений на микросервисные. Тема безопасности контейнеров, сред контейнеризации (например, Docker) или контейнерной оркестрации (например, k8s), образов контейнеров тоже далеко не нова: существует множество лучших практик, рекомендаций производителей и просто устоявшихся подходов. Нам в нашей работе не хватало чего-то одного, агрегирующего и систематизирующего все эти знания. Поэтому мы решили создать Jet Container Security Framework, являющийся квинтэссенцией наиболее популярных рекомендаций, практик и нашего опыта.

Важный дисклеймер

В публичный доступ выложены не все наши наработки по JCSF. Мы считаем, что основная часть фреймворка JCSF должна быть публичным достоянием: общее описание абстракций, список контролей и их расположение на уровнях зрелости навсегда останутся общедоступными.

Однако, есть и “закрытая” часть, которую мы реализуем в наших проектах по аудиту с использованием JCSF. В ней есть

  • опросные листы для более удобного сбора информации “оффлайн”;
  • супердетальные примеры того, “как проверить, что та или иная практика ДЕЙСТВИТЕЛЬНО выполняется”, а также примеры того, как необходимо реализовывать КАЖДУЮ практику;
  • динамическая “иллюминация” ячеек с практиками, степенью их выполнения;
  • расширенный и кастомизируемый отчет по аудиту на основе JCSF.

Если вас интересует аудит по нашему фреймворку JCSF - обращайтесь к нам (можно писать на dso@jet.su)

R&D и дальнейшие планы:

  • Разметить практики, применимые только к docker-swarm, docker compose, OpenShift.
  • Описать примеры реализации каждой практики

Описание JCSF

При обеспечении безопасности контейнеров на протяжении всего их жизненного цикла часто возникает вопрос «А что действительно нужно делать вначале и что можно сделать чуть позже?». Ведь если сделать “всю безопасность” сразу, то ничего работать не будет вообще :)

Поэтому мы предлагаем смотреть на безопасность контейнерной инфраструктуры и жизненный цикл контейнеров через 5 абстракций (ДОМЕНОВ):

  • Безопасность узлов (nodes);
  • Безопасность оркестратора (orchestrator);
  • Безопасность образов (images);
  • Безопасность манифестов (manifests);
  • Безопасность контейнеров в рантайм (container).

image.png

В каждом домене нужно выполнять определенный набор действий (контролей). Некоторые из контролей (например, управление событиями безопасности или управление секретами) могут выполняться в нескольких доменах (но разными способами и\или инструментами).

В свою очередь, каждый из контролей состоит из набора практик (задач), которые необходимо выполнять на том или ином этапе зрелости компании (и процессов защиты контейнерной инфраструктуры).

image.png

Для определения уровня зрелости в рамках домена, используются уровни зрелости JCSF:

  • Uninitiated - L0;
  • Beginners - L1;
  • Intermediate - L2;
  • Advanced - L3;
  • Experts - L4

Графические результаты

Для визуализации получаемых в результате аудита (или самооценки компании) контейнерной инфраструктуры мы добавили лист “Результаты”, где на лепестковой диаграмме отображаются “успехи” по каждому домену.

На каждом листе, содержащем в названии “sec” сгруппированы практики по уровням зрелости (по аналогии с большинством общеизвестных фреймворков):

  • Уровень 0: Uninitiated

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

  • Уровень 1: Beginners

На этом уровне зрелости практик в компании начинают появляются инструменты, используемые при защите контейнеров с минимальной зоной покрытия и без автоматизации. Появляются базовые процессы.

  • Уровень 2: Intermediate

Процессы на этом уровне становятся повторяемыми и управляемыми, происходит расширение зоны покрытия используемых инструментов, внедрение автоматизации. Компания начинает применять методики для планирования, выполнения и отслеживания активностей. Однако эти методики могут быть не всегда последовательными или полностью документированными. Инструменты по прежнему не покрывают весь процесс защиты контейнеров.

  • Уровень 3: Advanced

На данном уровне фактически инструменты контейнерной безопасности обеспечивают максимальное покрытие и автоматизацию. Все процессы являются последовательными и полностью документированными

  • Уровень 4: Experts

Когда все процессы и инструменты развиты максимально, нет предела совершенству. Можно по прежнему что-то улучшить и повысить зрелость.

Материалы, используемые при создании

Для создания фреймворка были проанализированы и использованы следующие материалы:

Почта для связи с нами dso@jet.su

About

Jet Container Security Framework (JCSF)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published