AWRBACS - это инструмент на
Go
предназначенный упростить аудит CRUD
прав в Kubernetes RBAC
. Подробнее об его истории и назначении можно узнать из статьи автора "AWRBACS: AWACS for RBAC".Сегодня хотим поделиться крутым докладом от
В докладе автор рассказывает о том как значительно улучшилась безопасность
Rory McCune
– Charting the Course: The History and Evolution of Kubernetes Security с недавно прошедшей конференции Kubernetes Community Days UK
.В докладе автор рассказывает о том как значительно улучшилась безопасность
Kubernetes
за последние 10 лет, а также о моментах на которые нужно и важно обращать внимание. Ко всему прочему автор не забывает упомянуть 4 "неисправимых" CVE
в Kubernetes
.6 ноября в 11:00 состоится онлайн-конференция AM Live “Защита контейнерных сред”. Наша команда Luntry, примет участие и вместе с другими спикерами обсудит риски и средства защиты контейнерных сред.
Зарегистрироваться можно тут.
Зарегистрироваться можно тут.
Сегодня в центре нашего внимания статья "Exploring Google Cloud Default Service Accounts: Deep Dive and Real-World Adoption Trends". В рамках нее исследователи проанализировать права облачного
P.S. В комментариях нас поправили - в
Default Service Accounts
в облаке GCP
и в частности Google Kubernetes Engine (GKE)
. Материал будет полезен как клиентам данных систем, так и облачным провайдерам, чтобы своевременно предусмотреть и создать соответствующие механизмы безопасности. В частности тут речь идет про Workload Identity, про который мы уже неоднократно писали [1,2,3,4] на канале, но не встречали аналога в отечественных облаках.P.S. В комментариях нас поправили - в
Yandex
данная фича уже появиласьDatadoghq
Exploring Google Cloud Default Service Accounts: Deep Dive and Real-World Adoption Trends
This post offers a deep dive into Google Cloud’s default service accounts, explaining their functionality, risks, and real-world adoption trends.
7 ноября в 17:00 в рамках SOC Forum 2024 наша команда Luntry представит доклад “Kubernetes Audit Log в арсенале SOC”.
Там мы погрузимся в премудрости механизма
Выступление можно посмотреть как
Там мы погрузимся в премудрости механизма
Kubernetes Audit Log
. Разберемся, какие там есть подводные камни и слепые зоны и как максимально от него получить пользу для обнаружения злоумышленников.Выступление можно посмотреть как
offline
, так и online
на сайте мероприятия.Rory McCune
, чьи исследования мы не раз упомянали на канале, начал новую серию статей – на этот раз, посвященную Kubernetes network security
.Первая статья из цикла – The Many IP Addresses of Kubernetes. В ней автор объясняет сложность сетевых
IP
-адресов в Kubernetes
, где используются три основные IP
-диапазона: адреса для Nodes
, overlay сети для Pods
и сети для Service
. Также на примере разбирается как Kubernetes
связывает IP
на уровне ОС с помощью iptables
, управляемых kube-proxy
.raesene.github.io
The Many IP Addresses of Kubernetes
Начнем новую неделю с замечательного туториала "How to Build Smaller Container Images: Docker Multi-Stage Builds". Основная задача материала научить делать маленькие/тонкие и более безопасные образы для приложений. Одним из основных посылов является: "build and runtime images should also be completely separate!". Из статьи вы узнаете:
1) Как делать не надо.
2) Что такое
3) Примеры
1) Как делать не надо.
2) Что такое
Multi-Stage
сборки3) Примеры
Multi-Stage
сборки для Node.js
, Go
, Rust
, Java
, PHP
Тем временем, в предверии конференции
- добавлена поддержка подписей
- добавлена поддержка
Также нельзя не упомянуть о ломающих изменениях:
1) С версии
2) CVE-2024-48921 позволяла пользователям с возможностью создавать
KubeCon + CloudNativeCon NA 2024
, вышла новая версия Kyverno
– 1.13
. Основных изменений не так много:- добавлена поддержка подписей
images
, использующих sigstore bundle
- добавлена поддержка
PolicyExceptions
для ValidatingAdmissionPolicies
сгенерированных из Kyverno политик (используя subrule validate.cel
)Также нельзя не упомянуть о ломающих изменениях:
1) С версии
1.13
у контроллеров Kyverno отобраны wildcard
разрешения на просмотр всех ресурсов. Это изменение может повлиять на отчеты, а также на политики mutate
и generate
на пользовательских ресурсах, поскольку контроллер больше не сможет просматривать пользовательские ресурсы2) CVE-2024-48921 позволяла пользователям с возможностью создавать
PolicyExceptions
обходить ClusterPolicy
в конкретном неймспейсе.Совсем недавно обновился учебный план для сертификата
-
-
-
-
-
-
Отдельно выделим следующие моменты:
1) Необходимость
2) "Minimize host OS footprint (reduce attack surface)" <- специализированные OS
3) "Minimize base image footprint" <- про тонкие/минималистичные образы
4) "Perform behavioral analytics to detect malicious activities" <- обнаружение по поведению, а не правилам
5) "Use Kubernetes audit logs to monitor access" <- доклад об этом сегодня от нас на SOC Forum ;)
Kubernetes Security Specialist (CKS)
(новая версия 1.31
). Данный план в принципе может быт неким ориентиром по построению защиты у себя. Там есть разбивка на разделы:-
Cluster Setup
-
Cluster Hardening
-
System Hardening
-
Minimize Microservice Vulnerabilities
-
Supply Chain Security
-
Monitoring, Logging and Runtime Security
Отдельно выделим следующие моменты:
1) Необходимость
NetworkPolicy
встречается сразу в нескольких разделах2) "Minimize host OS footprint (reduce attack surface)" <- специализированные OS
3) "Minimize base image footprint" <- про тонкие/минималистичные образы
4) "Perform behavioral analytics to detect malicious activities" <- обнаружение по поведению, а не правилам
5) "Use Kubernetes audit logs to monitor access" <- доклад об этом сегодня от нас на SOC Forum ;)
GitHub
curriculum/CKS_Curriculum v1.31.pdf at master · cncf/curriculum
📚Open Source Curriculum for CNCF Certification Courses - cncf/curriculum
Продолжая тематику
Статья объясняет, как в
Конфигурация сети хранится в файле
Kubernetes Network Security
, Rory McCune
представил новую заметку в своем блоге – Exploring A Basic Kubernetes Network Plugin.Статья объясняет, как в
Kubernetes
кластере Pods
получают IP
-адреса через сетевые плагины, соответствующие спецификации CNI
. В примере используется kind
с плагином kindnetd
.Конфигурация сети хранится в файле
10-kindnet.conflist
, где указаны IP
-диапазоны для каждого узла. Для маршрутизации трафика между подами на разных узлах kindnetd
создает записи в таблице маршрутизации. В завершение автор отмечает, что работа с сетью в Kubernetes
может быть сложной и зависит от выбранного сетевого плагина.raesene.github.io
Exploring A Basic Kubernetes Network Plugin
Очень крутая статья "Kubernetes: The Road to 1.0" о том как все начиналось! Из материала можно узнать о следующих этапах появление
1) Опыт эксплуатации оркестраторов
2) Ранняя разработка
3) Подготовка к запуску в
4) Финишная реализация устройства в
5) Запуск в
Напомним только что:
-
-
И есть отдельный документальный фильм про
Kubernetes
:1) Опыт эксплуатации оркестраторов
Borg
и Omega
с 2009
по 2013
2) Ранняя разработка
API
контейнерного продукта в 2H2013
3) Подготовка к запуску в
1H2014
4) Финишная реализация устройства в
2H2014
5) Запуск в
2015
Напомним только что:
-
7
июня 2014
вышел initial
релиз Kubernetes
-
10
июля 2015
вышел Kubernetes
версии 1
И есть отдельный документальный фильм про
Kubernetes
.Medium
Kubernetes: The Road to 1.0
From my work on Borg and Omega, to how Kubernetes got started and launched, to how we decided what was in and out of 1.0 by July 2015.
12 ноября на конференции DevOops 2024 наша команда Luntry выступит с докладом “Латаем огрехи в образах приложений до рантайма, во время и после”, расскажем как сделать использование образов безопасными.
Внесем изменения на уровне самого образа, применяя модификации слоев с помощью
Внесем изменения на уровне самого образа, применяя модификации слоев с помощью
docker-squash
, mint
и т. д. «Подкрутим» рантайм на уровне операционной системы и Kubernetes
: AppArmor
, capabilities
, управление привилегиями и другие «ручки». Рассмотрим наблюдение за аномальным поведением контейнеров в рантайм.Как думаете, насколько опасна такая
Если вы думали, что только
Что ещё более интересно, так это то, что такое поведение уже было давно в
Чтобы получить
Однако, начиная с версии
Нельзя не упомянуть свежую заметку
Role
?
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: pod-exec-view-role
rules:
- apiGroups: [""]
resources: ["pods/exec"]
verbs: ["get"]
Если вы думали, что только
Role/ClusterRole
с правами create – pods/exec
может позволить пользователю делать exec
в Pod
, то вы ошибались. Благодаря особенностям работы Websockets
, прав get – pods/exec
будет достаточно, чтобы выполнять команды в Pod
. Что ещё более интересно, так это то, что такое поведение уже было давно в
Kubernetes
, но вы могли его не заметить, поскольку по умолчанию для exec
использовался SPDY
протокол, а не Websockets
. О проблеме известно с 2019 года!Чтобы получить
exec
при правах get – pods/exec
, например, можно воспользоваться wscat
:
wscat -s "base64url.bearer.authorization.k8s.io.$token, base64.channel.k8s.io" -n -c 'wss://192.168.99.100:8443/api/v1/namespaces/default/pods/testpod/exec?container=testpod&command=sh&stdout=true&stderr=true&stdin=true&tty=true'
Однако, начиная с версии
Kubernetes 1.31
для операций attach
, exec
и port-forward
теперь по умолчанию используется Websockets
, а это значит, что прав get – pods/exec
будет достаточно, чтобы выполнять команды в Pod
.Нельзя не упомянуть свежую заметку
Rory McCune
– When is read-only not read-only?, в которой он рассказал об этой особенности.Сегодня начался KubeCon + CloudNativeCon North America 2024, а значит что нас ждет море интересных докладов и анонсов. Ряд из больших анонсов уже были сделаны в преддверии конференции. Нам бы отдельно хотелось выделить:
1) Релиз containerd 2.0 (
2) Istio Ambient Mode (то что работает без
P.S. В комментариях можно поделится докладами, которые вам наиболее интересны с данного мероприятия.
1) Релиз containerd 2.0 (
1.0
была выпущена 7
лет назад) - тут наконец есть стабильная поддержка user namespaces
.2) Istio Ambient Mode (то что работает без
sidecar
) достиг статуса General Availability
в версии v1.24
, что заняло у него чуть больше 2
-х лет.P.S. В комментариях можно поделится докладами, которые вам наиболее интересны с данного мероприятия.
LF Events
KubeCon + CloudNativeCon North America | LF Events
The Cloud Native Computing Foundation’s flagship conference gathers adopters and technologists from leading open source and cloud native communities.
Making Sense of Kubernetes Initial Access Vectors Part 1 – Control Plane – неплохая статья от
Глобально автор разделил окружения на
WIZ
, посвященная более глубокому разбору техник для получения Initial Access
в Kubernetes
кластере.Глобально автор разделил окружения на
Control Plane, Data Plane, CI/CD
и Cloud Access
. В рамках данной статьи автор разбирает техники, относящиеся к Control Plane
: Kubelet API Access, Management interfaces
и K8s API Access
.В рамках конференции Cloud Native Rejekts 2024 прошел доклад “Malicious Compliance Automated: When You Have 4000 Vulnerabilities and only 24 Hours Before Release” от Duffie Cooley и Kyle Quest. Данный доклад является логическим развитием одного из моим самых любимых докладов за последнее время "Malicious Compliance: Reflections on Trusting Container Image Scanners" =)
В новом докладе авторы обманывали сканеры уязвимостей всеми правдами и неправдами уже не в ручную, а автоматизировано и получили результат с нескольких тысяч уязвимостей до
Кто там сторонник
В новом докладе авторы обманывали сканеры уязвимостей всеми правдами и неправдами уже не в ручную, а автоматизировано и получили результат с нескольких тысяч уязвимостей до
0
=) В основном для это авторы использовали инструмент mint. Кто там сторонник
zero tolerance
к уязвимостям?! В общем сезон образов без уязвимостей объявляется открытым!Making Sense of Kubernetes Initial Access Vectors Part 2 – Data Plane – вторая статья (с первой можно ознакомиться тут) от
В этой статье автор разбирает техники, относящиеся к
WIZ
, посвященная более глубокому разбору техник для получения Initial Access
в Kubernetes
кластере.В этой статье автор разбирает техники, относящиеся к
Data Plane
: - Applications – abuse RBAC и abuse system privileges
- NodePort Service
- Images and supply chain
На нашем сайте стали доступны слайды и видеозапись доклада "Kubernetes Audit Log в арсенале SOC" c SOC Forum 2024.
В рамках данного доклада наша команда Luntry делиться своими опытом и знанием о детектах на базе событий
В рамках данного доклада наша команда Luntry делиться своими опытом и знанием о детектах на базе событий
Kubernetes Audit Log
.Стали доступны видеозаписи и слайды с KubeCon + CloudNativeCon North America 2024 и это более
300
докладов (смотреть, не пересмотреть). Про безопасность докладов как всегда хватает и мы постепенно самые интересные начнем рассматривать на нашем канале.В начале октября в рамках AM Life Plus наша команда Luntry в лице Дмитрия Евдокимова выступила с темой "Как контейнеры и Kubernetes меняют ландшафт угроз" в стиле
TEDx
. Где очень кратенько (всего 8
мин), без слайдов постаралась порассуждать на тему являются ли контейнерные технологии с оркестраторами новой головной болью для безопасников или наоборот являются новой возможностью противодействовать текущим вызовам и проблем ИБ.