k8s (in)security – Telegram
k8s (in)security
12.1K subscribers
1.02K photos
38 files
1.56K links
Канал о (не)безопасности Kubernetes + микросервисных, контейнеризированных приложений.

Ведет команда www.luntry.ru

Вопросы, идеи, предложения => @Qu3b3c

https://knd.gov.ru/license?id=673ddbc21039886b1d03b7ce&registryType=bloggersPermission
Download Telegram
Сегодня публикуем последние два доклада нашей программы БеКон 2025!

1) "Тонкая настройка безопасности OS Linux для контейнеров: вредно и полезно" (Альмир Сарваров, Банк ДомРФ)

Что может быть хуже чем не безопасно настроенная система?! Это система настроенная без понимания, что, для чего и зачем. Ведь слепое следований лучшим практикам не всегда доводит до добра, тем более когда дело касается специализированных систем. Контейнерные системы это как раз специализированные системы. В рамках доклада разберемся как некоторые лучшие практики могут сделать только хуже.

2) "Чеклист безопасности ML-кластеров" (Николай Панченко, ТБанк)

Кругом AI хайп! А чем мы хуже?! У нас на конференции тоже будет про AI, но не сточки зрения безопасности моделей, ботов и т.д. ,а с точки зрения того как безопасно создать инфраструктуру, где это все готовиться и живет.

За детальным описанием выступлений можно обратиться сюда.

Скоро мы опубликуем и само расписание конференции. Но можно ориентироваться, что двери конференции откроются в 9:00, а закроются в 19:30. Можно сказать, что теперь у вас есть все чтобы спланировать посещение мероприятия. И успейте взять билет до 10 мая, так как будет вторая волна подорожания билетов.
👍7🔥4👎1💩1
Вчера мы опубликовали все доклады из программы нашей конференции БеКон 2025, а сегодня хотим разыграть на нее билеты =)

Для этого необходимо в комментариях к данному посту написать/прикрепить политику для любого PolicyEngine (Kyverno/OPA Gatekeeper/...), которая используется вами и отличается своей оригинальностью, необычностью ;) Тут хочется увидеть вашу креативность!

Итоги подведем 7 мая.

Всем хороших выходных!
🔥13🥰2😍2
На прошедшей месяц назад конференции Black Hat Asia, в треке Arsenal, был представлен доклад KubeAPI-Inspector: discover the
secrets hidden in apis
от Qiqi Xu (слайды тут).

Вместе с этим был опубликован инструмент, о котором идет речь в докладе – KubeAPI Inspector.

Автор описывает его как инструмент, специально разработанный для Kubernetes, и предназначенный для эффективного и автоматического обнаружения скрытых уязвимых API в кластерах.
👍12🔥42
Интересная хардкорная статья "Patch-Gapping the Google Container-Optimized OS for $0", как исследователь нашел патч для kernel баги и понял что патч еще не применен в дистрибутиве ОС для контейнерных окружений от Google. И все это в рамках соревнования kCTF, о котором мы уже неоднократно писали на канале 1,2,3,4 и т.д.

Это лишний раз говорит что Patch Gap есть как у маленьких, так у больших и очень больших. Этому подвержены все. Тем более в наше время заимствованных компонентов, библиотек, образов, Helm чартов и т.д.

И если для атакующего это будет по сути 1day, то для защищающейся стороны это равносильно защите от 0day. Соответственно и подходы к защите в современном мире должны быть такие, что могут противостоять и 0day.

Ввиду этого так и популярны механизмы NetworkPolicy, AppArmor, которые помогают выстроить концепцию ZeroTrust.
👍11🔥21
Всем, привет!

Мы зафиналили и опубликовали расписание докладов - полную программу можно посмотреть тут.

Облако тегов по докладам можно представить так: Workload Identity, k8s, Cilium, eBPF, image builder, Kyverno, OS Talos, ФСТЭК, Control Plane, kernel, ML.

И напоминаем, что завтра последний день когда можно поучаствовать в конкурсе и выиграть билеты ;)
🔥13👍63
WIZ запустили очередную CTF – The Cloud Hunting Games CTF. На этот раз вам нужно расследовать инцидент в облаке. Задания базируются на распространенных TTP злоумышленников in the wild.

Попробовать порешать можно тут.
👍17🔥5
Сейчас с командой находимся в финальной стадии, написания статья про то как мы с помощью Luntry случайно поймали криптомайнер на просторах сети интернет.

В процессе этого мне вспомнилось как в самом начале (где-то в 2021), закладывания в решение функциональности observability, я рассказывал как можно с помощью этого делать свои sandbox, honeypots или даже deception system для контейнерных окружений! Но тогда, что-то всем дальше сканирования образов и не смотрели.

Далее на свет появился доклад "Безопасность Kubernetes: Фаза Deception" (слайды, видео) на конференции OFFZONE 2022. Он уже привлек больше внимания и даже люди делились потом как некоторых из тех техник внедрили у себя.

И вот в 2025 мы уже сами ITW ловим интересные кейсы в контейнерных окружениях, пишем правила детекта, IoC и т.д. и все с помощью своего детища и ни от чего не зависим!

Определенно это направление мы продолжим развивать и у нас уже есть ряд классных идей, которые мы реализуем чуть позже ;)
🔥24👍136
Многие Kubernetes операторы после своей работы оставляют отчеты (например, Trivy operator или Kyverno), но до недавнего времени не было единого стандарта, по которому эти отчеты должны формироваться.

Инженеры из Kubernetes, вернее из Kubernetes Policy Working Group, предложили решение этой проблемы и создали проект OpenReports. Там они достаточно подробно описали API Reference со всеми полями, что должны содержатся в отчете согласно стандарту.

По словам разработчиков это должно решить такие проблемы как:

- Centralized Visibility
- Correlation and Analysis
- Automation and Auditing
22🔥12👍8❤‍🔥1👀1
В официальном блоге Kubernetes появилась заметка "Kubernetes v1.33: From Secrets to Service Accounts: Kubernetes Image Pulls Evolved" про новую фичу версии 1.33.

Если описать данное улучшение одним предложением, то: "This enhancement allows credential providers to use pod-specific service account tokens to obtain registry credentials, which kubelet can then use for image pulls — eliminating the need for long-lived image pull secrets."

И тут (на мой взгляд) мы встречаем впервые упоминание workload identity не в тематике облачных провайдеров.

В итоге это дает least privilege и ephemeral authentication.

ServiceAccountTokenForKubeletCredentialProviders feature gate пока находиться в alpha, то авторы планируют его перевести в beta уже в 1.34.

Следить за развитием данной фичи можно в KEP-4412.
👍13🔥1
Всем, привет!

Подведем итоги конкурса, который мы не давно проводили. Проходка на конференцию уходит к @gakuseii_1 за его хитрую политику предоставления привилегированного доступа на основании как группы пользователей, так и самих сервисов. Хотя вариант с запретом деплоям по пятницам нам тоже очень сильно понравился. И подумали,а почему бы и не дать еще одну проходку @TheAnastasi )

Есть еще вариант выиграть хорошую скидку в рамках конкурса на канале конференции БеКон.

Так количество доступных билетов очень быстро уменьшается - не тяните до последнего.
👏9🔥6🥰3
На канале мы уже как-то рассказывали про Aggregate Roles в Kubernetes (1, 2), но хочется ещё раз напомнить о таком мощном механизме.

В статье Simplifying RBAC Extension in Kubernetes: Leveraging Aggregate ClusterRoles автор рассказывает как объединить несколько ролей для динамического контроля доступа, упростить управление разрешениями и применять изменения декларативно, используя лучшие практики.
👍10🔥32💩1🙏1
Если запустить контейнер в Kubernetes и ничего не делать с capabilities (это подмножество привилегий, которые обычно предоставляются root), то в итоге у контейнера они все равно будут. Это так называемые Default Capabilities:
- cap_chown - Разрешает изменение владельца файлов.
- cap_dac_override - Разрешает доступ к файлам, игнорируя права.
- cap_fowner - Разрешает изменение владельца файлов.
- cap_fsetid - Разрешает установку битов setuid и setgid.
- cap_kill - Разрешает отправку сигналов процессам.
- cap_setgid - Разрешает изменение группы.
- cap_setuid - Разрешает изменение пользователя.
- cap_setpcap - Разрешает установку собственных способностей.
- cap_net_bind_service - Разрешает привязку к привилегированным портам (ниже 1024).
- cap_net_raw - Разрешает использование сырых сокетов.
- cap_sys_chroot - Разрешает изменение корневой директории.
- cap_mknod - Разрешает создание специальных файлов.
- cap_audit_write - Разрешает запись в журнал аудита ядра.
- cap_setfcap - Разрешает установку способностей для файлов.

Поэтому всегда не забывайте прописывать в настройках рабочих нагрузок:

securityContext:
capabilities:
drop:
- ALL


Это спокойно работает для 99.9% любых бизнес микросервисов. С инфраструктурными сервисами разговор уже отдельный, но и там необходимо следовать принципу наименьших привилегий.
👍41🔥85👌52
Если вы хотите более подробно погрузиться в работу Static Pods и порождающихся вместе с ними Mirror Pods, то статья Kubelet Mirror Pod Behaviours точно для вас.

В статье автор рассматривает два интересных поведения Mirror Pods:

1) Mirror Pods обходят любые Admission Controls, т.к деплоятся в обход Kube API. Хоть этого не видно через kubectl или в логах kubelet, тем не менее успешный запуск контейнера можно увидеть обратившись напрямую к container runtime socket.

2) Mirror Pods возможно создавать в несуществующих namespaces. Не смотря на то, что нам вернутся ошибки, контейнер будет создан. Это также можно увидеть обратившись напрямую к container runtime socket.
👍13🔥4🤔31
Всем, привет!

До БеКон 2025 осталось ровно 2 недели.

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

В этом году в рамках выставки вы можете познакомиться и пообщаться с:
- Разработчиками 4-х платформ контейнеризации - всё запустить
- Крутыми профессионалами в области DevSecOps - всё просканировать, проанализировать, проконтролировать
- Разработчиками 4-х платформ ASOC/ASMP - всё затриажить, избавиться от дубликатов и проконтролировать исправление

Так что если вы строите современную инфраструктуры с ориентиром на безопасность, то за 1 день можно посмотреть абсолютно все: от IT-ландшафта, до безопасности оркестратора с обработкой уязвимостей.

Все это полезно ИТ и ИБ департаментам.

P.S. Если вы у нас раньше не были, то имейте ввиду. Последние 2 недели это самая жаркая пора по покупке билетов. Так что если вы не успеете их купить, то пеняйте на себя. У нас их ограниченное количество.
👍8🔥31😁1
У нас в блоге вышла новая замечательная статья "Случайный ханипот: как мы обнаружили криптомайнер в контейнере с помощью Luntry".

Из нее вы узнаете как Luntry может выполнять роль sandbox, deception system, honeypot и помочь ловить даже неизвестные атаки и вредоносный код, не имея никаких заготовленных правил, сигнатур и т.д.

И, конечно, мы расскажем что и как можно сделать чтобы не повторить судьбу такой приманки ;)
🔥173❤‍🔥3🐳1
На канале в предыдущих постах мы несколько раз затрагивали важность использования User Namespace в Kubernetes.

Сегодня хотим поделиться еще одним ресурсом, на котором еще 6 (!) лет назад обсуждали проблемы и критиковали использование данного механизма.

Если вы еще не выставляете


spec:
hostUsers: false


для своих нагрузок, то вероятно пришла пора это сделать.
🔥8👍72
Всем, привет!

Очень внимательные люди в программе на сайте нашей конференции БеКон 2025 заметили упоминание Секретного доклада на закрытии конференции. И полетели вопросы, что это за доклад)

Раскрывать секрет мы сейчас не будем, но правда будет 11-й доклад и он будет без записи и без публикации материалов.

P.S. Билетов осталось совсем мало. И на наш взгляд если вы занимаетесь DevSecOps, безопасностью контейнеров, кластеров Kubernetes, то единственной уважительной причиной не быть на конференции может быть только невозможность быть в Москве в этот день.
🔥7💩6👍3🎉1
Не так давно наш хороший товарищ и докладчик первого БеКон Дмитрий Путилин, хорошо известных в узких кругах Кубоводов, завел свой канал и выпустил невероятный материал Kubernetes The Hard Way на русском языке и с доскональным внимание к деталям.

Насколько детально там все рассматривается можно понять по прямому сравнению с Kubernetes The Hard Way от Kelsey Hightower.

В общем, это просто MUST HAVE материал для тех кто хочет реально понимать Kubernetes и стать крутым DevOps специалистом, а не ClickOps ;)
🔥37🏆5💘5
Почти месяц назад у Kyverno вышел новый релиз – 1.14.0. И это довольно значимый релиз, по скольку с него, можно сказать начинается новая веха в развитии этого Policy Engine. А именно – управление политиками стало более модульным, оптимизированным и мощным. Из крупных нововведений:

- два новых типа политики ValidatingPolicy и ImageValidatingPolicy
- улучшения и оптимизации при использовании CEL в политиках
- Policy exceptions теперь поддерживают CEL выражения
- улучшения kyverno CLI для валидации любых json-объектов

Более подробно об этом релизе и не только можно узнать в блоге Kyverno и в их документации.
👍18🔥62
На нашем сайте в раздел Исследований стало доступно видео и слайды выступления "Стандарт безопасности контейнеров NIST 800 190 в 2025 году" с конференции Deckhouse Conf 2025.

P.S. Получив обратную связь по данной работе, мы продолжили работать над картой и в последствии выложим ее в открытый доступ.
👍15🔥7
Совсем недавно, проходил очередной контест Pwn2Own. Примечательно, что организаторы ввели новую категорию AI с такими таргетами как:

- Chroma
- Postgres pgvector
- Redis
- Ollama
- NVIDIA Triton Inference Server
- NVIDIA Container Toolkit


Да, в списке есть тот самый NVIDIA Container Toolkit для которого мы готовили эксплойт и выпускали статью на этот счет!

Исследователи из WIZ в рамках Pwn2Own нашли еще один баг в этом тулките. Официально ни присвоения CVE, ни патча еще не последовало.

Как обычно, после раскрытия 0-day в ходе соревнования Pwn2Own у вендоров есть 90 дней на подготовку и выпуск патча для своих продуктов, прежде чем Trend Micro Zero Day Initiative опубликует технические подробности.

Отдельно стоит отметить, что категория Cloud-Native/Container осталась без находок.
👍134🔥4🕊1