Завтра последний день, чтобы участвовать в конкурсах и выиграть проходку на:
1) DevOops 2026 - участвовать!
2) ZeroNights 2026 - учувствовать!
еще есть время ;)
1) DevOops 2026 - участвовать!
2) ZeroNights 2026 - учувствовать!
еще есть время ;)
Telegram
k8s (in)security
12–13 октября в Санкт-Петербурге пройдет конференция DevOops 2026! Вся программа и активности уже доступны на сайте мероприятия. При этом есть прекрасная возможность выиграть билет в рамках нашего конкурса =)
Конкурс: "Самый желанный доклад".
Задание: Придумайте…
Конкурс: "Самый желанный доклад".
Задание: Придумайте…
🔥4❤2
Если
1) server room
2) the rack
=)
Всем хороших выходных!
P.S. Результаты конкурсов объявим в 18:00 по Мск.
UI ваших Kubernetes платформ выглядит не так, то даже не зовите нас на пентест/аудит:1) server room
2) the rack
=)
Всем хороших выходных!
P.S. Результаты конкурсов объявим в 18:00 по Мск.
🔥22😁7🤮2🌚2🤩1🙈1
Итоги конкурсов!
Конкурс: "Самый желанный доклад".
Победитель @Nuclearm
С докладом про «как мы выпилили k8s и стали спать по ночам: история одного отказоустойчивого монолита». хочу услышать, как команда решилась и что потеряла.
Конкурс: "Самая опасная уязвимость в Kubernetes"
Победитель @pharma_unsafe
С багой в драйвере
Поздравляем победителей!
Победителям отдельно напишем в ЛС и расскажем как получить проходки.
Конкурс: "Самый желанный доклад".
Победитель @Nuclearm
С докладом про «как мы выпилили k8s и стали спать по ночам: история одного отказоустойчивого монолита». хочу услышать, как команда решилась и что потеряла.
Конкурс: "Самая опасная уязвимость в Kubernetes"
Победитель @pharma_unsafe
С багой в драйвере
Поздравляем победителей!
Победителям отдельно напишем в ЛС и расскажем как получить проходки.
Telegram
k8s (in)security
Завтра последний день, чтобы участвовать в конкурсах и выиграть проходку на:
1) DevOops 2026 - участвовать!
2) ZeroNights 2026 - учувствовать!
еще есть время ;)
1) DevOops 2026 - участвовать!
2) ZeroNights 2026 - учувствовать!
еще есть время ;)
1🔥9👍1
Все-все-все сейчас озадачены то как и чем лучше всего и надежнее изолировать
Но для тех кто не знает или не помнит, напомним что это решение для
Должно быть надежно?!
CVE-2026-79994 и CVE-2026-77179 ломают эту изоляцию ... Побег из
P.S. В процессе подготовки удалось словить забавное от нейронки
AI-агенты, AI сгенерированный код. Мы также уже неоднакратно писали на эту тематику. Например, про проект Docker Sandboxes - тут, тут и тут. Но для тех кто не знает или не помнит, напомним что это решение для
macOS и Windows представляет из себя MicroVM и базируется на платформенных фреймворках виртуализации: Apple Virtualization.framework на macOS и Hyper-V на Windows.Должно быть надежно?!
CVE-2026-79994 и CVE-2026-77179 ломают эту изоляцию ... Побег из
VM на host из-за очередных проблем с symlink.... P.S. В процессе подготовки удалось словить забавное от нейронки
Google Gemini, которая считает что в изолированных песочницах на macOS можно запускать только доверенные приложения )))))) наверное она что-то знает еще)))))🔥13❤4😁2👎1
В официальном блоге
1) Права доступа на
2)
Обе фичи находятся в
Очень здорово, что разработчики с каждым релизом подтягивают тот или иной аспект безопасности
Kubernetes появилась заметка "Kubernetes v1.37: Hardening Container Storage with Bind Mount Options and EmptyDir Permissions". Она описывает новые возможности по безопасности хранилищ (Storage):1) Права доступа на
emptyDir - на пример 01777 через emptyDir mode2)
bind mount опции - такие как noexec, nodev, nosuid через bindMountOptions Обе фичи находятся в
Alpha статусе и называются VolumeBindMountOptions и EmptyDirVolumeMode.Очень здорово, что разработчики с каждым релизом подтягивают тот или иной аспект безопасности
k8s.👍9❤3🔥3
Из статьи "Migrating a critical Kubernetes deployment from the default namespace without any downtime" можно узнать как мигрировать микросервисы из одного
Главная идея статьи сохранение старого
- из
- из общего
- из временного
- между
При это внутренний и внешний трафик нужно рассматривать отдельно: перенос
namespace (не обязательно default - тут он только для примера) в любой другой namespace без простоя.Главная идея статьи сохранение старого
DNS-адреса как точки совместимости. В старом namespace можно временно оставить Service типа ExternalName, который перенаправляет запросы на сервис в новом namespace. Поэтому такой сценарий применим, например, при переносе:- из
payment в payments;- из общего
namespace в namespace команды;- из временного
namespace в production namespace;- между
namespace разных окружений внутри одного кластера.При это внутренний и внешний трафик нужно рассматривать отдельно: перенос
Service сам по себе не решает проблему Ingress. Как и по каким шагам все это сделать, какие есть подводные камни и исключения описано в данной статье.CNCF
Migrating a critical Kubernetes deployment from the default namespace without any downtime
Somewhere in your cluster there’s probably a deployment sitting in the default namespace that everyone knows shouldn’t be there. Nobody put it there maliciously, it just happened, early on…
👍9❤1🔥1🥰1
Цикл статей "User Namespaces in Kubernetes":
1) Part I: All You Need to Know
2) Part II: Mappings and File Ownership
3) Part III: The Implementation
О
P.S. Всегда будет полезно посмотреть доклад "Linux user namespace в чертогах Kubernetes" с БеКон 2024
1) Part I: All You Need to Know
2) Part II: Mappings and File Ownership
3) Part III: The Implementation
О
User Namespaces мы писали очень много (1,2,3,4,..), но и в этом материалы вы точно найдете что-то новое и полезное ;)P.S. Всегда будет полезно посмотреть доклад "Linux user namespace в чертогах Kubernetes" с БеКон 2024
🔥8❤2👍1
В
CVE-2026-2270: StatefulSet and ControllerRevision write permissions allow cross-namespace pod creation
Уязвимость в
CVSS Rating: CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:N
Medium (5.9)
Пользователь с правами на изменение объектов
Для эксплуатации нужны соответствующие права, а созданный
Kubernetes была закрыта новая уязвимость.CVE-2026-2270: StatefulSet and ControllerRevision write permissions allow cross-namespace pod creation
Уязвимость в
kube-controller-manager, тоесть придется обновлять master nodes.CVSS Rating: CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:N
Medium (5.9)
Пользователь с правами на изменение объектов
StatefulSet и ControllerRevision в своём namespace потенциально может добиться создания Pod в другом namespace — с заданными им метаданными и конфигурацией.Для эксплуатации нужны соответствующие права, а созданный
Pod обычно удаляется сборщиком мусора. Чтобы он сохранился, атакующему потребуется корректно указать OwnerReference, включая UID существующего StatefulSet в целевом namespace.GitHub
CVE-2026-2270: StatefulSet and ControllerRevision write permissions allow cross-namespace pod creation · Issue #142097 · kuber…
CVSS Rating: CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:N - Medium (5.9) A confused deputy attack exists in the StatefulSet controller that allows a user with namespace-scoped write permissions on ...
👍9❤4🔥2
Начнем неделю со статьи "Scale your AI workloads faster and more efficiently with GKE Pod snapshots", которая рассказывает как в
И если вам кажется, что это какая-то магия и доступна только избранным пользователям GKE Sandbox, то вы ошибаетесь - такое можете сделать и вы сегодня у себя дома. Так как это все базируется на возможностях рантайма
Да, это еще не реализация в рамках
GKE можно замораживать (checkpoint) состояния Pod в виде snapshot и затем запускать их с этого же момента (restore). Более подробно можно узнать об этом из документации "Save and restore Agent Sandbox environments with Pod snapshots".И если вам кажется, что это какая-то магия и доступна только избранным пользователям GKE Sandbox, то вы ошибаетесь - такое можете сделать и вы сегодня у себя дома. Так как это все базируется на возможностях рантайма
gVisor (1,2)!Да, это еще не реализация в рамках
runc/crun и KEP-5823 (Pod-level Checkpoint/Restore) на базе CRIU, но тоже вариант ;)Google Cloud Blog
GKE Pod snapshots | Google Cloud Blog
New Google Kubernetes Engine (GKE) Pod snapshots save the running state of your workload, including CPU and GPU memory, and restore it on demand.
❤6👍5🔥4
Сконцентрировавшись на серверной части инфраструктуры, мы порой непростительно забываем про клиентскую историю. Так вот очередная уязвимость в
CVE-2026-19444: kubectl cp path traversal on Windows allows arbitrary file writes
CVSS Rating:
Если капнуть в историю, то это далеко не первая подобная бага в
1)
2)
3)
4)
Особенность новой уязвимости в том что она только под
Kubernetes, напоминает нам о том что надо защищать и патчить не только компоненты control и data plane, но и kubectl.CVE-2026-19444: kubectl cp path traversal on Windows allows arbitrary file writes
CVSS Rating:
CVSS:3.1/AV:A/AC:L/PR:H/UI:R/S:C/C:L/I:H/A:NMedium (6.5)Если капнуть в историю, то это далеко не первая подобная бага в
kubectl:1)
CVE-2018-1002100 — Первая оригинальная уязвимость kubectl cp2)
CVE-2019-1002101 — Атака через символические ссылки (Symlink Attack) в kubectl cp3)
CVE-2019-11246 — уязвимость обхода каталога (directory traversal) в команде kubectl cp4)
CVE-2019-11249 — закрывает обход предыдущих патчей для kubectl cpОсобенность новой уязвимости в том что она только под
Windows. Проблема кроется в разнице обработки путей (например, разделителей путей \ против /, использования дисков C: или специфических для Windows символов), из-за чего общие кроссплатформенные проверки kubectl оказались неэффективны на Windows-системах, позволяя осуществлять несанкционированную запись произвольных файлов (arbitrary file write).GitHub
CVE-2026-19444: kubectl cp path traversal on Windows allows arbitrary file writes · Issue #141294 · kubernetes/kubernetes
CVSS Rating: CVSS:3.1/AV:A/AC:L/PR:H/UI:R/S:C/C:L/I:H/A:N - Medium (6.5) Description of vulnerability A path traversal vulnerability exists in the kubectl cp command when it is run on Windows. kube...
🔥4👍3❤1
Сегодняшний наш герой это
Он построен на
Самое интересное здесь —
Отдельно стоит отметить детектор
Подробнее о проекте можно узнать тут и тут.
runtime security агент на eBPF под названием Bombini, который целиком написанный на Rust с библиотекой Aya.Он построен на
BPF LSM хуках и состоит из модульных детекторов, которые отслеживают процессы, файловые и сетевые операции, а также взаимодействие с eBPF-подсистемой ядра. Самое интересное здесь —
rule engine, который целиком работает внутри eBPF в отличие от Falco, где правила вычисляются в user mode части агента. Правила пишутся в YAML с булевыми предикатами (AND/OR/NOT, in, CIDR для IPv4/IPv6, списки и макросы). Каждое правило компилируется как программа: парсер строит AST,оптимизационные проходы его упрощают, а на выходе получается байткод в обратной польской записи. Байткод загружается в eBPF-мапы и исполняется прямо в ядре собственным RPN-интерпретатором. Поэтому фильтрация происходит до отправки событий в userspace, и накладные расходы минимальны. Для правил есть sandbox-режим в вариантах allow-list и deny-list, в отличие от Tetragon, где реализован только deny-list способ. Отдельно стоит отметить детектор
SysEnumMon, аналогов нет ни в Falco, ни в Tetragon. Обычно в eBPF-агентах одно срабатывание хука даёт одно событие. SysEnumMon работает иначе: он собирает наблюдения с нескольких хуков (запуск бинарей и открытие файлов), коррелирует их внутри дерева процессов в скользящем временном окне и принимает решение прямо в eBPF. Так он ловит сканеры вроде LinPEAS и LinEnum, хотя каждое их действие по отдельности (id, uname, чтение /etc/passwd) выглядит легитимно.Подробнее о проекте можно узнать тут и тут.
GitHub
GitHub - bombinisecurity/bombini: eBPF Security Monitoring and Sandboxing Agent Based on Aya
eBPF Security Monitoring and Sandboxing Agent Based on Aya - bombinisecurity/bombini
🔥13❤7👍5❤🔥1