Обзор проектов безопасности Kubernetes на KubeCon Europe 2023

Обзор проектов безопасности Kubernetes на KubeCon Europe 2023

23 мая 2023 г.

Многие предприятия, внедряющие Kubernetes, не осознают, насколько небезопасным он может быть на самом деле из коробки  , и даже когда они это понимают, они не знают, что с этим делать.

А поскольку Kubernetes — чрезвычайно сложный и гибкий инструмент, который в производственной среде может состоять из сотен, если не тысяч движущихся частей , — понимание уязвимостей Kubernetes, потенциальных решений, а также соответствующих правил и тенденций может отнимать много времени и быть сложной задачей.

Для большинства предприятий это слишком упрощает создание серьезных юридических проблем или проблем с безопасностью в их кластерах и рабочих приложениях.

На KubeCon Europe 2023 я был впечатлен (и рад видеть) количеством решений для обеспечения безопасности, выходящих на рынок.

Начиная с 2022 года, главной темой KubeCon Europe 2023 была безопасность цепочки поставок программного обеспечения , т. е. обеспечение уверенности в том, что вы знаете, что работает в вашем кластере, и что он свободен от уязвимостей.

Я был поражен тогда, как и в последние годы, важностью безопасности цепочки поставок программного обеспечения. Благодаря облачным приложениям, контейнеризации и Kubernetes современные организации, занимающиеся разработкой программного обеспечения, участвуют в гонке вооружений со злоумышленниками, которые стремятся подорвать и отравить наше программное обеспечение.

Поэтому я был рад познакомиться с несколькими дополнительными проектами на KubeCon Europe 2023, посвященными решению проблем безопасности Kubernetes.

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

Нарушение безопасности Kubernetes

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

Хотя я не смог присутствовать лично, благодаря дистанционным и постконференционным беседам с теми, кто там был, конференция казалась такой же захватывающей, как и всегда!

Хотя на конференции не было никаких выдающихся новых тенденций, было много инструментов и дискуссий о безопасности Kubernetes. Чтобы все было ясно, я разделяю безопасность k8s на три отдельных аспекта: аттестация, происхождение и SBOM:

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

* Происхождение: аудиторский след того, откуда появился артефакт и кто с ним взаимодействовал. Часто используется в связи с аттестацией, если что-то не так.

* Спецификация программного обеспечения (SBOM): какие пакеты и зависимости внутри артефакта? Они все чаще необходимы для регулирования и демонстрации клиентам.

Имея это в виду, давайте рассмотрим решения.

ОпенКлэрити

OpenClarity состоит из набора инструментов, предназначенных для анализа различных уровней облачного стека, от безопасности до наблюдаемости.

К этому сообщению относятся два компонента: KubeClarity и VMClarity, которые создают SBOM и выполняют анализ уязвимостей для кластеров Kubernetes и виртуальных машин соответственно.

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

Если вы не хотите устанавливать каждый из компонентов самостоятельно, их можно приобрести как часть Cisco Panoptica.

Поддержка включает следующие генераторы SBOM и сканеры уязвимостей:

* Сифт * CycloneDx-gomod * Просто * Жалоба * Отслеживание зависимостей

Ниже мы рассмотрим некоторые из этих проектов более подробно.

VMClarity работает аналогично, но в контексте виртуальных машин, используемых облачными службами для размещения контейнеров и кластеров. По сравнению с контейнерами виртуальные машины могут быть столь же (или даже более) уязвимыми для угроз, и им обычно требуются сложные инструменты для анализа.

По аналогии с KubeClarity, VMClarity поддерживает объединение нескольких инструментов в один пользовательский интерфейс и интерфейс командной строки.

в целом

in-toto – это проект с открытым исходным кодом, который фокусируется на аттестационной части безопасности цепочки поставок программного обеспечения. Вы используете его для определения «макета» проекта, т. е. того, как различные компоненты должны сочетаться друг с другом.

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

Просто

Trivy – это зрелый и комплексный инструмент с открытым исходным кодом от Aqua Security, который поддерживает сканирование нескольких источников, от файловых систем до контейнеров и ВМ. Trivy также смотрит не только на уязвимости, но и сканирует лицензии, секреты, инфраструктуру как неправильную конфигурацию кода и многое другое.

Он поддерживает различные форматы вывода SBOM, аттестацию с использованием in-toto, а также сканирование аттестации на наличие уязвимостей. Чтобы связать все эти функции воедино, Trivy поддерживает экосистему с подключаемыми модулями IDE, CI/CD и оператором Kubernetes.

Slim.ai

Исторически Slim.ai был нацелен на то, чтобы помочь вам понять содержание изображения и то, как "урезать" его до самого необходимого. . Теперь платформа расширила набор функций, включив сканирование уязвимостей.

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

Затем вы можете использовать функцию «усилить», чтобы создать новую версию образа, в которой будут удалены все уязвимости и посторонние пакеты.

Структура обновления

Распространенной причиной небезопасного программного обеспечения являются устаревшие версии пакетов, но как вы можете быть уверены, что обновление соответствует заявленному и не вызовет новых проблем?

Подписание релиза — или аттестация — было горячей темой на KubeCon среди поставщиков, и многие из них предлагали свои собственные решения. Особенно выделялся недавно выпущенный CNCF проект The Update Framework (TUF).

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

Сифт

Syft – популярный инструмент командной строки с открытым исходным кодом, созданный Якорь для создания SBOM из образов контейнеров и файловых систем. Он предназначен для предоставления каталога зависимостей для других инструментов, которые можно использовать в качестве источника данных.

Он поддерживает многие популярные языки программирования, менеджеры пакетов и форматы образов контейнеров.

Благодаря поддержке различных форматов файлов SBOM и настраиваемых шаблонов отчетов Syft стал идеальным компонентом для цепочек инструментов сканирования уязвимостей.

Жалоба

Grype — еще один популярный инструмент с открытым исходным кодом от Anchore. Работая с файлами SBOM, Grype сканирует образы контейнеров и файловые системы на наличие уязвимостей. Grype поддерживает различные форматы вывода для уязвимостей и настраиваемые шаблоны для вывода.

магазин

sigstore – это еще один набор инструментов, ориентированных на подтверждение и происхождение. В пакет входят два инструмента, о которых я несколько раз слышал на KubeCon: Cosign и Рекор.

Cosign используется для подписи контейнеров различными способами. Он хорошо интегрирован с другими инструментами с открытым исходным кодом, такими как Kyverno.

Rekor — это защищенный от несанкционированного доступа реестр метаданных, созданных в рамках проекта цепочки поставок программного обеспечения. Это означает, что стороны могут запрашивать метаданные, чтобы помочь им принимать решения на основе решений, ранее принятых другими. Это не очень известный проект, но его популярность растет.

Кьюбскейп

Kubescape — это комплексная платформа безопасности Kubernetes и проект песочницы CNCF. Он может сканировать кластеры, диаграммы Helm и манифесты YAML для обнаружения неправильных конфигураций. Он поддерживает различные платформы, в том числе NSA-CISA, MITRE ATT& ;CK® и сравнительный анализ СНГ.

Цепной страж

Используя очень определенный корпоративный подход, Chainguard невозможно попробовать, не поговорив сначала с их отделом продаж. Но насколько я могу судить, он состоит из двух основных продуктов.

Образы Chainguard – это специализированные усиленные образы, занимающие минимум места, обещающие отсутствие уязвимостей, минимальные размеры и поставляемые с SBOM.

Chainguard Enforce сочетает в себе создание политик для вашей цепочки поставок программного обеспечения с применением этих политик. Вы пишете политики в YAML или используете инструмент CLI для настройки агента Kubernetes, который отчитывается перед службой. Вы можете просматривать отчеты через интерфейс командной строки или графический интерфейс.

Политики могут включать подписание изображений, включение SBOM и многое другое.

У Chainguard также есть несколько проектов с открытым исходным кодом. Наиболее популярным является apko, используемый для создания образов OCI из пакетов APK.

Фалько

Falco – это известное решение для обеспечения безопасности с открытым исходным кодом, первоначально созданное Sysdig. Это инкубационный проект CNCF и один из немногих (насколько я могу судить) вариантов в этом списке, который использует eBPF для поиска уязвимостей.

Это означает, что для установки требуется несколько дополнительных шагов, и вы можете протестировать его только в системах Linux. Однако после настройки Falco он работает более эффективно, чем любой контейнерный агент, и может обнаруживать уязвимости на всех уровнях системы.

Будущее сложно

Надеюсь, вам понравился этот обзор, и вы нашли для себя несколько инструментов, которые помогут защитить ваше предприятие.

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

Гонка вооружений между нападающими и защитниками, похоже, не в пользу защитников. А развертывание решений — сложная задача.

Сейчас самое время найти инструменты и рабочие процессы, которые подходят вам и вашей организации, прежде чем вы станете мишенью.

Хорошего дня!


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE