"ABSTRACT SHIMMER (CVE-2020-15257): Host Networking is root-Equivalent, Again" - отличный технический рассказ с примерами кода о том, как находилась, исследовалась уязвимость CVE-2020-15257, о которой я писал раньше.
При прочтении вы узнаете о том, как работает
При прочтении вы узнаете о том, как работает
containerd-shim
, как закрыли данную уязвимость и как ее можно проэксплуатировать. Сам исходный код эксплоита автор собирается выложить 11 января, НО по статье его можно написать и самостоятельно.Готовя/актуализируя свой тренинг по безопасности
Так что в качестве
cloud native
приложений в Kubernetes, обнаружил что (в версии 1.19) альфа фича DynamicAuditing
и auditregistration.k8s.io/v1alpha1
API были депрекейтнуты и удалены. А данная фича мне очень нравилась - можно было очень быстро и удобно управлять своими обработчиками логов через ресурс AuditSink
. Так что в качестве
backend
остались только: Log backend и Webhook backend.CVE-2020-8569: snapshot-controller DoS
Уязвимость среднего уровня критичности может привести к отказу в обслуживании компонента snapshot-controller
Уязвимость среднего уровня критичности может привести к отказу в обслуживании компонента snapshot-controller
через неавторизованный API запрос. Связано с тем, что атакующий может указать такой `VolumeSnapshot
, который будет ссылаться на несуществующий PersistentVolumeClaim
. Данный компонент будет падать, перезапускаться и снова падать. Доступ же к самим snapshots
атакующий получить не сможет.snapshot-controller
это опциональный компонент Kubernetes, который включает volume snapshot
фичу. Если вы его не используете, то и беспокоиться не о чем.Наконец полностью изучил документ Cloud Native Security Whitepaper.
Остались смешанные ощущения, но он определенно мне понравился. Я это связываю с тем, что его писала большая группа людей и поэтому он получился очень неравномерным. В каких-то моментах он очень хорош, а в каких-то начинает путать, и противоречить самому себе.
Целевая аудитория у него и в правду это
А некоторые интересные моменты я обязательно рассмотрю на канале.
P.S. Приятно было найти что наше виденье и новые идеи, которое мы закладываем в наш продукт, здесь также нашли свое отражение.
Остались смешанные ощущения, но он определенно мне понравился. Я это связываю с тем, что его писала большая группа людей и поэтому он получился очень неравномерным. В каких-то моментах он очень хорош, а в каких-то начинает путать, и противоречить самому себе.
Целевая аудитория у него и в правду это
CISO, CSO, CTO, Architects
и люди, которым надо быстро вникнуть в суть Cloud Native Security подходов/решений что представлены на рынке. Там перечислено все что только возможно, но далеко не все из этого нужно и, конечно, не все всё себе из этого могут позволить.А некоторые интересные моменты я обязательно рассмотрю на канале.
P.S. Приятно было найти что наше виденье и новые идеи, которое мы закладываем в наш продукт, здесь также нашли свое отражение.
Risk8s Business: Risk Analysis of Kubernetes Clusters
Отличный гайд в стиле "zero-to-hero" по управлению рисками в
Основную мысль, которую вы должны вынести после прочтения это вы должны понимать свое окружение (контекст очень важен), чтобы правильно оценивать риски и правильно выбирать подходы/методы/инструменты для их минимизации и/или избавления. Безопасность это процесс управления рисками! Все бизнесы, все сервисы, все
Закончу прекрасной цитатой автора: "While there are some things you should consider tooling up for like vulnerability scanning, runtime security verification, and storage permission checks, you’ll never be able to definitively conclude its overall risk without the context of its environment."
Отличный гайд в стиле "zero-to-hero" по управлению рисками в
Kubernetes
. Читается очень просто, быстро и понятно - очень рекомендую. Основную мысль, которую вы должны вынести после прочтения это вы должны понимать свое окружение (контекст очень важен), чтобы правильно оценивать риски и правильно выбирать подходы/методы/инструменты для их минимизации и/или избавления. Безопасность это процесс управления рисками! Все бизнесы, все сервисы, все
Kubernetes
разные. Не действуйте вслепую! Закончу прекрасной цитатой автора: "While there are some things you should consider tooling up for like vulnerability scanning, runtime security verification, and storage permission checks, you’ll never be able to definitively conclude its overall risk without the context of its environment."
Крохотная заметка от авторов сетевого плагина Cilium о возможности данного
Еще в заметке немного общих данных о
Напомню, что
CNI
из коробки работать без использования kube-proxy
и тем самым быть не подверженным MitM
атаке из-за CVE-2020-8554: "we don't translate an ExternalIP address for traffic sourced from pods unless the ExternalIP is associated with a known node."Еще в заметке немного общих данных о
MitM
атаках в Kubernetes
. Также немного разговора о Zero Trust Networking
и то, что они стараются смягчить возможности общеизвестных MitM
атак (насколько это правда еще нужно поисследовать).Напомню, что
Cilium
базируется на технологии eBPF.В версии 1.20 до
Теперь
Теперь
Для всего этого вам придётся сконфигурировать соответствующие флаги для
Какая из этого огромная польза для безопасности можете прочитать в KEP раздела Background (на скрине).
GA
ветки добрались фичи для улучшения безопасности service account tokens
.Теперь
Pods
могут запрашивать service account tokens
с улучшенной безопасностью. Теперь
kubelet
может проецировать service account token
в Pod
с желаемыми свойствами, такими как аудитория и срок действия (для default token
это не работает). При этом этот token
станет недействительным для API при удалении Pod
или ServiceAccount
. Такое поведение можно сконфигурировать в PodSpec
используя ProjectedVolume
тип под названием ServiceAccountToken
. kubelet
будет заниматься ротации, но само приложения ответственно за подтягивание нового token
.Для всего этого вам придётся сконфигурировать соответствующие флаги для
kube-apiserver
(по умолчанию это не включено).Какая из этого огромная польза для безопасности можете прочитать в KEP раздела Background (на скрине).
Инструмент DEEPCE, название которого является абревиатурой от фразы
Для максимальной совместимости весь инструмент написан на
Поддерживаемые эксплоиты:
- DOCKER - использование
- PRIVILEGED - использование привилегированного контейнера
- SOCK - использование
- CVE-2019-5736
- CVE-2019-5021
- CVE-2019-13139
Применимо ли это в
Docker Enumeration, Escalation of Privileges and Container Escapes
. Название говорит само за себя.Для максимальной совместимости весь инструмент написан на
sh
без каких-либо зависимостей (1234 LoC). Но для ряда задач он все же ожидает что внутри также окажутся тулзы: curl
, nmap
, nslookup
, dig
. Также учитывайте, что при эксплуатации ряда векторов он может создавать контейнеры, перезапускать runC
, что потенциально может навредить системе - будьте осторожны. При этом есть классная возможность скачать и запустить его без записи на диск:wget -O - https://github.com/stealthcopter/deepce/raw/master/deepce.sh | sh
Поддерживаемые эксплоиты:
- DOCKER - использование
docker group
- PRIVILEGED - использование привилегированного контейнера
- SOCK - использование
docker sock
- CVE-2019-5736
- CVE-2019-5021
- CVE-2019-13139
Применимо ли это в
Kubernetes
? Да! Инструмент даже знает про kubectl
;)Сегодня пост из категории мысли в слух.
За последнее время появилось достаточно много статических анализаторов ресурсов (
Но есть ли уверенность в том, что мы увидим тоже самое после выкатки этих ресурсов? Ответ: совсем не обязательно - статическая и динамическая картина могут отличаться.
В процессе выкатки, MutatingAdmissionWebhook может внести туда множество изменений. В качестве примера: переменные окружения,
Может помочь ValidatingAdmissionWebhook, но не стоит забывать, что если условие было добавлено спустя какое-то время, то в инфраструктуре уже могут существовать ресурсы, не подходящие под его условия. В одном из своих постов я уже писал, что возможно и создание вредоносных
Динамическая природа
За последнее время появилось достаточно много статических анализаторов ресурсов (
Terraform
, Helm
, Kubernetes
и т.д.) для проверки их в репозитариях, которые по заветам GitOps
являются единственным источником правды. Это могут быть проверки как на best-practices
, так и на security
. Но есть ли уверенность в том, что мы увидим тоже самое после выкатки этих ресурсов? Ответ: совсем не обязательно - статическая и динамическая картина могут отличаться.
В процессе выкатки, MutatingAdmissionWebhook может внести туда множество изменений. В качестве примера: переменные окружения,
init
и sidecar
контейнеры, изменение LimitRange и ResourceQuota, установку privileged
режима, монтирование директорий и т.д. Это может быть как с благими, так и с вредоносными намерениями (ну или для обхода ограничений в угоду более быстрой разработки).Может помочь ValidatingAdmissionWebhook, но не стоит забывать, что если условие было добавлено спустя какое-то время, то в инфраструктуре уже могут существовать ресурсы, не подходящие под его условия. В одном из своих постов я уже писал, что возможно и создание вредоносных
ValidatingAdmissionWebhook
. Создание вредоносного MutatingAdmissionWebhook
злоумышленником/инсайдером или просто не очень квалифицированным сотрудником также возможно.Динамическая природа
Kubernetes
вносит свои коррективы в жизнь ресурсов и это надо учитывать, как и строгий контроль того кто и что делает с помощью MutatingAdmissionWebhook
и ValidatingAdmissionWebhook
.Kubernetes
Admission Control in Kubernetes
This page provides an overview of admission controllers.
An admission controller is a piece of code that intercepts requests to the Kubernetes API server prior to persistence of the resource, but after the request is authenticated and authorized.
Several…
An admission controller is a piece of code that intercepts requests to the Kubernetes API server prior to persistence of the resource, but after the request is authenticated and authorized.
Several…
kubestrike - инструмент на Python для идентификации
Есть поддержка двух режимов сканирования:
- Аутентифицированное (нужен токен с
- Не аутентифицированное (возможно в случае наличия анонимного доступа в кластере)
Текущие возможности:
- Анализ
- Возможность запускать команды в контейнерах
- Предоставляет информацию о потенциальных возможностях поднятия привилегий
Все проверки можно поискать по коду по паттерну
P.S.Вспомнил как еще в бытность редактором рубрик "X-Toolz"и "Security soft" в журнале "Хакер" приходилось к выпуску готовить по 15-30 tool
security misconfigurations
(по сути своей слабых и не безопасных настроек) в Kubernetes
(как self-hosted
, так и Amazon EKS
, Azure AKS
, Google GKE
и т.д.).Есть поддержка двух режимов сканирования:
- Аутентифицированное (нужен токен с
read-only
привилегиями)- Не аутентифицированное (возможно в случае наличия анонимного доступа в кластере)
Текущие возможности:
- Анализ
IAM
в кластере, привилегированных субъектов в кластере , контейнеров, сервисов, Pod Security Policies
, Network Policies
- Возможность запускать команды в контейнерах
- Предоставляет информацию о потенциальных возможностях поднятия привилегий
Все проверки можно поискать по коду по паттерну
[+] Scanning for
их достаточно много. Сам инструмент по своей сути просто yet another tool
для Kubernetes
, но может кому и приглянется.P.S.Вспомнил как еще в бытность редактором рубрик "X-Toolz"и "Security soft" в журнале "Хакер" приходилось к выпуску готовить по 15-30 tool
"Improving Kubernetes and container security with user namespaces"
Наверно лучшая статья, которую я читал по безопасности
Из этой статьи вы узнаете, что такое и зачем нужен user namespace, как он влияет на безопасность контейнеров. И самое интересное, что необходимо изменить со стороны файловой системы,
Статья просто
Дополнительно можно почитать как к таким изменениям подошел
Наверно лучшая статья, которую я читал по безопасности
Kubernetes
в этом году.Из этой статьи вы узнаете, что такое и зачем нужен user namespace, как он влияет на безопасность контейнеров. И самое интересное, что необходимо изменить со стороны файловой системы,
Container Runtime
и Kubernetes volumes
, чтобы это наконец смогло заработать в самом Kubernetes
. Работа кипит и за ней можно следить тут.Статья просто
MUST READ
, в процессе чтения раскрывается много не самых простых и очевидных базовых моментов работы контейнеров, который очень важны для понимания.Дополнительно можно почитать как к таким изменениям подошел
Netflix
в своей системе оркестрации контейнеров Titus
.Всем, привет!
Сегодня в преддверии праздников хочется рассказать и сказать спасибо за помощь и содействие моим друзьям и товарищам с других Telegram каналов, за которыми я слежу и с которыми мы хорошо общаемся:
- Технологический Болт Генона
- DevSecOps Talks
- CloudSec Wine
В наше время нет проблем с наличием информации, есть проблемы с ее фильтрацией - нахождением полезной и нужной информации в море маркетинга и рекламы. Читайте разные каналы, анализируйте информацию - помните, что у вас всегда есть своя голова на плечах ;)
Особенно это важно для Cloud Native инфраструктур/сервисов/приложений, где все очень разное, разнообразное и то, что отлично работает у одних, может быть совершенно не применимо у вас.
Сегодня в преддверии праздников хочется рассказать и сказать спасибо за помощь и содействие моим друзьям и товарищам с других Telegram каналов, за которыми я слежу и с которыми мы хорошо общаемся:
- Технологический Болт Генона
- DevSecOps Talks
- CloudSec Wine
В наше время нет проблем с наличием информации, есть проблемы с ее фильтрацией - нахождением полезной и нужной информации в море маркетинга и рекламы. Читайте разные каналы, анализируйте информацию - помните, что у вас всегда есть своя голова на плечах ;)
Особенно это важно для Cloud Native инфраструктур/сервисов/приложений, где все очень разное, разнообразное и то, что отлично работает у одних, может быть совершенно не применимо у вас.
Telegram
Технологический Болт Генона
До Декарта никогда не существовало рационализма.
Музыкальный Болт Генона: @mus_b0lt_Genona
Мемный Болт Генона: @mem_b0lt_Genona
Кадровый Болт Генона @kadr_b0lt_Genona
Обратная связь: @rusdacent
Музыкальный Болт Генона: @mus_b0lt_Genona
Мемный Болт Генона: @mem_b0lt_Genona
Кадровый Болт Генона @kadr_b0lt_Genona
Обратная связь: @rusdacent
Всем, привет!
Ребята с не малоизвестного ресурса Habr пригласили меня сегодня в 19:00 (Мск) поучаствовать в их видкасте.
Тема:
Инфобез как война роботов
Описание:
Многие уловили момент, когда информационная безопасность перешла из стадии человек против человека в стадию человек против машины, но пропустили, когда же инфобез стал войной роботов. А между тем фактически вся ИБ уже работает на ИИ. Так когда это произошло? И какие форматы предиктивной защиты подарило нам машинное обучение? Чем теперь занимаются освободившиеся люди? Как дальше будут эволюционировать машинописные угрозы? Обсуждаем все, что касается настоящего и будущего инфобеза.
Online можно смотреть в VK, Facebook и YouTube.
Ребята с не малоизвестного ресурса Habr пригласили меня сегодня в 19:00 (Мск) поучаствовать в их видкасте.
Тема:
Инфобез как война роботов
Описание:
Многие уловили момент, когда информационная безопасность перешла из стадии человек против человека в стадию человек против машины, но пропустили, когда же инфобез стал войной роботов. А между тем фактически вся ИБ уже работает на ИИ. Так когда это произошло? И какие форматы предиктивной защиты подарило нам машинное обучение? Чем теперь занимаются освободившиеся люди? Как дальше будут эволюционировать машинописные угрозы? Обсуждаем все, что касается настоящего и будущего инфобеза.
Online можно смотреть в VK, Facebook и YouTube.
VK Видео
Хабр ПРО. Инфобез как война роботов
Многие уловили момент, когда информационная безопасность перешла из стадии человек против человека в стадию человек против машины, но пропустили, когда же инфобез стал войной роботов. А между тем фактически вся ИБ уже работает на ИИ. Так когда это произошло?…
Kyverno - Kubernetes Native Policy Management.
Проект также как и OpenPolicyAgent (
Если их сравнивать, то
Но и у
Лично мне ближе
Проект также как и OpenPolicyAgent (
OPA
) находится под эгидой CNCF
, но при этом известен/распиарен куда меньше. OPA
мне всегда нравился, но при этом меня смущало в нем необходимость использование/знание Rego (считай еще одного ЯП). Это можно сказать прям ломало Kubernetes Native
подход ...Kyverno
же использует для своей работы только YAML
и очень прост в работе, если вы можете читать описание ресурсов, то и написать политику для него вам не составит труда!Если их сравнивать, то
OPA
, конечно, способен покрыть не только Kubernetes
(но нужно ли вам это вообще?) и его язык дает более широкие возможности (переменные, хранилища ресурсов и т.д.) (но я с ходу смог придумать только 1 такой кейс ...).Но и у
Kyverno
есть свои фишки можно делать не только операции Validating
, но и Mutating
и Generating
с ресурсами. Конечно, при использование последних двух опять GitOps
в пролете, но может быть очень полезно ;) При этом они оба умеют сканировать ресурсы, которые уже работают в системе (у одного это называется Audit
у другого Background Scans
).Лично мне ближе
Kyverno
как минимум тем, что он сохранят единый язык общения между Dev
, Ops
и Sec
командами и они продолжают понимать друг друга. Очень важно, чтобы безопасность не была 'блокером', а прозрачно встраивалась для всех.Контейнеры versus VM
В рамках своего канала я уже не однократно рассказывал, что в качестве
НО если посмотреть на них не с точки зрения безопасности, то можно заметить как очевидные, так и не очень ограничения и недостатки. Во-первых, это определенные требования к окружению/железу - не везде
Третий пункт лично для меня (как в прочем и для ИБ) наиболее критичный. Наличие любого "черного ящика" в системе затрудняет как обнаружение, так и расследование инцидентов.
P.S. Уверен есть и другие ограничения и недостатки - можно их собрать в комментариях.
В рамках своего канала я уже не однократно рассказывал, что в качестве
container runtime
в Kubernetes
можно использовать VM. Изучая данное направление, следя за их развитием, я все больше убеждался в крутости использования VM
, базирующейся в первую очередь на их высокой изолированности (и безопасности). НО если посмотреть на них не с точки зрения безопасности, то можно заметить как очевидные, так и не очень ограничения и недостатки. Во-первых, это определенные требования к окружению/железу - не везде
VM
запуститься (тут еще стоит помнить про разные типы виртуализации full
, paravirtualization
, nested
) и не любой сервис вам даст это сделать. Во-вторых, очень сильную изоляцию чаще рассматривают не в контексте security
, а в контексте multitenancy
, что далеко не всем вообще надо. В-третьих, сильно падает (исчезает?) observability
происходящего внутри контейнеров. Если в случаи классических контейнеров для вас это такие же linux
процессы просто с определенными свойствами, то в случаи VM
это несколько общих процессов, представляющих для вас "черный ящик". И наблюдать за происходящим там можно только за тем, что вы сами или разработчики VM
запрограммировали для передачи наружу в систему мониторинга, а любимые и проверенные инструменты уже не помогут. Третий пункт лично для меня (как в прочем и для ИБ) наиболее критичный. Наличие любого "черного ящика" в системе затрудняет как обнаружение, так и расследование инцидентов.
P.S. Уверен есть и другие ограничения и недостатки - можно их собрать в комментариях.
Telegram
k8s (in)security
Исследуя тему побега из контейнеров, я не мог не обратить свое внимание и на виртуальные машины (VM), которые можно использовать для запуска OCI образов в Kubernetes. В процессе всего этого, я встретил несколько точек зрения о будущем использования VM в Kubernetes.…
BPFBox - Exploring process confinement in eBPF.
Очень интересный академический проект, о котором вы могли слышать на eBPF Summit 2020 в докладе "bpfbox: Simple Precise Process Confinement with KRSI and eBPF". Он точно не готов для использования в
Сам проект использует
Если вы учитесь и не определились с темой диплома или вы являетесь научным руководителем, то по мне это очень полезное и перспективное направление, в котором можно работать.
Подробнее о проекте можно узнать из документа "bpfbox: Simple Precise Process Confinement with eBPF".
Очень интересный академический проект, о котором вы могли слышать на eBPF Summit 2020 в докладе "bpfbox: Simple Precise Process Confinement with KRSI and eBPF". Он точно не готов для использования в
prod
окружении. Там много чего не хватает, да и требования к ядру > 5.8
(таких ядер в prod
я ни у кого еще не видел). Такая высокая версия ядра обусловлена требованием наличия KRSI (Kernel Runtime Security Instrumentation)
, который в upstream
появился только с 5.7
, и типу ringbuf map (5.8+)
.Сам проект использует
eBPF
и позволяет ограничивать user-space
и kernel-space
вызовы в соответствии с описанной политикой. Можно представить себе это как будущее sandboxing
и prevention
систем. И можно это использовать как для standalone
приложений, так и для контейнерный приложений в Kubernetes
, без вреда стабильности работы и сложности SELinux
или AppArmor
.Если вы учитесь и не определились с темой диплома или вы являетесь научным руководителем, то по мне это очень полезное и перспективное направление, в котором можно работать.
Подробнее о проекте можно узнать из документа "bpfbox: Simple Precise Process Confinement with eBPF".
GitHub
GitHub - willfindlay/bpfbox: 🐝 BPFBox 📦 Exploring process confinement in eBPF
🐝 BPFBox 📦 Exploring process confinement in eBPF. Contribute to willfindlay/bpfbox development by creating an account on GitHub.
Есть такой замечательный инструмент как osquery. Он превращает вашу ОС на базе
В ноябре 2020 года появился проект cloudquery. Он был вдохновлен
-
-
-
O
P.S. kube-query экспериментальное расширение для osquery для поддержки
Linux
, macOS
, Windows
, FreeBSD
в реляционную БД (набор SQL
табличек) и позволяет запрашивать из них данные о системе (пользователи, железо, процессы, ФС и т.д.) по необходимости или с определенной периодичностью, что может быть полезно для мониторинга или аналитики. У инструмента даже есть своя конфа QueryCon, где ее пользователи делятся своим опытом и наработками. Первая версия появилась в сентябре 2014.В ноябре 2020 года появился проект cloudquery. Он был вдохновлен
osquery
и terraform и является compliance-as-code
инструментом. Он также представляет вашу облачную инфраструктуру в виде SQL
или Graph (Neo4j)
базы данных. Сейчас инструмент поддерживает: -
AWS
-
Azure
-
GCP
- Okta
- Kubernetes
(alpha стадия) O
Kubernetes
инструмент знает только информацию о Pods и Services и пока все. Получает он это через Kubernetes API
. Для AWS
есть готовый AWS CIS policy pack
.P.S. kube-query экспериментальное расширение для osquery для поддержки
Kubernetes
+ пример его использования.GitHub
GitHub - osquery/osquery: SQL powered operating system instrumentation, monitoring, and analytics.
SQL powered operating system instrumentation, monitoring, and analytics. - osquery/osquery
В связи с нашумевшей атакой на
Давайте повернем это все в наш контекст - контекст приложений для
1)
2) Образы контейнеров - тут сходу вспоминаются истории как на DockerHub залиты образы с
3)
4)
В ситуации с
В случае
SolarWinds
очень остро стал вопрос с атаками на цепочку поставок (supply chain
).Давайте повернем это все в наш контекст - контекст приложений для
Kubernetes
. Что мы имеем:1)
Open Source
код - а кто его сегодня не использует? Начиная от ваших собственных разработок, заканчивая инструментов/тулов что вы используете в готовом виде и коммерческих решений.2) Образы контейнеров - тут сходу вспоминаются истории как на DockerHub залиты образы с
backdoors
и вредоносным кодом.3)
k8s
ресурсы - такая своего рода обертка над контейнерами, которая также позволяет и внедрить что-то не очень заметно, так понизить уровень безопасности самого контейнера.4)
Helm
чарты - наверно вершина этой пирамиды, призванная максимально упростить процесс установки приложений в кластер. И часто вы их читаете полностью что там написано? И легко ли это вообще сделать? Скорее нет ;)В ситуации с
SolarWinds
был заражен их продукт Orion
(это кажется платформа мониторинга). Долгое время вредоносная активность от этого решения была не замечена, а все из-за того что никто и не знал как оно работает (что может делать, а что нет - считай черный ящик). А также относились к нему как к доверенному компоненту системы - а в наше время без ZeroTrust
подхода уже никуда.В случае
Kubernetes
инфраструктуры при правильном подходе такое можно было бы обнаружить без супер усилий. На помощь приходит и observability
, visibility
в контейнерах и иммутабильность образов контейнеров с NetworkPolicy
, PodSecurityPolicie
для ZeroTrust
.xakep.ru
Взлом года. Всё, что известно о компрометации SolarWinds на данный момент
Хакеры атаковали компанию SolarWinds и заразили ее платформу Orion малварью. Многие уже называют случившееся самой масштабной атакой года, в которой, конечно, подозревают российских правительственных хакеров. В этом материале мы собрали все, что известно…
Выложили запись
В самом
- Docker
• Kernel namespaces
• Kernel capabilities
• Mandatory Access Controls
• Container UID & GID
• Userns-remap
• Distroless
- Kubernetes
• API Authentication
• API Authorization
• Security Context
• Security Policies
• Network Policies
Так что я не согласен с утверждением автора: "Students will walk away having learned the advanced security features of Docker & Kubernetes."
И сам
workshop
'а на тему "Applied Defense On Docker And Kubernetes" продолжительностью 2,5 часа с конференция HackInTheBox
(язык английский). Очень люблю данную конференцию, сам там выступал и хорошо общаюсь с их главным организатором.В самом
workshop
’e его участники по мне так могут узнать только основную базу - подробнее можно посмотреть agenda в программе:- Docker
• Kernel namespaces
• Kernel capabilities
• Mandatory Access Controls
• Container UID & GID
• Userns-remap
• Distroless
- Kubernetes
• API Authentication
• API Authorization
• Security Context
• Security Policies
• Network Policies
Так что я не согласен с утверждением автора: "Students will walk away having learned the advanced security features of Docker & Kubernetes."
И сам
workshop
по мне полностью повторяет выступление автора с конференции BlackHat USA 2020
под названием "Defending Containers Like a Ninja: A Walk through the Advanced Security Features of Docker & Kubernetes"
, свое мнение о котором я уже писал ранее тут.YouTube
#HITBSecTrain: Applied Defense On Docker And Kubernetes
Containers are a big revolution in the software industry. They bring production to the local environment without thinking about compatibilities: with a few commands anyone can have containers running on their machines. When using containers locally, they…
Заранее сказать по какой причине
А речь сегодня пойдет о ресурсе `PodDisruptionBudgets
По мне это он идет в туже копилку что и
Node
может решить завершить свою работу нельзя (а с ним и ваши сервисы). Это могу быть как легитимные причины или просто какие-то технические проблемы, так и намеренные действия злоумышленника или неумелые действия сотрудника. Поэтому надежность работы системы и ее безопасность вещи не разделимые.А речь сегодня пойдет о ресурсе `PodDisruptionBudgets
(сокращенно `PDB
), который может помочь избежать простоя в работе Kubernetes
-кластера. Чаще всего вы, конечно, найдете упоминание данного ресурса при описании Zero Downtime Deployment
или Upgrade
кластера. Данные ресурс описывает квоту неработающих Pods
. Важно также понимать отличия принципов работы PodDisruptionBudgets
и Deployment
.По мне это он идет в туже копилку что и
LimitRange
и ResourceQuota
, о которых я писал ранее.Kubernetes
Disruptions
This guide is for application owners who want to build highly available applications, and thus need to understand what types of disruptions can happen to Pods.
It is also for cluster administrators who want to perform automated cluster actions, like upgrading…
It is also for cluster administrators who want to perform automated cluster actions, like upgrading…
Я много пишу о различных механизмах
Ни один инструмент вам не поможет, если он не используется или результат его работы попросту игнорируется. Также куда больше бед вам может принести, хождение разработчиков на
Все, начиная от разработчиков, должны быть встроены в процессы и во влечены в создание надежной и безопасной системы.
Kubernetes
, инструментах и технологиях. Но все это не будет играть большого значения, если внутри компании не построены правильные процессы и создана культура разработки.Ни один инструмент вам не поможет, если он не используется или результат его работы попросту игнорируется. Также куда больше бед вам может принести, хождение разработчиков на
prod
кластера, чем не соответствие best-practices
. При этом разработчик (или кто-то другой) не только могут нанести вред по неосторожности или невнимательности, но и быть скомпрометированы и сразу подарить атакующему билет в prod
кластер. Все, начиная от разработчиков, должны быть встроены в процессы и во влечены в создание надежной и безопасной системы.