Buildg: интерактивный debugger для Dockerfile
Всем привет!
При помощи buildg можно упростить процесс поиска ошибок при проработке Dockerfile. При помощи него можно:
🍭 Управлять процессом выполнения команды, устанавливать breakpoints
🍭 Взаимодействовать с образом через interactive shell
С перечнем команд, доступных утилите, можно ознакомиться здесь. А в последнем релизе была добавлена интеграция с IDE (в том числе VS Code), чтобы сделать debug-процесс еще более наглядным и удобным.
Для ознакомления с принципами и процессом работы можно ознакомиться со статьей от Авторов buildg.
Всем привет!
При помощи buildg можно упростить процесс поиска ошибок при проработке Dockerfile. При помощи него можно:
🍭 Управлять процессом выполнения команды, устанавливать breakpoints
🍭 Взаимодействовать с образом через interactive shell
С перечнем команд, доступных утилите, можно ознакомиться здесь. А в последнем релизе была добавлена интеграция с IDE (в том числе VS Code), чтобы сделать debug-процесс еще более наглядным и удобным.
Для ознакомления с принципами и процессом работы можно ознакомиться со статьей от Авторов buildg.
GitHub
GitHub - ktock/buildg: Interactive debugger for Dockerfile, with support for IDEs (VS Code, Emacs, Neovim, etc.)
Interactive debugger for Dockerfile, with support for IDEs (VS Code, Emacs, Neovim, etc.) - ktock/buildg
Inspektor Gadget: анализ действий контейнера
Всем привет!
Inspektor Gadget – набор утилит, которые могут быть использованы для повышения уровня ИБ кластера.
Функционально он разделен на блоки:
🍭 Advice. Поможет с генерацией network policy на основе анализа трафика или с созданием seccomp профиля через анализ записанных syscalls
🍭 Audit. Передача сведений о syscalls в лог-файл
🍭 Profile. Получение данных о stack traces
🍭 Snapshot. Сбор сведений о запущенных процессах
🍭 Top. «Визуализация» чего-либо (активных сессий, чтения/записи и т.д.)
🍭 Trace. Сведения о создании новых процессов
Функционала достаточно много, рекомендуем ознакомиться с ним лично. Что удобно – для каждой функции есть описание того, что она делает, примеры запуска и наглядные результаты ее работы.
Всем привет!
Inspektor Gadget – набор утилит, которые могут быть использованы для повышения уровня ИБ кластера.
Функционально он разделен на блоки:
🍭 Advice. Поможет с генерацией network policy на основе анализа трафика или с созданием seccomp профиля через анализ записанных syscalls
🍭 Audit. Передача сведений о syscalls в лог-файл
🍭 Profile. Получение данных о stack traces
🍭 Snapshot. Сбор сведений о запущенных процессах
🍭 Top. «Визуализация» чего-либо (активных сессий, чтения/записи и т.д.)
🍭 Trace. Сведения о создании новых процессов
Функционала достаточно много, рекомендуем ознакомиться с ним лично. Что удобно – для каждой функции есть описание того, что она делает, примеры запуска и наглядные результаты ее работы.
GitHub
GitHub - inspektor-gadget/inspektor-gadget: The eBPF tool and systems inspection framework for Kubernetes, containers and Linux…
The eBPF tool and systems inspection framework for Kubernetes, containers and Linux hosts. - GitHub - inspektor-gadget/inspektor-gadget: The eBPF tool and systems inspection framework for Kubernete...
Architecture as Code
Привет!
Многие слышали про Compliance as Code, Infrastructure as Code, Documentation as Code и т.д. Суть простая – описать что-либо в формате исходного кода (будь то конфигурация или описание процесса), разместить на условном GitHub и взаимодействовать (развивать) как с обычным «приложением».
Вероятно, автор Diagrams подумал, а почему бы не сделать такое для описания архитектуры? В итоге получился проект, который поддерживает написание архитектуры на Python для следующих платформ: AWS, Azure, GCP, Kubernetes, Alibaba Cloud, Oracle Cloud.
Например, вот такой код:
P.S. Если вам в целом интересна тема автоматизации создания диаграмм/процессов, то рекомендуем обратить внимание вот на эту подборку.
P.P.S. Вообще есть много разных "XXX as Code". В этой статье автор попытался собрать все возможные случаи и их получилось больше 50.
Привет!
Многие слышали про Compliance as Code, Infrastructure as Code, Documentation as Code и т.д. Суть простая – описать что-либо в формате исходного кода (будь то конфигурация или описание процесса), разместить на условном GitHub и взаимодействовать (развивать) как с обычным «приложением».
Вероятно, автор Diagrams подумал, а почему бы не сделать такое для описания архитектуры? В итоге получился проект, который поддерживает написание архитектуры на Python для следующих платформ: AWS, Azure, GCP, Kubernetes, Alibaba Cloud, Oracle Cloud.
Например, вот такой код:
# importsНарисует красивую схему exposed pods, с количеством replica равным 3. Как это будет выглядеть «по факту» можно узнать в документации, а заодно поближе познакомиться с Diagrams.
with Diagram("Exposed Pod with 3 Replicas", show=False):
net = Ingress("domain.com") >> Service("svc")
net >> [Pod("pod1"),
Pod("pod2"),
Pod("pod3")] << ReplicaSet("rs") << Deployment("dp") << HPA("hpa")
P.S. Если вам в целом интересна тема автоматизации создания диаграмм/процессов, то рекомендуем обратить внимание вот на эту подборку.
P.P.S. Вообще есть много разных "XXX as Code". В этой статье автор попытался собрать все возможные случаи и их получилось больше 50.
Mingrammer
Diagrams · Diagram as Code
🔥6
Хранение секретов в git: подходы и способы автоматизации
Всем привет!
Мы писали про разные способы безопасного хранения секретов в git, но нигде не было единого материала, в котором вся эта информация систематизирована и доступно описана.
И вот он появился! Статья от Jann Fischer и Raffaele Spazzoli, посвященная тому, как можно безопасно хранить секреты в git.
Ребята разбирают 2 группы подходов:
🍭 Шифрование секретов в git. При использовании такого подхода в git хранятся секреты в зашифрованном виде (например, Custom Resource – Sealed Secret для k8S). Использование Sealed Secrets, Mozilla SOPS
🍭 Указание «ссылок» на секреты. В этом сценарии в самих конфигурационных файлах хранятся не секреты, а указатели на системы, где эти самые секреты можно получить. Использование External Secrets и Kubernetes Secret Store CSI
Каждый концепт и подход описан, приводятся примеры использования, а также много ссылок на полезные материалы по теме.
Всем привет!
Мы писали про разные способы безопасного хранения секретов в git, но нигде не было единого материала, в котором вся эта информация систематизирована и доступно описана.
И вот он появился! Статья от Jann Fischer и Raffaele Spazzoli, посвященная тому, как можно безопасно хранить секреты в git.
Ребята разбирают 2 группы подходов:
🍭 Шифрование секретов в git. При использовании такого подхода в git хранятся секреты в зашифрованном виде (например, Custom Resource – Sealed Secret для k8S). Использование Sealed Secrets, Mozilla SOPS
🍭 Указание «ссылок» на секреты. В этом сценарии в самих конфигурационных файлах хранятся не секреты, а указатели на системы, где эти самые секреты можно получить. Использование External Secrets и Kubernetes Secret Store CSI
Каждый концепт и подход описан, приводятся примеры использования, а также много ссылок на полезные материалы по теме.
Redhat
A Guide to Secrets Management with GitOps and Kubernetes
Storing confidential data in Git represents a security vulnerability and should not be allowed, even when the Git repository is considered private and implements access controls to limit the audience. How can we overcome this limitation?
👍1
«Гигиена» CI/CD credentials
Всем привет!
Статья, в которой собраны размышления о том, как можно повысить уровень ИБ и снизить вероятность компрометации секретов, используемых в CI/CD.
Авторы рассматривают 3 основных вектора:
🍭 Unrotated Static Credentials. В качестве «противодействия» предлагается использование 3-ей стороны и OIDC provider
🍭 Overly Accessible Credentials. Грамотная настройка прав доступа на различных «уровнях» (Global/User/Repo/Branch)
🍭 Credentials Exposed in Console Logs. Использование возможностей по маскированию
Кроме общих рекомендаций приводится небольшой обзор возможностей таких CI/CD-систем как: GitHub Actions, CircleCI, Jenkins и GitLab CI.
Всем привет!
Статья, в которой собраны размышления о том, как можно повысить уровень ИБ и снизить вероятность компрометации секретов, используемых в CI/CD.
Авторы рассматривают 3 основных вектора:
🍭 Unrotated Static Credentials. В качестве «противодействия» предлагается использование 3-ей стороны и OIDC provider
🍭 Overly Accessible Credentials. Грамотная настройка прав доступа на различных «уровнях» (Global/User/Repo/Branch)
🍭 Credentials Exposed in Console Logs. Использование возможностей по маскированию
Кроме общих рекомендаций приводится небольшой обзор возможностей таких CI/CD-систем как: GitHub Actions, CircleCI, Jenkins и GitLab CI.
Attacking the API: Mindmap инструментов и подходов
Всем привет!
В repo содержится много общей информации, которая может быть полезна, если вы хотите ознакомиться с анализом ИБ API.
Материал разбит на 2 основных блока:
🍭 Recon // Исследование API. Например, HTTP Method Discovery, API Type Discovery и т.д.
🍭 Attacking // Способы атаки на API. Например, Improper Asset Management, Broken User Authentication, Injection и т.д.
Для каждого блока приводятся наглядные mindmap (которые можно скачать в pdf или XMind формата), перечень возможных инструментов автоматизации и полезных материалов.
Всем привет!
В repo содержится много общей информации, которая может быть полезна, если вы хотите ознакомиться с анализом ИБ API.
Материал разбит на 2 основных блока:
🍭 Recon // Исследование API. Например, HTTP Method Discovery, API Type Discovery и т.д.
🍭 Attacking // Способы атаки на API. Например, Improper Asset Management, Broken User Authentication, Injection и т.д.
Для каждого блока приводятся наглядные mindmap (которые можно скачать в pdf или XMind формата), перечень возможных инструментов автоматизации и полезных материалов.
GitHub
GitHub - Cyber-Guy1/API-SecurityEmpire: API Security Project aims to present unique attack & defense methods in API Security field
API Security Project aims to present unique attack & defense methods in API Security field - Cyber-Guy1/API-SecurityEmpire
👍3
Визуализация результатов Kube-Bench в Kyverno Policy Reporter
Всем привет!
У Kyverno есть удобный инструмент визуализации данных – Policy Reporter. При помощи него можно посмотреть сводную информацию по проверкам, а также направлять данные и уведомления в такие каналы, как: Grafana Loki, Elastic Search, Slack, Microsoft Teams и т.д.
Еще одной «особенностью» Policy Reporter является возможность его расширения. Например, можно сделать так, чтобы результаты Kube Bench отображались прямо в интерфейсе.
В статье описан простой алгоритм достижения цели:
🍭 Установить Policy Reporter
🍭 Добавить Policy Report CRD
🍭 Установить Kube-Bench Adapter для Policy Reporter (написанный ребятам из Nirmata)
Готово! При желании можно написать собственные CRD и добавить их в общий Dashboard.
P.S. С документацией Policy Reporter можно ознакомиться по ссылке.
Всем привет!
У Kyverno есть удобный инструмент визуализации данных – Policy Reporter. При помощи него можно посмотреть сводную информацию по проверкам, а также направлять данные и уведомления в такие каналы, как: Grafana Loki, Elastic Search, Slack, Microsoft Teams и т.д.
Еще одной «особенностью» Policy Reporter является возможность его расширения. Например, можно сделать так, чтобы результаты Kube Bench отображались прямо в интерфейсе.
В статье описан простой алгоритм достижения цели:
🍭 Установить Policy Reporter
🍭 Добавить Policy Report CRD
🍭 Установить Kube-Bench Adapter для Policy Reporter (написанный ребятам из Nirmata)
Готово! При желании можно написать собственные CRD и добавить их в общий Dashboard.
P.S. С документацией Policy Reporter можно ознакомиться по ссылке.
Medium
Securing Kubernetes clusters using OSS tools-Part 1
Securing Kubernetes is a critical task for any team whose primary workloads run on multiple clusters. Primarily security needs to be…
👍3
Salus: SBOM Tool от Microsoft
Всем привет!
Тематика анализа и контроля состава ПО становится все актуальнее. И вот недавно Microsoft сделали проект Salus «открытым».
Этот инструмент используется для генерации SPDX 2.2 SBOM, которая содержит характерную информацию:
🍭 Document creation information. Общая информация – кто и когда создал, наименование ПО и т.д.
🍭 File section. Перечень файлов, из которых «состоит ПО», включая SHA-1/256 hash-значения
🍭 Package section. Перечень пакетов, используемых при создании ПО. Для каждого пакета указывается версия, «поставщик» (supplier), SHA-1/256 значение и т.д.
🍭 Relationship section. Описание взаимосвязи компонентов: например, Package и File
И, как обычно, чуть больше info в самом repo проекта: установка, «ключи» запуска и описание некоторых нюансов работы утилиты в определенных окружениях.
Всем привет!
Тематика анализа и контроля состава ПО становится все актуальнее. И вот недавно Microsoft сделали проект Salus «открытым».
Этот инструмент используется для генерации SPDX 2.2 SBOM, которая содержит характерную информацию:
🍭 Document creation information. Общая информация – кто и когда создал, наименование ПО и т.д.
🍭 File section. Перечень файлов, из которых «состоит ПО», включая SHA-1/256 hash-значения
🍭 Package section. Перечень пакетов, используемых при создании ПО. Для каждого пакета указывается версия, «поставщик» (supplier), SHA-1/256 значение и т.д.
🍭 Relationship section. Описание взаимосвязи компонентов: например, Package и File
И, как обычно, чуть больше info в самом repo проекта: установка, «ключи» запуска и описание некоторых нюансов работы утилиты в определенных окружениях.
GitHub
GitHub - microsoft/sbom-tool: The SBOM tool is a highly scalable and enterprise ready tool to create SPDX 2.2 compatible SBOMs…
The SBOM tool is a highly scalable and enterprise ready tool to create SPDX 2.2 compatible SBOMs for any variety of artifacts. - microsoft/sbom-tool
TripleCross: Linux eBPF offensive rootkit
Всем привет!
TripleCross – rootkit, который демонстрирует offensive возможности eBPF. Проект появился на свет в качестве работы h3xduck для защиты степени бакалавра в университете Мадрида.
Доступны следующие «модули»:
🍭 Library injection
🍭 Execution hijacking
🍭 Local privilege escalation
🍭 Backdoor with C2 capabilities
🍭 Rootkit client that allows an attacker to establish 3 different types of shell-like connections
🍭 Persistence
🍭 Stealth
Принцип работы, примеры запуска – все это можно найти в repo. Крайне рекомендуем ознакомиться, т.к. материала достаточно много. Из приятного – все очень подробно описано, есть много схем и комментариев к ним.
P.S. Напоминаем, что подобные инструменты надо использовать строго в образовательных целях. И не использовать в production.
Всем привет!
TripleCross – rootkit, который демонстрирует offensive возможности eBPF. Проект появился на свет в качестве работы h3xduck для защиты степени бакалавра в университете Мадрида.
Доступны следующие «модули»:
🍭 Library injection
🍭 Execution hijacking
🍭 Local privilege escalation
🍭 Backdoor with C2 capabilities
🍭 Rootkit client that allows an attacker to establish 3 different types of shell-like connections
🍭 Persistence
🍭 Stealth
Принцип работы, примеры запуска – все это можно найти в repo. Крайне рекомендуем ознакомиться, т.к. материала достаточно много. Из приятного – все очень подробно описано, есть много схем и комментариев к ним.
P.S. Напоминаем, что подобные инструменты надо использовать строго в образовательных целях. И не использовать в production.
GitHub
GitHub - h3xduck/TripleCross: A Linux eBPF rootkit with a backdoor, C2, library injection, execution hijacking, persistence and…
A Linux eBPF rootkit with a backdoor, C2, library injection, execution hijacking, persistence and stealth capabilities. - h3xduck/TripleCross
Trousseau: использование KMS provider для шифрования данных в Kubernetes
Всем привет!
Для шифрования данных в ETCD можно использовать штатные механизмы Kubernetes. Однако, есть нюанс, что ключи шифрования надо поместить на nodes, иначе возможны сбои. Альтернативный вариант – использование функционала KMS provider: третьей стороны, которая будет отвечать за шифрование, в том числе управлять ключами. При этом в ETCD будут попадать уже зашифрованные сущности.
Для упрощения подобной схемы ребята из Ondat сделали Trousseau – посредника между Kubernetes и KMS (например, HashiCorp Vault).
Схема получается следующая:
🍭 Пользователь создает сущность (например, Secret)
🍭 Kube-apiserver перенаправляет запрос в Trousseau
🍭 Он, в свою очередь просит зашифровать данные у HashiCorp Vault
🍭 Далее шифрованные данные направляются на хранение в ETCD
Преимуществом такой схемы является то, что управлять ключами шифрования проще, к тому же нет потребности их размещения на nodes кластера.
Если хочется «потрогать» руками, то есть удобная интерактивная лабораторная работа. В ней сперва настраивается encryption method, происходит конфигурация Transit Secret Engine в Vault, а затем демонстрируются зашифрованные секреты в ETCD.
Всем привет!
Для шифрования данных в ETCD можно использовать штатные механизмы Kubernetes. Однако, есть нюанс, что ключи шифрования надо поместить на nodes, иначе возможны сбои. Альтернативный вариант – использование функционала KMS provider: третьей стороны, которая будет отвечать за шифрование, в том числе управлять ключами. При этом в ETCD будут попадать уже зашифрованные сущности.
Для упрощения подобной схемы ребята из Ondat сделали Trousseau – посредника между Kubernetes и KMS (например, HashiCorp Vault).
Схема получается следующая:
🍭 Пользователь создает сущность (например, Secret)
🍭 Kube-apiserver перенаправляет запрос в Trousseau
🍭 Он, в свою очередь просит зашифровать данные у HashiCorp Vault
🍭 Далее шифрованные данные направляются на хранение в ETCD
Преимуществом такой схемы является то, что управлять ключами шифрования проще, к тому же нет потребности их размещения на nodes кластера.
Если хочется «потрогать» руками, то есть удобная интерактивная лабораторная работа. В ней сперва настраивается encryption method, происходит конфигурация Transit Secret Engine в Vault, а затем демонстрируются зашифрованные секреты в ETCD.
GitHub
GitHub - ondat/trousseau: Store and access your secrets the Kubernetes native way with any external KMS.
Store and access your secrets the Kubernetes native way with any external KMS. - ondat/trousseau
Debug CoreOS и Silverblue
Привет!
В некоторых операционных системах достаточно сложно искать ошибки из-за банального отсутствия «встроенного инструментария» и запрета на его установку. Например, это характерно для Fedora CoreOS и Fedora Silverblue.
Как быть в таком случае? Есть один инструмент, который поможет с решением задачи – toolbox. По сути он представляет из себя контейнер, в который можно установить все необходимое.
Далее – запускаем его на требуемом сервере и устанавливаем необходимое ПО для debug с помощью
Подробнее об утилите и сценариях использования можно прочесть на сайте и в repo. Общее описание поиска ошибок с toolbox для Fedora CoreOS можно прочесть тут.
Привет!
В некоторых операционных системах достаточно сложно искать ошибки из-за банального отсутствия «встроенного инструментария» и запрета на его установку. Например, это характерно для Fedora CoreOS и Fedora Silverblue.
Как быть в таком случае? Есть один инструмент, который поможет с решением задачи – toolbox. По сути он представляет из себя контейнер, в который можно установить все необходимое.
Далее – запускаем его на требуемом сервере и устанавливаем необходимое ПО для debug с помощью
dnf install. Всё содержимое корневой папки хоста будет доступно здесь: /run/host/. Это позволит использовать функционал утилит без необходимости установки их на хосте.Подробнее об утилите и сценариях использования можно прочесть на сайте и в repo. Общее описание поиска ошибок с toolbox для Fedora CoreOS можно прочесть тут.
containertoolbx.org
Tool for interactive command line environments on Linux
Сеть в Kubernetes: основы
Всем привет!
В статье просто и доступно описаны основы того, как устроена сеть в Kubernetes. В начале приводятся общие сведения: все nodes могут взаимодействовать между собой, каждому pod назначается свой IP, все pod могут взаимодействовать между собой без использования NAT.
Далее Автор углубляется и описывает такие сущности как:
🍭 Service. Что он делает, зачем он нужен и почему «привычное» управление через IP не применимо для Kubernetes, что такое Endpoint.
🍭 Типы Service. ClusterIP, NodePort, LoadBalancer и какая между ними разница.
🍭 Что такое CoreDNS и для чего он используется
🍭 Назначение Kube-proxy. Что он делает, почему IP адреса pod и service такие разные и т.д.
Статья очень простая, но может быть интересна тем, кто хочет приоткрыть дверь понимания логики работы сети внутри Kubernetes.
Всем привет!
В статье просто и доступно описаны основы того, как устроена сеть в Kubernetes. В начале приводятся общие сведения: все nodes могут взаимодействовать между собой, каждому pod назначается свой IP, все pod могут взаимодействовать между собой без использования NAT.
Далее Автор углубляется и описывает такие сущности как:
🍭 Service. Что он делает, зачем он нужен и почему «привычное» управление через IP не применимо для Kubernetes, что такое Endpoint.
🍭 Типы Service. ClusterIP, NodePort, LoadBalancer и какая между ними разница.
🍭 Что такое CoreDNS и для чего он используется
🍭 Назначение Kube-proxy. Что он делает, почему IP адреса pod и service такие разные и т.д.
Статья очень простая, но может быть интересна тем, кто хочет приоткрыть дверь понимания логики работы сети внутри Kubernetes.
Medium
Kubernetes — How does service network work in the cluster
This article is to address how Kubernetes network works with service object in your cluster with some step by step examples. It is mainly…
👍4
Всем привет!
Permission-manager - это open source утилита от итальянской компании SIGHUP, предназначенная для управления Kubernetes RBAC.
Утилита имеет интуитивно понятный графический веб-интерфейс, в котором можно выполнять следующие действия:
🍡Создавать пользователей
🍡Назначать им права доступа на namespaces/кластер
🍡Автоматически генерировать Kubeconfig YAML
Как это работает:
Permission-manager разворачивается в Kubernetes. Для управления правами доступа используются шаблоны (по факту это cluster roles): одни для организации доступа к определенным ресурсам (namespaces), а вторые - для доступа к кластеру. По умолчанию создается 4 таких шаблона с фиксированным набором прав (например, template-namespaced-resources___developer), которые сразу доступны из веб-интерфейса и могут быть назначены пользователям:
🍡Developer (namespace)
🍡Operator (namespace)
🍡Read-only (cluster)
🍡Read-write (он же admin, cluster)
Из коробки шаблонов достаточно мало, поэтому собственные точно придется создавать, как минимум, для доступа к конкретным namespaces. Это можно сделать следующим образом: создать cluster role с необходимыми правами и с названием template-namespaced-resources___Х, где Х - название роли. После деплоя новая роль автоматически появится в веб-интерфейсе вместе с описанием прав доступа для нее.
Несмотря на то, что утилита очень простая и удобная, есть определенные минусы, которые надо иметь в виду:
🍡Нет интеграции с IdP (пользователи создаются в web UI)
🍡Нельзя просмотреть текущих пользователей и их права доступа
🍡Нельзя в веб-интерфейсе менять права (только через templates)
Больше информации можно найти по ссылке: https://github.com/sighupio/permission-manager
Permission-manager - это open source утилита от итальянской компании SIGHUP, предназначенная для управления Kubernetes RBAC.
Утилита имеет интуитивно понятный графический веб-интерфейс, в котором можно выполнять следующие действия:
🍡Создавать пользователей
🍡Назначать им права доступа на namespaces/кластер
🍡Автоматически генерировать Kubeconfig YAML
Как это работает:
Permission-manager разворачивается в Kubernetes. Для управления правами доступа используются шаблоны (по факту это cluster roles): одни для организации доступа к определенным ресурсам (namespaces), а вторые - для доступа к кластеру. По умолчанию создается 4 таких шаблона с фиксированным набором прав (например, template-namespaced-resources___developer), которые сразу доступны из веб-интерфейса и могут быть назначены пользователям:
🍡Developer (namespace)
🍡Operator (namespace)
🍡Read-only (cluster)
🍡Read-write (он же admin, cluster)
Из коробки шаблонов достаточно мало, поэтому собственные точно придется создавать, как минимум, для доступа к конкретным namespaces. Это можно сделать следующим образом: создать cluster role с необходимыми правами и с названием template-namespaced-resources___Х, где Х - название роли. После деплоя новая роль автоматически появится в веб-интерфейсе вместе с описанием прав доступа для нее.
Несмотря на то, что утилита очень простая и удобная, есть определенные минусы, которые надо иметь в виду:
🍡Нет интеграции с IdP (пользователи создаются в web UI)
🍡Нельзя просмотреть текущих пользователей и их права доступа
🍡Нельзя в веб-интерфейсе менять права (только через templates)
Больше информации можно найти по ссылке: https://github.com/sighupio/permission-manager
GitHub
GitHub - sighupio/permission-manager: Permission Manager is a project that brings sanity to Kubernetes RBAC and Users management…
Permission Manager is a project that brings sanity to Kubernetes RBAC and Users management, Web UI FTW - sighupio/permission-manager
chainguard-all-about-that-base-image.pdf
299.2 KB
Аналитика базовых образов
Всем привет!
Ребята из ChainGuard подготовили небольшое исследование на тему наиболее популярных базовых образов. В список попали Alpine, Ubuntu, Golang, OpenJDK и не только.
В отчете можно найти сводную информацию по:
🍭 Уязвимостям в этих образах (с использованием разных сканеров)
🍭Количество уязвимостей с разбивкой по годам (что подтверждает тезис Авторов о росте технического долга)
Супер-нового в отчете нет, но он хорошо помогает структурировать скорее всего известную информацию.
Одним из способов, который может помочь в решении проблемы является использование distroless images, но такой путь подойдет не всем.
Всем привет!
Ребята из ChainGuard подготовили небольшое исследование на тему наиболее популярных базовых образов. В список попали Alpine, Ubuntu, Golang, OpenJDK и не только.
В отчете можно найти сводную информацию по:
🍭 Уязвимостям в этих образах (с использованием разных сканеров)
🍭Количество уязвимостей с разбивкой по годам (что подтверждает тезис Авторов о росте технического долга)
Супер-нового в отчете нет, но он хорошо помогает структурировать скорее всего известную информацию.
Одним из способов, который может помочь в решении проблемы является использование distroless images, но такой путь подойдет не всем.
👍1
Курс: GitOps For Reliable Kubernetes
Всем привет!
Ребята из Traefik подготовили бесплатный курс, посвященный GitOps. Согласно описанию, это двухчасовой курс, который описывает концепт GitOps, а также включает в себя лабораторные работы по конфигурированию Kubernetes-окружения с использованием Git и Flux.
Курс содержит следующие разделы:
🍭 GitOps is Configuration Management
🍭 Templating Manifests With Kustomize
🍭 How Flux Operates
🍭 Managing Flux
🍭 Deploy the Application
🍭 Secure the Application и другие
Зарегистрироваться можно по ссылке в описании. P.S. Есть еще аналогичный курс по ArgoCD, про который мы писали ранее.
Всем привет!
Ребята из Traefik подготовили бесплатный курс, посвященный GitOps. Согласно описанию, это двухчасовой курс, который описывает концепт GitOps, а также включает в себя лабораторные работы по конфигурированию Kubernetes-окружения с использованием Git и Flux.
Курс содержит следующие разделы:
🍭 GitOps is Configuration Management
🍭 Templating Manifests With Kustomize
🍭 How Flux Operates
🍭 Managing Flux
🍭 Deploy the Application
🍭 Secure the Application и другие
Зарегистрироваться можно по ссылке в описании. P.S. Есть еще аналогичный курс по ArgoCD, про который мы писали ранее.
Traefik Academy
GitOps for Reliable Kubernetes | Traefik Academy Class
Learn how to use GitOps for config management in your K8s clusters. This free two-hour course results in a repository you can use immediately. Sign-up today!
🔥3
Infra: управление доступом к Kubernetes и не только
Всем привет!
Основная задача проекта Infra – управление доступом. Пока что только к Kubernetes.
Решение предоставляет набор стандартных ролей: cluster admin, admin, edit, view, logs, exec, port-forward, которые могут назначаться пользователям. При этом можно не только предоставлять права, но и отзывать их. А если набор стандартных ролей вам не подходит – можно добавить собственные.
Поддерживается интеграция с Okta, AzureAD, OIDC, Google в качестве identity provider. В планах добавить поддержку GitHub/Lab.
В итоге получилось минималистичное решение, которое решает достаточно важную задачу. Подробнее можно ознакомиться с ним при изучении документации.
Особенно советуем уделить внимание страницам с “Coming Soon” и “Roadmap” – согласно им, у разработчиков весьма амбициозные планы. Например, доработка для управления доступом к PostgreSQL, MongoDB, SSH, RDP и т.д
Всем привет!
Основная задача проекта Infra – управление доступом. Пока что только к Kubernetes.
Решение предоставляет набор стандартных ролей: cluster admin, admin, edit, view, logs, exec, port-forward, которые могут назначаться пользователям. При этом можно не только предоставлять права, но и отзывать их. А если набор стандартных ролей вам не подходит – можно добавить собственные.
Поддерживается интеграция с Okta, AzureAD, OIDC, Google в качестве identity provider. В планах добавить поддержку GitHub/Lab.
В итоге получилось минималистичное решение, которое решает достаточно важную задачу. Подробнее можно ознакомиться с ним при изучении документации.
Особенно советуем уделить внимание страницам с “Coming Soon” и “Roadmap” – согласно им, у разработчиков весьма амбициозные планы. Например, доработка для управления доступом к PostgreSQL, MongoDB, SSH, RDP и т.д
GitHub
GitHub - infrahq/infra: Infra provides authentication and access management to servers and Kubernetes clusters.
Infra provides authentication and access management to servers and Kubernetes clusters. - infrahq/infra
Distroless Images: подход ChainGuard
Всем привет!
Distroless очень интересный концепт, который может быть полезен как для ИТ, так и для ИБ. Началось все с вопроса: «Насколько маленьким может быть образ?». И дело даже не в его размере, а в том, чтобы оставить только нужное и исключить ненужное.
Например, зачем в запущенном контейнере пакетные менеджеры и bash? (опустим вопросы debug). Именно в этом (если упростить) и заключается концепция distroless – в образ контейнера помещается только ПО и те зависимости, на которые оно «опирается» при работе.
Одними из первопроходцев был Google. Ребята от ChainGuard, в свою очередь, предлагают альтернативный подход к построению таких образов:
🍭 Google предлагает использовать multistage build
🍭 ChainGuard предлагают использовать apko и mélange
Такой подход должен сократить вероятность возникновения ошибки или того, что что-то будет «забыто» при сборке образа. Ребята уже подготовили несколько примеров своих образов, а сама статья дает неплохую справку о том, зачем вообще использовать distroless, если вам хочется больше деталей.
Всем привет!
Distroless очень интересный концепт, который может быть полезен как для ИТ, так и для ИБ. Началось все с вопроса: «Насколько маленьким может быть образ?». И дело даже не в его размере, а в том, чтобы оставить только нужное и исключить ненужное.
Например, зачем в запущенном контейнере пакетные менеджеры и bash? (опустим вопросы debug). Именно в этом (если упростить) и заключается концепция distroless – в образ контейнера помещается только ПО и те зависимости, на которые оно «опирается» при работе.
Одними из первопроходцев был Google. Ребята от ChainGuard, в свою очередь, предлагают альтернативный подход к построению таких образов:
🍭 Google предлагает использовать multistage build
🍭 ChainGuard предлагают использовать apko и mélange
Такой подход должен сократить вероятность возникновения ошибки или того, что что-то будет «забыто» при сборке образа. Ребята уже подготовили несколько примеров своих образов, а сама статья дает неплохую справку о том, зачем вообще использовать distroless, если вам хочется больше деталей.
www.chainguard.dev
Unchained: Our Blog
Read the latest software supply chain & open source security updates, from our opinions on security technologies to research & remedies for the biggest threats.
👍1
Развитие SAST-программы в Razorpay
Всем привет!
В статье описан путь, которые прошли и продолжают проходить ребята из Razorpay при реализации практики статического анализа исходного кода.
Началось все с того, что они решили выбрать какой инструмент им подойдет. Для этого они определили перечень критериев и… самое интересное, что«наличие встроенных правил для анализа» вообще никак не влияло на выбор целевого решения ! Почему это так - описано в статье.
Далее – как обычно: как они настраивали, когда сканировали, как работали с командами. Схемы, графики, описания. Особенно хочется отметить, что в их случае top-down подход не сработал, а bottom-up дал первые результаты.
Также в статье есть интересный блок, посвященный «внутренней продаже услуги» как руководству, так и командам разработки.
В итоге, за год ребята прошли путь от 0 «подключенных» приложений до 200!!!
Всем привет!
В статье описан путь, которые прошли и продолжают проходить ребята из Razorpay при реализации практики статического анализа исходного кода.
Началось все с того, что они решили выбрать какой инструмент им подойдет. Для этого они определили перечень критериев и… самое интересное, что
Далее – как обычно: как они настраивали, когда сканировали, как работали с командами. Схемы, графики, описания. Особенно хочется отметить, что в их случае top-down подход не сработал, а bottom-up дал первые результаты.
Также в статье есть интересный блок, посвященный «внутренней продаже услуги» как руководству, так и командам разработки.
В итоге, за год ребята прошли путь от 0 «подключенных» приложений до 200!!!
Medium
Building a SAST program at Razorpay’s scale
The inner workings of how we build a Static Application Security Testing program at Razorpay
🔥2👍1👎1
KubeEye: обнаружение и аудит ресурсов k8s
Всем привет!
KubeEye – утилита, которая позволяет обнаруживать и проводить аудит конфигураций ресурсов Kubernetes. «Внутри», как обычно, используются OPA-правила.
При помощи KubeEye можно:
🍭 Проводить аудит на соответствие лучшим практикам
🍭Идентифицировать проблемы в Control Plane компонентах
🍭Анализировать состояние nodes и идентифицировать, например, disk pressure
«Из коробки» доступно порядка 30 правил, например: PrivilegeEscalationAllowed, CanModifyWorkloads, ImageTagIsLatest, NodeStatus, KubeletStatus и другие. Также использование инструмента подразумевает возможность создания собственных проверок.
Прочитать про установку, конфигурацию и ознакомиться с планами дальнейшего развития (roadmap) можно в repo проекта.
Всем привет!
KubeEye – утилита, которая позволяет обнаруживать и проводить аудит конфигураций ресурсов Kubernetes. «Внутри», как обычно, используются OPA-правила.
При помощи KubeEye можно:
🍭 Проводить аудит на соответствие лучшим практикам
🍭Идентифицировать проблемы в Control Plane компонентах
🍭Анализировать состояние nodes и идентифицировать, например, disk pressure
«Из коробки» доступно порядка 30 правил, например: PrivilegeEscalationAllowed, CanModifyWorkloads, ImageTagIsLatest, NodeStatus, KubeletStatus и другие. Также использование инструмента подразумевает возможность создания собственных проверок.
Прочитать про установку, конфигурацию и ознакомиться с планами дальнейшего развития (roadmap) можно в repo проекта.
GitHub
GitHub - kubesphere/kubeeye: KubeEye aims to find various problems on Kubernetes, such as application misconfiguration, unhealthy…
KubeEye aims to find various problems on Kubernetes, such as application misconfiguration, unhealthy cluster components and node problems. - kubesphere/kubeeye
👍2
iftree: визуализация сетевых интерфейсов
Привет!
Понимание того, как работает сеть в контейнерах и оркестраторах может быть достаточно сложным процессом. В том числе это зависит от того, что много «объектов» и нет какой-либо визуализации, чтобы посмотреть на «картинку целиком».
С этим может помочь iftree – утилита, которая позволяет визуализировать veth/bridge и предоставлять данные в разных форматах:
🍭 Диаграмма (предоставляются данные для генерации в Graphviz)
🍭 Текст
🍭 Таблица
Инструмент достаточно минималистичный, но может пригодиться для изучения.
Привет!
Понимание того, как работает сеть в контейнерах и оркестраторах может быть достаточно сложным процессом. В том числе это зависит от того, что много «объектов» и нет какой-либо визуализации, чтобы посмотреть на «картинку целиком».
С этим может помочь iftree – утилита, которая позволяет визуализировать veth/bridge и предоставлять данные в разных форматах:
🍭 Диаграмма (предоставляются данные для генерации в Graphviz)
🍭 Текст
🍭 Таблица
Инструмент достаточно минималистичный, но может пригодиться для изучения.
GitHub
GitHub - t1anz0ng/iftree: iftree help understand container networks by visualizing network interfaces( veth bridge lo ) relation…
iftree help understand container networks by visualizing network interfaces( veth bridge lo ) relation , output in text, table, images and dot language. - t1anz0ng/iftree
👍5
Istio Handbook
Всем привет!
Очень неплохой материал, посвященный Istio – статьей его язык не поворачивается назвать, т.к. материала очень много, но это и не полноценная книга.
В материале содержится информация о:
🍭 What Does Istio Do?
🍭 Introduction to Istio
🍭 Istio’s Architecture
🍭 How to Use Istio in Practice
🍭 How to Run the Services on the Mesh
🍭 Ingress Gateway – How to Admit Traffic into the Mesh
🍭 Observability
🍭 Traffic Management – Canary Deployments
🍭 Istio Security
Много схем, примеров, кусков кода и пояснений по каждому из вышерассмотренных блоков. Самое то для ознакомления с технологией и до вдумчивого чтения официальной документации.
Всем привет!
Очень неплохой материал, посвященный Istio – статьей его язык не поворачивается назвать, т.к. материала очень много, но это и не полноценная книга.
В материале содержится информация о:
🍭 What Does Istio Do?
🍭 Introduction to Istio
🍭 Istio’s Architecture
🍭 How to Use Istio in Practice
🍭 How to Run the Services on the Mesh
🍭 Ingress Gateway – How to Admit Traffic into the Mesh
🍭 Observability
🍭 Traffic Management – Canary Deployments
🍭 Istio Security
Много схем, примеров, кусков кода и пояснений по каждому из вышерассмотренных блоков. Самое то для ознакомления с технологией и до вдумчивого чтения официальной документации.
freeCodeCamp.org
Learn Istio – How to Manage, Monitor, and Secure Microservices
By Rinor Maloku Three years ago, I wrote an article noscriptd "Back to Microservices with Istio" for Google Cloud Community. I published it there to reach people interested in the latest technologies built on top of Kubernetes. At that point, Istio was...
👍4