На злобу дня)
Что сейчас многие делают? Выискивают у себя в инфраструктуре этот
Хотелось бы в очередной раз напомнить про экономический момент в безопасности. Предотвратить дешевле, чем расследовать ... Не забывайте об этом когда строите безопасность у себя в компании.
Что сейчас многие делают? Выискивают у себя в инфраструктуре этот
xz utils, ставят задачи на откатиться на нужную версию и ждут когда это произойдет. Возможно кто-то еще какие-то правила детектов на уровни сети напишет. Совсем малое количество (с высоким уровнем зрелости) полезут в логи и будут пытаться там найти следы эксплуатации этой проблемы и если что заведут соответствующие инциденты, которые нужно будет расследовать. Большинство же не сможет не обнаружить этого, не провести расследования (и будут уже жить с другим бэкдором на другом уровне у себя в инфраструктуре).Хотелось бы в очередной раз напомнить про экономический момент в безопасности. Предотвратить дешевле, чем расследовать ... Не забывайте об этом когда строите безопасность у себя в компании.
❤20🤡3💯1🤣1
Стало доступно видео доклада "Безопасность Kubernetes кластеров: вредные советы" с
DevOpsConf 2024! Буду рад обратной связи кто не был на самом выступлении. Присутствующие же очень высоко оценили доклад - по итогам конференции он вошел в ТОП-10 =)👍21🔥15💯3
В одном из предыдущих постов мы рассказывали про Kubernetes LAN Party – небольшое
По ссылке можно почитать
CTF, состоящее из 5 заданий и посвященное Kubernetes Network Security. Пост набрал большие охваты и реакции, очевидно, что вы хотели видеть разбор этих заданий от нас и мы его сделали.По ссылке можно почитать
write-up с разбором всех пяти заданий. Спойлеров не будет, все флаги заблюрены :) Мы рекомендуем прорешать и попробовать свои силы в этом CTF каждому, кто так или иначе имеет дело с безопасностью Kubernetes, и только потом обращаться к нашей статье.👍31🔥10❤3👨💻1
В заключении недели мы рады поделиться слайдами и видео нашего выступления "Нестандартное применение Kyverno" c конференции
SafeCode 2024! Изначально доклад задумывался как полу шуточный, но с прицелом на то что бы показать практическую безграничность логику политик, которую вы можете реализовать с данным PolicyEngine. На самом деле вы ограничены лишь своей фантазией) На сегодняшней день PolicyEngine это просто must have инструмент для любой инфраструктуры и что важно как для ИБ, так и ИТ команд.luntry.ru
Исследования
Полезные материалы с выступлений наших экспертов. Статьи о безопасности Kubernetes и контейнеров. Библиотека знаний о K8s.
👍9🔥6❤1🥰1
Сегодня мы рады анонсировать еще
#9
Название: Строим заборы между сервисами
Докладчик: Андрей Бойцев (Яндекс Финтех)
Описание: В этом докладе мы расскажем о нашем опыте внедрения авторизационных политик (построение
Напомним, что билетов ограниченное количество, и взять их можно тут.
1 доклад с нашей конференции БеКон 2024. Таким образом уже анонсировали 9 докладов. #9
Название: Строим заборы между сервисами
Докладчик: Андрей Бойцев (Яндекс Финтех)
Описание: В этом докладе мы расскажем о нашем опыте внедрения авторизационных политик (построение
zero-trust межсервисной авторизации на базе Istio) в нескольких кластерах, обсудим примеры и сложности с которыми мы столкнулись во время внедрения.Напомним, что билетов ограниченное количество, и взять их можно тут.
👍15🔥4❤🔥2👎1
25 марта
Использование
Это отличный способ включить безопасные настройки по умолчанию , но пока это не так. Вероятно, скоро это изменится, согласно заявлению
Больше технических подробностей про
AWS зарелизила новую функцию, которая позволяет по умолчанию внедрять IMDSv2 на уровне региона для newly-launched instances. Хоть это и долгожданное обновление, тем не менее у этой функции всё еще есть некоторые недостатки.Использование
IMDSv2 защищает от SSRF уязвимостей, которые в противном случае позволили бы злоумышленнику получить креды из Instance Metadata Service (IMDS).Это отличный способ включить безопасные настройки по умолчанию , но пока это не так. Вероятно, скоро это изменится, согласно заявлению
AWS:Mid-2024 – Newly released Amazon EC2 instance types will use IMDSv2 only by default. For transition support, you will still be able to enable/turn on IMDSv1 at launch or after launch on an instance live without the need for a restart or stop/start.
Больше технических подробностей про
IMDSv2 можно найти в статье "IMDSv2 enforcement: coming to a region near you!".👍13
Ingress Node Firewall - проект с открытым исходным кодом из репозитария
-
-
-
По сути он позволяет ограничить от кого на какие порты сервисы на
Подробнее о данном операторе можно узнать из презентации "OCP 4.14 Stateless Ingress Node Firewall" и в этом
OpenShift, реализующий Ingress node firewall в виде Kubernetes operator с помощью eBPF XDP kernel плагина. У данного оператора есть 3 CustomResource:-
IngressNodeFirewallConfig-
IngressNodeFirewallNodeState-
IngressNodeFirewallПо сути он позволяет ограничить от кого на какие порты сервисы на
Node могут принимать соединения, а от кого нет. Подробнее о данном операторе можно узнать из презентации "OCP 4.14 Stateless Ingress Node Firewall" и в этом
20 минутном видео. А примеры ресурсов тут.👍13🔥2
Сегодня хотим поделиться с вами прикольным расширением
Для того чтобы установить расширение к себе в
Argo CD для Trivy Operator. Расширение позволяет прямо в интерфейсе Argo CD отображать vulnerability reports, созданные Trivy Operator в результате сканирования на уязвимости docker образов.Для того чтобы установить расширение к себе в
Argo CD необходимо немного пропатчить Deployment argo-cd sever. А именно – добавить init-container с необходимым React Component.👍29🔥10🥰1🤔1
Вечернее чтение не особо примечательной статьи "PIDs limit — How to Change K8S POD’s Limit", описывающей то, как инженер повышал количество возможных
1) Возможность
2) Возможность ограничить количество
Что думаете про такое?)
PID внутри Pod для Mongo, которая создает на каждой соединение по процессу, навела на ряд интересных мыслей:1) Возможность
DOS системы за счет исчерпания доступного лимита на Node. И как оказалось это не оригинальная идея и она уже рассматривалась в документации OpenShift.2) Возможность ограничить количество
PID на контейнер, что не позволит атакующему/злоумышленнику в таком контейнере создать новые процессы (получить shell и т.д.). Тут через поиск нашелся тикет Allow setting pids-limit on containers #43783, но решение так и не появилось ...Что думаете про такое?)
Medium
PIDs limit — How to Change K8S POD’s Limit
In this article I will describe the way for you to change the POD’s pids.max value(the limit,number of allowed PIDs which means number of…
👍14🔥5❤1🥰1😁1
Вчера на одном достаточно кулуарном мероприятии по ИБ общались с друзьями из разных продуктовых команд безопасности по поводу темы управления уязвимостями. Тема, конечно, очень большая и нас как вы понимаете в первую очередь интересовала область касаемая уязвимостей в пакетах образов контейнеров.
Если раньше можно было часто слышать про
Давайте рассмотрим такой самый распространенный случай (разработчики не дадут соврать):
1) Обновили
2) Есть задача обновиться на последнюю версию.
3) При обновлении выясняется, что там несколько
И вот эту ситуацию решает кто как с учетом как у них работают или не работают
Давайте в комментариях поделимся своим опытом и своим взглядом на эту ситуацию.
P.S. С удивлением для себя открыл, что некоторым проще жить с той багой что уже на проде, чем как-то обходить
P.S.S. А сегодня будем рады пообщаться в рамках CISO Forum 2024 ;)
Если раньше можно было часто слышать про
zero tolerance к уязвимостям, то теперь эта риторика постепенно сходит.Давайте рассмотрим такой самый распространенный случай (разработчики не дадут соврать):
1) Обновили
feed - в проде есть critical.2) Есть задача обновиться на последнюю версию.
3) При обновлении выясняется, что там несколько
high или другой critical.И вот эту ситуацию решает кто как с учетом как у них работают или не работают
security gates и механизмы принятия рисков ...Давайте в комментариях поделимся своим опытом и своим взглядом на эту ситуацию.
P.S. С удивлением для себя открыл, что некоторым проще жить с той багой что уже на проде, чем как-то обходить
security gates и выкатывать новое.P.S.S. А сегодня будем рады пообщаться в рамках CISO Forum 2024 ;)
👍15👎4🔥3❤1
The Kubenomicon - это база знаний одного начинающего исследователя, который хотел для себя задокументировать как можно атаковать
Так проект
По данной теме наша команда Luntry в лице
Kubernetes. Если матрица угроз для Kubernetes от Microsoft нацелена на специалистов, что занимаются защитой данной системы, то данный проект нацелен на тех, кто атакуют данную систему.Так проект
Kubenomicon для многих новичков будет полезным, но помните, что он еще очень сырой ... много что там не описано и ждет доработки, ну и неточности/неполнота тоже имеются, так что будьте аккуратны. Ну и как-то практически все описывается без оглядки на RBAC, что создает ложную иллюзию простоты. Явно тут не хватает описания моментов/механизмов, которые могут противодействовать этому и почему у вас может, так сказать, не получаться по инструкции)По данной теме наша команда Luntry в лице
Сергея Канибора на VK Kubernetes Conf 2023 в рамках доклада "Экскурсия по матрицам угроз для контейнеров и Kubernetes" уже рассказывала об основных матрицах угроз для контейнеров и K8s, об их отличиях и недостатка, а также на примерах показывала, как это может работать и не работать. То есть что там есть далеко не все, и мы на своих проектов применяем больше, чем есть в этих матрицах.👍16🔥11❤2🥰2👏1💩1
Сегодня хотим подсветить инструмент Dredge, автором которого является человек, создавший The Kubenomicon (о нём рассказывали в прошлом посте).
Поиск секретов это всегда утомительная задача из-за большего количества
- При поиске кредов обычно ищут фактический пароль. Но что если вы не знаете пароль?
-
- Dredge поддерживает поиск и копирование
- Это просто
Поиск секретов это всегда утомительная задача из-за большего количества
false positive. Dredge призван решить эту проблему, используя полуручной анализ найденных результатов. Кроме того, в нём есть то, чего нет в других инструментах для поиска sensitive info:- При поиске кредов обычно ищут фактический пароль. Но что если вы не знаете пароль?
Dredge позволяет создавать очень общие запросы, такие как API_KEY=, и анализировать результаты на предмет чувствительной информации;-
Wordlist может быть адаптирован к среде, в которой в ищете секреты;- Dredge поддерживает поиск и копирование
kubeconfig файлов;- Это просто
bash script. Никаких внешних зависимостей.👍15🔥2🥰1
Сегодня у нас в центре внимания статья/заметка с говорящим названием "How to Port a Sample Application to Chainguard Images" от создателей
Chainguard Images. Здесь прям по шагам рассматривается как портировать приложение на NodeJS и Python на тонкие образы. В результате получаем и образы более маленького размера и 0 CVE в графе уязвимостей. Ну не прекрасно ли ?)Chainguard Academy
How to Port a Sample Application to Chainguard Containers
This article works through porting a small but complete application to use Chainguard Containers. As we'll see, this is relatively straightforward, but it is important to be aware of some of the differences to other common images.
👍15🔥8❤4
Вчера была раскрыта CVE-2024-3177: Bypassing mountable secrets policy imposed by the ServiceAccount admission plugin. Уязвимость получила
Благодаря этой уязвимости злоумышленник мог обойти
Соответствующие патчи для последних трёх поддерживаемых версий уже выпущены –
По своей природе уязвимость очень похожа на CVE-2023-2728: Bypassing mountable secrets policy imposed by the ServiceAccount admission plugin – о ней мы рассказывали на канале ранее.
Low (2.7) оценку по CVSS Rating: CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:N/A:N.Благодаря этой уязвимости злоумышленник мог обойти
mountable secrets policy, которая реализуется ServiceAccount admission plugin (в большинстве кластеров он включен по умолчанию), при использовании контейнеров, init и ephemeral контейнеров с выставленным полем envFrom. Также немаловажным условием для эксплуатации уязвимости является наличие аннотации kubernetes.io/enforce-mountable-secrets.Соответствующие патчи для последних трёх поддерживаемых версий уже выпущены –
1.29.4, 1.28.9, 1.27.13. Уязвимость аффектит все версии Kubernetes <=1.27.12.По своей природе уязвимость очень похожа на CVE-2023-2728: Bypassing mountable secrets policy imposed by the ServiceAccount admission plugin – о ней мы рассказывали на канале ранее.
GitHub
CVE-2024-3177: Bypassing mountable secrets policy imposed by the ServiceAccount admission plugin · Issue #124336 · kubernetes/kubernetes
CVSS Rating: CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:N/A:N - Low (2.7) A security issue was discovered in Kubernetes where users may be able to launch containers that bypass the mountable secrets po...
👍11🔥4❤2
Вышла новая версия
О ряде
1)
2) Поддержка
А об остальных изменениях, отличиях по сравнению с
Kubernetes под номером 1.30 и это помимо появления новых фич, говорит нам о скором завершении поддержки 1.27 ...О ряде
security фич мы уже писали в одном из наших предыдущих постов. А сегодня остановимся на том, что не писали и/или кажется особо важным на наш взгляд. А это:1)
AppArmor перешел из beta (там он был с 1.4) в GA (прошло 7 лет)! Теперь нужно задавать его не в аннотации, а в PodSecurityContext и SecurityContext.2) Поддержка
User Namespaces перешла в beta! Очень бодрый переход такой важной фичи, которая только в 1.29 появилась в статусе alpha. Определенно в будущем будет просто включена по умолчанию.А об остальных изменениях, отличиях по сравнению с
1.29 можно прочитать тут.👍22🦄5🔥4🥰3❤🔥1
Всем, привет!
Мы опубликовали программу БеКон 2024!
И как всегда оставляем за собой права добавить туда еще что-ниюудь интересное ближе к конференции ;)
Напомним, что билетов ограниченное количество, и взять их можно тут.
P.S. Всем хороших выходных!
Мы опубликовали программу БеКон 2024!
И как всегда оставляем за собой права добавить туда еще что-ниюудь интересное ближе к конференции ;)
Напомним, что билетов ограниченное количество, и взять их можно тут.
P.S. Всем хороших выходных!
🔥16👍6❤4🥱1
Kyverno – одно из самых гибких решений из класса Policy Engine. Его можно использовать не только для контроля Kubernetes ресурсов, но и впринципе для любых других данных. Разработчики решения пошли дальше и сделали kyverno-envoy-plugin.По сути, это некоторый плагин для
Kyverno, который использует External Authorization от Envoy, перехватывает запросы и валидирует их в зависимости от контекста политики Kyverno.Пока что это очень сырой, но тем не менее работающий проект. Авторы планируют добавить использование
Admission Controller для инжекта kyverno-envoy в качестве sidecar контейнера в довесок к основному.P.S. Про гибкость
Kyverno мы рассказывали в докладе "Нестандартное применение Kyverno".GitHub
GitHub - kyverno/kyverno-envoy-plugin: Kyverno policies based authorization :heart:
Kyverno policies based authorization :heart:. Contribute to kyverno/kyverno-envoy-plugin development by creating an account on GitHub.
👍13🔥8❤3
Замечательная исследовательская заметка "Fun with Kubernetes Authorization Auditing - multiple authz plugins" от
Идея статьи сводится к тому что если вы используете свою кастомную авторизацию, то встроенные механизмы
В статье содержится код проекта, демонстрирующий как вы еще можете написать и добавить свой собственный
Также тут несколько раз повторяется о том что
Rory McCune. Рассказ о том как гибкость Kubernetes может добавить ряд сложностей и в данном моменте тут про авторизацию. Я думаю многие в курсе что в стандартном кластере обычно у вас сразу два обработчика авторизации это RBAC и Node. Но можно и больше и мнение каждого будет учитываться. Идея статьи сводится к тому что если вы используете свою кастомную авторизацию, то встроенные механизмы
k8s, на примере, kubectl auth can-i могут работать некорректно. Но могу честно сказать по нашему многолетнему опыту аудитов командой Luntry такого мы еще не встречали ...В статье содержится код проекта, демонстрирующий как вы еще можете написать и добавить свой собственный
Authz Webhook с логикой. И на память приходит реализация ReBAC, о которой мы писали ранее.Также тут несколько раз повторяется о том что
admission control всегда имеет последнее слово и при желании может отменить, то что разрешила авторизация. На пример, ограничить в правах Cluster Admin ;)raesene.github.io
Fun with Kubernetes Authorization Auditing - multiple authz plugins
👍12🔥4❤1
Nimbus – инструмент, который авторы позиционируют как систему автоматизации безопасности на основе намерений.
Главная его цель максимально разделить намерения безопасности от их фактической реализации, благодаря использованию
В данный момент тулза имеет три адаптера и может генерировать соответствующие политики для
Несмотря на кажущуюся простоту и удобство использования, инструмент выглядит как дополнительный слой абстракции над текущими механизмами, что кажется только усложняет всю систему.
Главная его цель максимально разделить намерения безопасности от их фактической реализации, благодаря использованию
Policy Engine, Network Policy и других механизмов в Kubernetes. Так, например пользователь может задать ресурс в виде высокоуровневой абстракции "Не допускать privilege escalation" или "Запретить общаться по DNS со всеми, кроме Kube-DNS", а nimbus преобразует его в конкретную политику и применит к необходимому Pod.В данный момент тулза имеет три адаптера и может генерировать соответствующие политики для
KubeArmor, Kyverno и Native Network Policy.Несмотря на кажущуюся простоту и удобство использования, инструмент выглядит как дополнительный слой абстракции над текущими механизмами, что кажется только усложняет всю систему.
💯13🔥7👍5
Container Image Layers and Container Image Scanning Explained – неплохая статья для новичков и тех, кто хочет разобраться с тем как устроены слои в
Если говорить верхнеуровнево, то как правило, такие сканеры работают примерно по одному и тому же принципу:
1) Выкачивают образы из
2) Анализируют каждый слой образа – извлекают
3) Объединяют результаты анализа
4) Сканируют найденные пакеты на уязвимости
docker image, а также как работают сканеры образов.Если говорить верхнеуровнево, то как правило, такие сканеры работают примерно по одному и тому же принципу:
1) Выкачивают образы из
registry2) Анализируют каждый слой образа – извлекают
tar-файлы и проверяют наличие пакетов по заранее известным путям3) Объединяют результаты анализа
4) Сканируют найденные пакеты на уязвимости
Anais Urlichs
Container Image Layers and Container Image Scanning Explained
An introduction to container image layers and how security scanners such as Trivy make use of OCI properties.
👍17🔥6❤2