k8security | Unsorted

Telegram-канал k8security - k8s (in)security

10261

Канал о (не)безопасности Kubernetes + микросервисных, контейнеризированных приложений. Ведет команда www.luntry.ru Вопросы, идеи, предложения => @Qu3b3c https://knd.gov.ru/license?id=673ddbc21039886b1d03b7ce®istryType=bloggersPermission

Subscribe to a channel

k8s (in)security

Всем, привет!

Мы рады официально объявить дату нашей конференции по безопасности контейнеров и контейнерных сред БеКон 2025 и это 3 июня!

Продажа билетов стартанет на следующей неделе ;)

Также напомним, что прием заявок на доклады идет до 31 марта!

Читать полностью…

k8s (in)security

Исследователь Graham Helton опубликовал ресурс yProbeKubernetes YAML Manifest Sanity Checker.

Онлайн сервис может проверять загружаемые в него YAML манифесты с Workloads на Pod Security Standard, а также проверять избыточные RBAC привилегии в Role или Cluster Role.

По сути, yProbe представляет из себя ничто иное как супер обрезанную версию Policy Engine в режиме Audit и с красивой визуализацией.

Также автор выложил исходный код сервиса на Github.

Читать полностью…

k8s (in)security

Наверняка многие знают, что с docker socket можно достаточно легко взаимодействовать при помощи curl, даже когда в контейнере нет подходящих инструментов или возможности докачать их извне:


$ curl -s --unix-socket /var/run/docker.sock http:/containers/json

Но также легко это делать, если мы имеем дело с containerd socket ?

Для начала мы можем докачать или воспользоваться имеющимся инструментами типа ctr или crictl:

$ sudo ctr --address /var/run/containerd/containerd.sock -n k8s.io containers list
CONTAINER IMAGE RUNTIME
01a91532d97f8f7162c477dd1e402520d313e9c4333827d74a93cde25dddc1cc registry.k8s.io/pause:3.6 io.containerd.runc.v2
05536e2ec91d018cdb4edac21ab613b22f0755721e082c99f81b87516bce60ec registry.k8s.io/pause:3.6 io.containerd.runc.v2
0894b4942001821ad9c36949ae7c15fc2dd9b54bf6e5d531b6e5b03e6f5e313c docker.io/calico/cni:v3.25.0 io.containerd.runc.v2

Если их нет, то можно также отправить запрос с помощью curl, правда это будет несколько сложнее:

$ echo -ne "\x00\x00\x00\x00\x00" | sudo curl -v -s --http2-prior-knowledge --unix-socket /run/containerd/containerd.sock -X POST -H "content-type: application/grpc" -H "te: trailers" -H "grpc-accept-encoding: gzip" http://localhost/containerd.services.version.v1.Version/Version --data-binary @- --output /tmp/versionresponse.bin
* Trying /run/containerd/containerd.sock:0...
* Connected to localhost (/run/containerd/containerd.sock) port 80 (#0)
* Using HTTP2, server supports multiplexing
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
* Using Stream ID: 1 (easy handle 0x55c22b6bdec0)
> POST /containerd.services.version.v1.Version/Version HTTP/2
> Host: localhost
> user-agent: curl/7.81.0
> accept: */*
> content-type: application/grpc
> te: trailers
> grpc-accept-encoding: gzip
> content-length: 5
>
} [5 bytes data]
* We are completely uploaded and fine
* Connection state changed (MAX_CONCURRENT_STREAMS == 4294967295)!
< HTTP/2 200
< content-type: application/grpc
<
{ [55 bytes data]
< grpc-status: 0
< grpc-message:
* Connection #0 to host localhost left intact


Об этом и не только Stephen Bradshaw рассказал в своём блоге, в одноименных заметках containerd socket exploitation в трёх частях (1, 2, 3).

Читать полностью…

k8s (in)security

25 февраля 2025 года рабочая группа SIG Security Kubernetes опубликовала документ под названием “Shift Down Security”. Цель этого документа — помочь организациям использовать лучшие практики безопасности в облачных средах для снижения бизнес-рисков и повышения продуктивности разработчиков.

В нем описывается, как платформенные команды могут внедрять технологии, такие как “Policy as Code”, для предотвращения неправильных конфигураций и автоматизации вопросов безопасности во всех приложениях.

Подход “Shift Down Security” предлагает интегрировать функции безопасности непосредственно в платформу Kubernetes, что позволяет улучшить защиту и предоставить разработчикам больше возможностей для самостоятельной работы.

Читать полностью…

k8s (in)security

Если вы любитель внимательно почитать release notes, то прочитав их к последнему релизу Docker 28, наверняка ваше внимание зацепили следующие изменения:

Fix a security issue that was allowing remote hosts to connect directly to a container on its published ports. moby/moby#49325
Fix a security issue that was allowing neighbor hosts to connect to ports mapped on a loopback address. moby/moby#49325


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

Если посмотреть комментарии к pull request, можно увидеть что мейнтейнеры пока еще не опубликовали CVE. Также готовится заметка в блог Docker о том как эта уязвимость может повлиять на конечных пользователей.

Читать полностью…

k8s (in)security

Начнем эту неделю с простенькой статьи "Why running as root in Kubernetes containers is dangerous?". Целевая аудитория начинающие, но читайте ее внимательно ;) Уже ("наверное") скоро можно будет обсудить 0day уязвимость в Kubernetes, касающийся данного аспекта!

P.S. В Luntry детект уже в процессе добавления, статья для блога уже почти готова - ждем патча.

Читать полностью…

k8s (in)security

Довольно часто бывает так, что во время пентеста, оказавшись внутри контейнера, внутри либо нет никаких инструментов, либо нет возможности их докачать. Однако, многие популярные образы образы, например go, haproxy, kong, nginx и другие distroless образы содержат бинарь с openSSL.

Атакующие могут воспользоваться openSSL для сканирования сети, например, с помощью такого oneliner:


LOS_24_IP="ENTER_IP_TO_SCAN";IP=$(echo $LOS_24_IP | cut -d"." -f1,2,3);for i in $(seq 1 255); do NEW_IP=$(echo $IP.$i); (timeout .1 openssl s_client $NEW_IP 2>&1 | grep -q "connect:errno" && echo "$NEW_IP,up" 2>/dev/null) 2>/dev/null ;done

Читать полностью…

k8s (in)security

Если вам не хватает хардкора в теме безопасности контейнеров и Kubernetes, то специально для вас у нас в блоге вышла статья "Ломаем ваши видеокарты: распаковка эксплойта для CVE-2024-0132 под NVIDIA Container Toolkit"!

Тема острая, горячая приправленная ML-кластерами, драйверами видеокарт, атакой TOCTOU, проблемой разыменования symlinks ;)

При этом тема очень актуальная ввиду все большего количества систем, работающих с видеокартами.

P.S. Раньше всех о таких материал можно узнать на нашем официальном канале.

Читать полностью…

k8s (in)security

В рамках недавно прошедшей конференции FOSDEM 2025 было ряд треков, которые явно подходят под тематику нашего канала и будут интересны нашей аудитории, а именно:
- Containers (тут и про Kubernetes есть, конечно)
- eBPF (один доклад по ИБ)
- Monitoring and Observabilityk8s и eBPF тоже есть)
- Security (есть хорошие темы)
- SBOM (море всего интересного)

Читать полностью…

k8s (in)security

2025-ый год начался с очередной CVE для Kubernetes. CVE-2025-0426: Node Denial of Service via kubelet Checkpoint API аффектит версии kubelet с 1.32.0 – 1.32.1. 1.31.0 – 1.31.5, 1.30.0 – 1.30.9, а также все версии до 1.25, поскольку поддержка Container checkpoint была добавлена как alpha feature в этой версии.

Для эксплуатации уязвимости злоумышленнику достаточно отправить большое количество запросов на создание container checkpoint на read-only HTTP port (если включен, то по умолчанию 10255), что вызовет многократное создание файлов с checkpoints в /var/lib/kubelet/checkpoints и как следствие устроит DoS для Node.

Однако, чтобы узявимость была эксплуатабельна должно сойтись несколько факторов:

1) Должен быть включен read-only port у kubelet. Он включается отдельным параметром в конфиге
2) Используемый container runtime должен поддерживать container checkpointing feature, например CRI-O v1.25.0+ (с включенным параметром enable_criu_support) или containerd v2.0+ с установленным criu
3) В самом kubeapi должен быть включен ContainerCheckpoint feature gate

Читать полностью…

k8s (in)security

Мы видим как у наших клиентов и друзей все больше появляется самописных kubernetes операторов (про сторонние даже говорить нечего - их очень много уже в любой инфраструктуре). Тут важно понимать какие с ними могут быть проблемы. И как раз для этого может пригодиться работа "An Empirical Study on Kubernetes Operator Bugs", где рассматривается 210 ошибок с 36 операторов. Это все хорошо классифицировано и систематизировано, что позволяет поучиться на ошибках других и не допускать подобного в своих проектах.

Читать полностью…

k8s (in)security

8 февраля проходил Red Team Village Overflow с множеством различных воркшопов, тему Kubernetes Security также не обделили вниманием.

На протяжении почти двух часов Graham Helton (Red Team Security Engineer, Google) в своем воркшопе Breaching Bare Metal Kubernetes Clusters рассматривает несколько сценариев атак, которые могут быть использованы для полной компрометации кластера Kubernetes:

- Namespace isolation
- Pod breakout
- RBAC abuse
- Steal Secrets


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

Со слайдами и лабами из воркшопа можно ознакомиться в репозитории автора. Запись стрима доступна на YouTube.

Читать полностью…

k8s (in)security

Мы наконец-то сделали официальный telegram канал для нашего решения Luntry, где будет публиковаться информация как о самом решении, так и наших активностях, новостях. Ну и хорошим техническим материалом канал не будет обделен. Там уже сейчас можно ознакомиться со статьей про инцидент SolarWinds в контейнерном Мире.

Подписывайтесь!

Читать полностью…

k8s (in)security

Есть такое предчувствие, что такие механизмы как AppArmor и Seccomp получат вторую жизнь и все благодаря контейнерам =)

Проект Kubernetes-AppArmor-Profiles еще одно подтверждение этому. В нем собраны AppArmor и Seccomp профили для популярных образов приложений: grafana, ingress-nginx, memcached, nginx, postgresql, prometheus, redis, tomcat, traefik.

P.S. Ну и не зря же мы в наш Luntry пару лет назад добавляли генератор AppArmor профилей в конце концов ;)

Читать полностью…

k8s (in)security

В прошлом году, в одном из постов, мы рассказывали про инструмент k8spider и его возможности. Его автор совсем недавно выпустил статью "Spider in the Pod - How to Penetrate Kubernetes with Low or No Privileges", в которой рассказал как можно пентестить Kubernetes когда привилегий совсем нет или их очень мало.

Автор разбирает несколько кейсов для получения первоначального доступа: Java Heapdump to Cluster Initial Access, Gain Cluster Admin via Weave Scope Internal Unauthenticated Service, Leakage of sensitive information via mutating webhook и Attacking persistent Database backend with NFS/CSI storage. Крайне рекомендуем ознакомиться со всеми более детальней!

В своем повествании автор возвращается к k8spider, а точнее улучшениям которые были внесены в последней версии. Теперь k8spider умеет парсить метрики kube-state-metrics и по ним восстанавливать информацию по доступным ресурсам и их конфигурации.

Читать полностью…

k8s (in)security

Стали доступны материалы с нашего вебинара "Безопасность контейнеров и Kubernetes для CISO" запись (ВК,YouTube) и слайды (тут). Приятного просмотра!

P.S. Скоро объявим даты нашего следующего вебинара "Безопасность контейнеров и Kubernetes для SOC".

Читать полностью…

k8s (in)security

Сегодня в центре нашего внимания документ "SoK: A Comprehensive Analysis and Evaluation of Docker Container Attack and Defense Mechanisms" (github).

В данной работе авторы пытаются систематизировать атаки на контейнеры и механизмы их защиты.

Атаки:
1) Execute Arbitrary Code
2) Gain Privilege
3) Disclose Credential Information
4) Authentication Bypass
5) Denial Of Service

Защитные техники:
1) Static Scanning - тут сканы на уязвимости образов
2) Image Hardening - тут уменьшение поверхности атаки, убирая все лишнее
3) Security Policies and Practices - тут отсутствие запуска от root, флага privileged, использование AppArmor и Seccomp профилей
4) Dynamic Anomaly Detection - обучение и обнаружение аномалий

В выводах авторы пришли к тому что нужно сочетать как статические, так и динамические механизмы безопасности.

Послевкусие после изучения материала странное - вроде и много что упомянули, но при этом есть что еще добавить и в атаках и в защитах ...

Читать полностью…

k8s (in)security

Вчера готовясь к одному закрытому мероприятию, подбивал разные наши данные по результатам наших аудитов/пентестов контейнерных сред под управлением Kubernetes (за другие мы и не беремся) и можно констатировать следующие:
1) В 95% проектах мы получали в итоге права роли Cluster Admin - анализом и контролем RBAC занимается мало кто, в итоге выливается в это.
2) Использование эксплоитов для конкретных CVE составляет всего около 5% от всех наших находок - почти все это было для побега из контейнера через уязвимый системный компонент/сервис.
3) Абсолютное большинство успешных атакующих действий было через специально подготовленный YAML - тут не удивительно, k8s система декларативная и все крутиться вокруг них и с помощью правильных политик на Policy Engine это можно было бы предотвратить.
4) Много специфичных, уникальных кейсов - тут тоже не удивительно, все k8s кластера непохожие друг на друга, все готовят их под свои задачи, специфику и т.д.

Всем хороших выходных!

Читать полностью…

k8s (in)security

Наши друзья зарезили проект для графической генерации AuditPolicy для Kubernetes! Проект находиться в стадии beta, но с ним уже можно ознакомиться тут. Подробнее ребята писали о проекте тут.

При этом хочется напомнить о замечательном докладе Алисы Кириченко (один из авторов данного проекта) "Вы еще не читаете Kubernetes Audit Log? Тогда мы идем к вам!" (слайды, видео) с прошлой конференции БеКон 2024.

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

Читать полностью…

k8s (in)security

Уже завтра состоится наш вебинар «Безопасность контейнеров и Kubernetes для CISO» и мы настоятельно рекомендуем перед ним ознакомиться (или освежить в памяти) выступление "Почему защитой k8s должно заниматься целое подразделение?" (слайды, видео) от Артем Мерец (Т-Банк) с прошлогодней конференции БеКон 2024. Будет достаточно пересечений и отсылок к нему, и вообще полезно посмотреть на то как к данному вопросу подходят другие компании.

P.S. Прием заявок на доклады БеКон 2025 еще идет.

Читать полностью…

k8s (in)security

У себя на сайте мы выложили запись выступления "Основы анализа СЗИ в контейнерном исполнении с помощью Luntry". В рамках которого можно посмотреть как подходить к изучению и анализу абсолютно любого неизвестного контейнерного приложения в Kubernetes. В результате понять что и как работает внутри контейнера, какую сетевую активность вызывает и как вообще это приложение соответствует лучшим практикам безопасности. Это будет полезно как исследовательским лабораториям, так и специалистам ИБ, которые проводят работы по ПМИ новых релизов своих или сторонних разработчиков.

Читать полностью…

k8s (in)security

Сегодня хочется познакомить вас с академическим исследованием "Uncovering Threats in Container Systems: A Study on Misconfigured Container Components in the Wild", выпущенным в конце прошлого года.

Во внимание исследователей попали Docker и Kubernetes, а основной упор тут на доступные в сети интернет их системные компоненты, которые ясно дело не должны туда торчать и предоставляют дополнительные вектора атак. Такие вещи они назвали Misconfigured Container Components сокрушённо MCC. В итоге таких неблагонадежных систем в интернете нашлось 1,003,947. Для сбора данных использовали Shodan API. В работе есть много разных интересных таблиц и классификаций, так что рекомендуем ознакомиться самостоятельно.

Читать полностью…

k8s (in)security

В прошлом году была раскрыта очередная уязвимость в ядре – CVE-2024-36972. И помимо локального повышения привилегий с помощью эксплуатации этой уязвимости можно добиться Container Escape!

Бага была обнаружена в рамках kernelCTF (что это такое мы не раз рассказывали на канале). А совсем недавно появился публичный эксплойт.

Уязвимость затрагивает довольно свежие версии ядер:

v6.8 – v6.9
v5.15.147
v6.1.78
v6.6.17

Читать полностью…

k8s (in)security

На нашем сайте стали доступны материалы с вебинара "Фреймворк безопасности контейнеров JCSF" (слайды и видео на VK,YT). Это почти 2 часа полезного материала про то как смотреть и делать безопасность в Kubernetes.

Читать полностью…

k8s (in)security

Cегодня хотим обратить ваше внимание на информационное сообщение ФСТЭК России от 13 января 2025 г. N 240/24/38. Оно посвящено повышению безопасности средств защиты информации, в состав которых разработчики включают средства контейнеризации или образы контейнеров.

На нашей памяти это второе упоминание контейнеров/образов/микросервисов ФСТЭКом после публикации 118 приказа. Очень здорово, что регулятор все больше внимание удаляет данной теме!

И как раз в тему этого будет наш воркшоп “Основы анализа СЗИ в контейнерном исполнении с помощью Luntry” в рамках ТБФорум.

Читать полностью…

k8s (in)security

Изначально мы просто планировали сделать просто про релиз фреймворка безопасности контейнеров JCSF. А потом подумали а почему бы не пригласить коллег и вместе рассмотреть и обсудить их фреймворк в рамках отдельного стрима ?!

Так что завтра в 11:00 проведем эфир и там поговорим о фреймворке и вообще про безопасность Kubernetes.

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

Регистрация тут.

Читать полностью…

k8s (in)security

12 февраля команда Luntry едет в Екатеринбург на Квартирник по безопасной разработке – встреча сообщества, на которой мы обсудим важность DevSecOps в 2025 году, обменяемся опытом и идеями в обстановке дружеского квартирника.

В 18:20 будет доклад Сергея Канибора, R&D Luntry (и автора данного канала), на тему “Безопасность ML кластеров Kubernetes”.

Мероприятие проходит онлайн и оффлайн, начало в 16:00. Зарегистрироваться на квартирник можно по ссылке – количество мест ограничено!

P.S. Приходите пообщаться лично)

Читать полностью…

k8s (in)security

В декабре прошлого года ресерчеры из Unit 42 выпустили новое исследование – "Dirty DAG: New Vulnerabilities in Azure Data Factory’s Apache Airflow Integration".

На первый взгляд ничего общего с Kubernetes тут нет, но как раз благодаря ряду критичных мисконфигов в инстансе Apache Airlfow, запущенного под управлением K8s исследователи смогли продвинуться дальше.

Получив реверс-шелл (ввиду отсутствия Network Policy), благодаря DAG, ресерчеры оказались внутри контейнера, использующего Service Account с правами Сluster-Admin. Далее они без особого труда прочитали секреты и сбежали на Node.

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

Читать полностью…

k8s (in)security

25 февраля в 11:00 мы проведем вебинар «Безопасность контейнеров и Kubernetes для CISO».

Вебинар будет интересен также C-level, тимлидам и руководителям информационной безопасности, которые работают с контейнерными средами или планируют их внедрение. Мы расскажем о ключевых аспектах безопасности контейнеров и Kubernetes, поделимся практическим опытом и ответим на ваши вопросы.

Команда Luntry уже более 5 лет помогает компаниям из разных секторов (банки, ритейл, финансы и др.) обеспечивать безопасность контейнерных инфраструктур. Мы работали с кластерами различного размера и уровня зрелости, поэтому можем поделиться релевантным опытом как для новичков, так и для экспертов в области контейнеризации.

В рамках вебинара рассмотрим:
- Как и почему контейнеризация завоевывает инфраструктуры
- Что такое контейнеры и Kubernetes
- Как смотреть на защиту контейнерных сред
- Как совместно с ИТ это все использовать на благо, а не во вред
- Почему защита Kubernetes это не то же самое, что и защита Windows/Linux/Mac сред
- Какие подводные камни есть при защите контейнерных сред

Регистрация по ссылке.

Читать полностью…

k8s (in)security

В блоге исследовательской команды Aqua Security вышел пост с громким названием "OPA Gatekeeper Bypass Reveals Risks in Kubernetes Policy Engines"! А по факту просто некорректно написанная политика... И такую некорректную политику можно написать и во всех других PolicyEngine. Помимо этого мы на нашем канале уже об этом писали 3 года назад - вот оригинальный пост.

Вывод тут простой - внимательнее читайте наши посты и будете в курсе самых интересных кейсов раньше других ;)

Читать полностью…
Subscribe to a channel