Получи случайную криптовалюту за регистрацию!

k8s (in)security

Логотип телеграм канала @k8security — k8s (in)security K
Логотип телеграм канала @k8security — k8s (in)security
Адрес канала: @k8security
Категории: Технологии
Язык: Русский
Количество подписчиков: 5.57K
Описание канала:

Канал о (не)безопасности Kubernetes микросервисных, контейнеризированных приложений. Ценим и любим reliability и security, а также observability.
Ведет команда www.luntry.ru
Вопросы, идеи, предложения => @Qu3b3c

Рейтинги и Отзывы

3.50

2 отзыва

Оценить канал k8security и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

0

4 звезд

1

3 звезд

1

2 звезд

0

1 звезд

0


Последние сообщения 5

2022-05-23 15:05:17
Давненько я не выступал в Санкт-Петербурге - все в Москве, да в Москве ...

Исправляюсь и выступлю 28 мая на митапе Three Amigos Talk с названием "Интегрированная безопасность в разработке, или Соблюдай технику безопасности!" у своих друзей из Ak Bars Digital. Речь на митапе пойдет как не трудно догадаться об интеграции безопасности в разработку - программа интересная!

Мой доклад называется «Shift Left Everywhere Security в каждый дом» и в нем я хочу подсветить один очень важный момент о котором часто забывают при внедрении у себя DevSecOps практик ;)

Регистрация и подробности всех докладов тут. Формат online + offline.

Как всегда, буду рад пообщаться!
1.1K viewsДмитрий Евдокимов, 12:05
Открыть/Комментировать
2022-05-23 08:57:31
KoolKits — это набор специализированных образов, базирующихся на ubuntu:20.04 и содержащих около 60 инструментов отладки, для интерактивной отладки distroless (и не только) образов с помощью команды kubectl debug, которая завязана на Ephemeral containers.

На текущий момент есть поддержка:
- Node.js
- Python
- Java
- Go

Напомню, что Ephemeral containers в Alpha с 1.18 и в Beta с 1.23, где включены по умолчанию. Мотивация использования этого достаточно понятная. С точки зрения ИБ – уменьшаем attack surface и пространство для маневров атакующим, с сохранением удобства работы нашим разработчикам.

Сами авторы говорят, что они вдохновлялись такими проектами как kubespy и netshoot.
1.2K viewsДмитрий Евдокимов, 05:57
Открыть/Комментировать
2022-05-20 08:04:26 Ребята из Trip.com в статье "First Step towards Cloud Native Security" делятся своим опытом работы с CiliumNetworkPolicy для контролирования доступа на L3/L4 как в Kubernetes, так и в legacy инфраструктуре. При этом они рассматривают следующие моменты характерные для крупных развертываний:
1) Управление политиками в условиях разных доступов и знаний у infra, dev, sec teams
2) AuN и AuZ при манипулировании политиками
3) Обработка cross-boundary доступов в Kubernetes multi-cluster
4) Управление legacy нагрузкой (на пример VM/BM/non-cilium-pods)
5) Вопрос производительности (Performance)
6) Logging, monitoring, alerting, observability и т.д.

Отдельно выделю - у ребят много кастома для решения этих моментов:
- Собственный kubernetes operator для поддержки multi-cluster
- Собственный Custom Resource - CiliumExternalResource (CER) похожий на CiliumExternalWorkload (CEW) для поддержки legacy инфраструктуры
- Использование dataplane-независимого ресурса AccessControlPolicy
- В CD платформе идет апрув запроса по цепочке: запрашивающая сторона, владелец ресурса и команды ИБ
- Обход ограничений идентификаторов через security relevant labels
- Кастомные патчи для Cilium для аудита политик и т.д.

P.S. Забавный факт сетевая обработка пакетов в Cilium идет быстрее если используется NetworkPolicy - без нее цепочка обработки длиннее ;)
801 viewsДмитрий Евдокимов, 05:04
Открыть/Комментировать
2022-05-19 08:23:28
Kubernetes CNI, работающие на базе iptables, при реализации NetworkPolicy используют тот же iptables, который понятно, как работает. А задумывались ли вы как NetworkPolicy реализуются в CNI что базируются на eBPF (тот же Cilium)?!

В статье "Cracking Kubernetes Network Policy" рассматривается как за менее чем 100 строчек на eBPF можно сделать простейшую реализацию NetworkPolicy! По сути, это скелет того, что доведено до ума в Cilium. В итоге очень крутой лонгрид с кишками сетевой работы!!!

MUST READ если хотите понять, как реализуются и работают NetworkPolicy на уровне eBPF.

P.S. А сегодня в 15:00 в зале «Селигер» на PHDays мы с коллегой расскажем доклад “NetworkPolicy — родной межсетевой экран Kubernetes” – приходите, слушайте или смотрите online.
891 viewsДмитрий Евдокимов, 05:23
Открыть/Комментировать
2022-05-18 09:22:56
По результатам вчерашнего опроса большинство опрошенных так или иначе для реализации Multi-Tenancy в Kubernetes используют подход Namespaces as a Service. Определённо, что для его грамотной реализации нужно использовать и управлять NetworkPolicy для сетевой изоляции и сегментации. Все ли у вас с этим хорошо?)

Одним из примеров/референсов может служить материал из статьи "Managing Network Policies for namespaces isolation on a multi-tenant Kubernetes cluster". В их случае они используют Hierarchical Namespace Controller (HNC) в сочетании с Terraform. При этом у них есть деление на компании, команды и сервисы.
1.1K viewsДмитрий Евдокимов, 06:22
Открыть/Комментировать
2022-05-17 11:07:05
Каким способом вы реализуете Multi-Tenancy в Kubernetes в своей оргонизации?
Anonymous Poll
41%
Namespaces as a Service (создаем в ручную)
8%
Namespaces as a Service (используем Hierarchical Namespace Controller)
3%
Clusters as a Service (создаем в ручную)
39%
Clusters as a Service (используем Ansible/Terraform/...)
6%
Clusters as a Service (используем Cluster API)
5%
Control planes as a Service
6%
Node per unit/team/project/...
13%
Other (в комментарии)
143 voters895 viewsДмитрий Евдокимов, 08:07
Открыть/Комментировать
2022-05-17 08:50:53
Крутая статья "Digging Into Runtimes – runc" про референсный Low-level runtime - runc.

MUST READ для всех кто работает с контейнерами и хочет понимать что такое контейнеризация на самом деле. runc это самый популярный Low level runtime и он точно есть в вашем Kubernetes ;)

В статье рассматриваются следующие аспекты работы runc:
- Generating an OCI configuration
- Creating root container
- Configuring runc-init with network interface
- Starting the root container
- Writable storage inside a container
- Pause and resume a container
- Inspect the current state of a container
- Checkpoint a container
- Executing a new process in an existing container
- Hooks
- Updating container resource limit
- Creating rootless container
- A word on security

Последние два раздела заслуживают особого внимания с точки зрения ИБ (хотя там все так или иначе касается изоляции и безопасности).

Все это сопровождается примерами и кодом.
1.7K viewsДмитрий Евдокимов, edited  05:50
Открыть/Комментировать
2022-05-16 09:42:40 Ваш Kubernetes работает на Cgroup v1 или на Cgroup v2?

Нет?! Не знаете?! А зря ...

В статье "Five Things to Prepare for Cgroup v2 with Kubernetes" авторы рассматривают:
- что такое Cgroup v2
- что это дает Kubernetes
- и как подготовить Kubernetes для запуска на Cgroup v2

Из некоторых преимуществ они выделяют:
- Container-aware OOM killer
- Rootless Kubernetes components (уже писал об этом тут)
- Complete utilization of eBPF

В общем с переходом на вторую версию и обслуживание и безопасность Kubernetes можно хорошенько подтянуть ;)
1.7K viewsДмитрий Евдокимов, 06:42
Открыть/Комментировать
2022-05-13 08:26:44
С выходом Kubernetes 1.24 многие писали о появлении там NetworkPolicyStatus для ресурса NetworkPolicy. И при этом никто внятно не писал что это, для чего, как может быть полезным и как устроено...

Наша команда в преддверии выступления про NetworkPolicy - решили разобраться с этим нововведением не по анонсу, а по реальному запуску Kubernetes 1.24. В результате имеем следующее:
- NetworkPolicyStatus по сути предоставляет единый для всех CNI интерфейс
- По сути это поле status в NetworkPolicy и содержит в себе conditions (поля на скриншоте)
- Скорее всего должен позволить отслеживать ошибки при использовании NetworkPolicy
- Пока ни один CNI туда ничего не пишет

Все в принципе и логично ведь реализация NetworkPolicy лежит на CNI и тут все будет зависеть от конкретной реализации CNI. Если верить данному KEP, то с версии 1.25 вроде как Calico и Cilium начнут использовать это поле, но посмотрим ...
1.5K viewsДмитрий Евдокимов, 05:26
Открыть/Комментировать
2022-05-12 09:05:17
В преддверии своего с коллегой выступления на HighLoad++ 2022 с докладом "eBPF в production-условиях" хочу поделится мнением о двух небольших pdf-ках (назвать их книгами язык не поворачивается - обе не более 70 страниц) про eBPF:
1) "What is eBPF?"
2) "Security Observability with eBPF"

Оба документа написаны разработчиками CNI Cilium и хорошо погружают в текущее состояние eBPF, так что свое знакомство с данной технологией можно начать с чтения/изучения данных док.
В обоих документах есть упоминание любопытного проекта Tetragon, но он до сих пор не доступен, но как появится я про него обязательно отдельно напишу.

P.S. Буду рад лично познакомиться и пообщаться на HighLoad, а также показать наш Luntry - у нас будет свой стенд =)
1.9K viewsДмитрий Евдокимов, 06:05
Открыть/Комментировать