DevSecOps Talks
7.1K subscribers
71 photos
86 files
1.09K links
Рассказываем об актуальном в мире DevSecOps. Канал DevSecOps-команды "Инфосистемы Джет"
Download Telegram
Как Kubernetes управляет контейнерами?

Всем привет!

Еще одна статья из серии «как оно работает под капотом?». На этот раз Автор разбирается в том, как именно Kubernetes управляет контейнерами.

Начинается все с просто аналогии:
🍭 Есть некая сущность, которая определяет то, что она хочет создать (спецификация)
🍭Есть еще одна сущность, которая может принимать спецификацию и транслировать ее в нечто более «низкоуровневое»
🍭Последняя сущность принимает все, что получилось выше и запускает контейнеры, используя возможности Linux

Да, это очень и очень упрощенная модель, но она позволяет понять основные концепции.

Далее, после небольшой справки по процессам в Linux (запуск, изоляция), начинается самое интересное!

Процессы, управление ресурсами через `cgroups`, и многое другое! Автор разбирает это все на примерах создания pod в кластере Kubernetes, а также рассматривает происходящее «с точки зрения узла», на котором все это создается.

Крайне наглядно и полезно, рекомендуем!
LLSoftSecBook.pdf
881.9 KB
Low-Level Software Security for Compiler Developers

Всем привет!

Впереди майские праздники и есть немного свободного времени, например, для того, чтобы что-то почитать.

Если вы искали материал по теме безопасной разработки, то предлагаем вам ознакомиться с электронной книгой в приложении – Low-Level Software Security for Compiler Developers.

В ней содержится много интересной и полезной информации (~ 71 страница) о том, с какими нюансами можно столкнуться при работе с компиляторами.

Внутри можно найти:
🍭 Memory vulnerability based attacks
🍭 Covert channels and side-channels
🍭 Supply chain attacks
🍭 Underhanded code и не только

Книга не предполагает очень глубокого погружения. Ее цель – дать общее представление о происходящем. А если будут интересны детали, то ссылки на соответствующие материалы можно найти в самой книге.

P.S. Есть еще несколько версий книги: git-версия книги, доступная вот тут и web-версия, доступная вот тут.
БеКон 2025!!!

Всем привет!

Уже в третий раз будет проводиться самая ожидаемая конференция, посвященная практическим аспектам ИБ контейнеров и сред контейнеризации – БеКон!

В этом году нас ждет 10 докладов по различным темам:
🍭 Советы по использованию Policy Engine
🍭 Управление трафиком с Cilium
🍭 «Минималистичные ОС» - Talos
🍭 Соответствие требованиям ФСТЭК
🍭 Безопасность ML-кластеров и не только

Программа, как и всегда, получилась крайне насыщенной и интересной. И, что радует, Организаторы продолжают фокусироваться на технических деталях. Поэтому, воды – минимально, «мяса» - максимально!

Само мероприятие пройдет в Москве, 3 июня 2025 года. Подробности приведены на сайте конференции.

Также рекомендуем вступить в канал, в котором будут освещать организационные моменты и саму конференцию.

P.S. До повышения цен на билеты осталось 3 дня. Если хотели посетить, но не могли решиться – сейчас самое время! ☺️
Руководство по установке Talos Linux!

Всем привет!

Talos Linux – яркий представитель «минималистичных ОС», в которой практически нет исполняемых файлов, оболочки (shell), возможности подключения через SSH.

Задача простая – запустить Kubernetes и работать уже с ним. Такой подход может быть интересен, как ИТ-службам (за счет более простой поддержки), так и ИБ (за счет сокращения поверхности атаки, обусловленной ограниченной возможностью пользователя влиять на систему).

Устанавливается Talos из специально подготовленных образов (как для систем виртуализации, так и для физических хостов).

Но как быть в случае, если используемый провайдер не предоставляет возможности использования собственного образа?

Ответ на этот вопрос, а точнее – полноценную инструкцию, можно найти в статье. Автор описывает весь путь.

Получается примерно следующее:
🍭 Использование kexec для запуска Talos Linux в любом окружении
🍭 Проверка и корректировка настроек сети
🍭 Использование talosctl или Talm для установки ОС на диск
🍭 Еще одна проверка сети и все готово к использованию!

Детальное описание всех шагов с комментариями и примерами запускаемых команд приведено в статье. И, как обычно, полезные ссылки на материалы по теме!
Курсы по OWASP Top-10 от Snyk!

Всем привет!

Недавно Snyk выпустили обучающий курс по материалам OWASP Top-10. И нет, это не web, это не API, это не Mobile… Это про Open Source Software!

Внутри можно найти:
🍭 Known Vulnerabilities
🍭 Compromise of Legitimate Package
🍭 Name Confusion Attacks
🍭 Untracked Dependencies и не только

Каждый раздел содержит теоретическую базу и примеры на разных языках программирования. Например, это могут быть C#, C++, Golang, Java, JS, PHP.

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

Все доступно без регистрации (ну почти, можно и через GitHub) и абсолютно бесплатно.
Kube-merge: управление Kubernetes Context

Всем привет!

Бывает так, что требуется подключаться сразу к нескольким кластерам Kubernetes.

Использовать --kubeconfig не всегда удобно. Для упрощения задачи можно воспользоваться утилитой – Kube-merge.

Она позволяет:
🍭 «Соединять» несколько kubeconfig-файлов в ~/.kube/config
🍭 Настраивать резервные копии и восстанавливаться из них
🍭 Добавлять, удалять и переименовывать различные контексты
🍭 Получать информацию о контекстах и переключаться между ними

И главное – делать это просто и интуитивно понятно. Примеры использования утилиты можно найти в repo-проекта. Работает как с Linux, так и с Windows-окружением.

А что вы думаете по поводу таких утилит? Трата времени или все-таки нечто полезное?
Distroless Images: что это и зачем?

Всем привет!

Distroless Images – минималистичные образы контейнеров, в которых нет «ничего лишнего». Если вам недостаточно такого определения и хочется узнать о них больше, то рекомендуем обратиться к статье.

В ней Автор раскрывает такие темы, как:
🍭 Что такое Distroless Images
🍭 Какие они бывают и для чего их используют
🍭 Сравнение Distroless Images с «обычными» образами
🍭 Ограничения, присущие Distroless Images
🍭 Как искать ошибки (debug) при использовании Distroless Images в Kubernetes и не только

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

Уже в следующий понедельник 19 мая в 18:00 ребята из AM Live и разработчики платформы «Штурвал» проведут горячий батл мнений: Знание контейнеров: путь к большим деньгам в ИТ или временный хайп?

Соберут всех, кто знает индустрию изнутри, чтобы обсудить, действительно ли знание Docker и Kubernetes в топе нужных навыков или это проходящая мода, которая никак не влияет на успешный карьерный трек?

Вот про что поговорят:

🍭 Насколько знания контейнеризации повышают конкурентоспособность и стоимость специалиста на рынке?
🍭 Кто сейчас нужен больше — IT-специалист или IT generalist?
🍭 Опыт работы с «ванильным» K8s VS с коммерческой платформой: есть ли разница?
🍭 Что делать, если Kubernetes вообще не нравится?
🍭 Площадки для обучения контейнеризации: норм или стрем?

И это только часть вопросов ⚡️

Подробности и регистрация тут
Please open Telegram to view this post
VIEW IN TELEGRAM
Kubernetes: диаграмма-как-код!

Всем привет!

Начинаем новую рабочую неделю с чего-нибудь простого, а именно – k8s-to-mermaid! Утилиты, которая позволяет визуализировать связь ресурсов Kubernetes в виду Mermaid-диаграмм.

На вход подается набор манифестов, после чего она их обрабатывает и генерирует Mermaid class diagrams.

Связи ресурсов определяются по следующим типам:
🍭 Uses. Например, Deployment использует некий ConfigMap
🍭 Mounts. Используется в случае, если ресурс монтирует volume. Пример - StatefulSet использует PersistentVolumeClaim
🍭 Targets. Отображение Services, «направленных» на ресурсы на основании селекторов
🍭 Controls. Показывает HorizontalPodAutoscaler, контролирующий Deployment и/или StatefulSet
🍭 Applies To: Отображение NetworkPolicy, примененную к определенным ресурсам

Пример того, что получается «на выходе» можно посмотреть в repo проекта.

Если вам интересны тема «Диаграммы, как код», то про это мы писали тут, тут и тут.

А вы используете нечто подобное?
Подпись образов контейнеров с Sigstore и HashiCorp Vault

Всем привет!

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

Для этого используются: Cosign (CLI-утилита для подписи образов), Policy Controller (Admission Controller, который будет проверять наличие подписи и ее валидность) и HashiCorp Vault (для хранения ключей, используемых для подписи).

А дальше та самая инструкция:
🍭 Генерация ключей для подписи
🍭 Настройка разрешений для подписи и ее проверки
🍭 Подпись образов контейнеров
🍭 Настройка Policy Controller
🍭 Тестирование!

Каждый шаг детально описан, есть примеры конфигурационных файлов и используемых команд.

В конце статьи есть раздел, в котором описан набор ограничений, с которыми можно столкнуться, если вы решите реализовать нечто подобное у себя.
2025 OSS Blackduck.pdf
2.5 MB
Open Source Security and Risk Analysis Report

Всем привет!

В приложении можно скачать отчет (~ 32 страницы) от Blackduck, посвященный вопросам обеспечения безопасности при работе с open source.

В отчете можно найти много статистики. Например:
🍭 Количество ПО, при разработке которого используется open source
🍭 Насколько увеличился % использования open source при разработке ПО
🍭 Топ-10 наиболее «популярных» CWE (да-да, Improper Input Validation все еще на первом месте)
🍭 Использование open source компонентов, которые не обновляются и многое другое

Цифры, пояснения, комментарии – все на месте, как и у любых аналогичных отчетов.

В целом материал очень неплох для просмотра «по диагонали» и понимания общей картины происходящего в мире open source.
Методика ИБ-оценки web-приложений

Всем привет!

В repo можно найти объемный материал, в котором структурирована информация о том, как проводить анализ безопасности web-приложений.

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

Информация структурирована по разделам:
🍭 Discovery
🍭 Configuration
🍭 Design
🍭 AuthN/Z
🍭 Input Handling
🍭 Cryptography

Для каждого раздела описывается что надо делать и (не всегда) чем это можно (рекомендуется) проверять.

Например, для AuthN Автор разбирает вопросы, связанные с Password Recovery, Account Management, MFA, управления сессиями.

В итоге получилось отличное руководство, которое можно и нужно использовать при проведении аудитов web-приложений.

Либо, если у вас уже есть опыт в подобных работах
– найти что-то новое для себя и переиспользовать ☺️

Рекомендуем!
Kube-recycle-bin: «корзина» для Kubernetes

Всем привет!

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

Да, есть специальные backup-решения, но, иногда, их использование можно описать фразой «пушкой по воробьям». Бывают случаи, когда требуется нечто попроще.

В repo можно ознакомиться с проектов Kube-recycle-bin. Принцип ровно такой же, как у знакомой «Корзины». Мы что-то удаляем. Оно не удаляется навсегда и, при необходимости, это что-то можно восстановить.

Работает это примерно так:
🍭 Создаем Recycling Policy, в которых описано что помещать в корзину и в каких namespaces
🍭 Создаем тестовые ресурсы
🍭 Удаляем их
🍭 Проверяем содержимое «корзины»
🍭 Восстанавливаем в случае необходимости

Kube-recycle-bin поддерживает все ресурсы Kubernetes. Подробнее с проектом можно ознакомиться в репозитории.

А с вашей точки зрения – полезная ли утилита или просто «развлечение на вечер пятницы»?
Dynamic Dev (Sec) Ops Roadmap

Всем привет!

Сегодня хотим познакомить вас с open source проектом, в котором приведен roadmap того, что нужно знать для погружения в мир Dev (Sec) Ops.

Материал разбит на части:
🍭 Foundations. Основы, ключевые термины, краткие объяснения
🍭 Projects. Реализация проекта с использованием определенных средств автоматизации
🍭 Interview. Советы о том, как их проходить, какие вопросы могут задавать
🍭 Growth. Дополнительная информация. Например, SRE, DevSecOps и т.д.

Материал находится в стадии активного развития, поэтому не все разделы заполнены или насыщены информацией с «равномерной плотностью».

Тем не менее, внутри можно найти много полезного – от простых объяснений до ссылок на полезные материалы и средства автоматизации процессов Dev (Sec) Ops.
Cheat-Sheet Collection! DevOps и IT!

Всем привет!

По ссылке доступен repo, в котором можно найти еще одну awesome подборку один набор Cheat Sheets на все случаи жизни (ну почти).

Например:
🍭 Nginx
🍭 Docker
🍭 Redis
🍭 Linux
🍭 VIM (куда без него) и не только!

Зачастую для каждой отдельно взятой технологии приводится набор «азов» и базовых команд.

Например, как собрать и запустить контейнер, положить его в реестр и как узнать информацию о том, из чего образ «состоит».

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

А вы делаете для себя подобные подборки? Если да, то где их храните и как ими управляете?
DeepWiki: автоматическое описание repo!

Всем привет!

Команда Cognition Labs (разработчики Devin) создали проект DeepWiki, с которым может ознакомиться каждый желающий.

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

Основная цель проекта – упростить понимание того, что делает тот или иной проект. Эта цель достигается за счет генерации описания, схем взаимодействия/связи компонентов, типов данных и ссылок на исходный код, на основании которого это подготовлено.

Информация варьируется в зависимости от repo:
🍭 Общая информация (что это такое, зачем это нужно)
🍭 Основные компоненты
🍭 Детализация сведений об основных компонентах
🍭 Функции безопасности и не только

В DeepWiki можно «отправить» любой public repo и получить о нем сведения. На текущий момент в нем уже есть информация о более чем 100 проектах, включая Kubernetes, Redis, Nginx, Linux и многие другие.

Трудно сказать, насколько точной является информация. Однако, это еще один интересный пример использования нейронных сетей, в том числе для нужд ИБ. Ведь составление документации на ПО – задача достаточно сложная, особенно для проектов, которые находятся на стадии активной разработки.

Если вам хочется больше деталей, то их можно найти в этой статье.
Визуализация логов Kubernetes

Всем привет!

KHIKubernetes History Inspector – проект, который позволяет визуализировать логи Kubernetes для повышения удобства работы с ними.

Он агрегирует данные, отображая их в виде timeline, на которых указано что/когда/с чем происходило.

Например:
🍭 История ресурсов. Отображение статуса ресурсов, их манифесты в определенный промежуток времени
🍭 Журналы от разных источников. Общий взгляд на логи, генерируемые разными ресурсами
🍭 Возможность фильтрации. Анализ больших объемов данных на основании выборки, определяемой пользователем

В итоге получается наглядная диаграмма, на которой видна «летопись» происходящего. С примерами можно ознакомиться в repo проекта.

KHI подключается и настраивается очень просто (информацию об этом можно прочесть в Getting Started).

Реализована поддержка Google Cloud, однако, есть возможность использования KHI с «обычным» кластером Kubernetes. Подробнее об этом написано тут.
SimKube: симуляция кластера Kubernetes

Всем привет!

SimKube – проект, который позволяет симулировать поведения кластера Kubernetes в безопасной изолированной среде.

Если просто, то он позволяет «записывать» действия пользователей в кластере и сохранять данные для последующего анализа.

Для этого у него есть несколько компонентов:
🍭 Tracer. Сохраняет события кластера, может быть настроен для сохранения событий. Определяемых пользователем
🍭 Controller. Запускает отдельный Kubernetes кластер и позволяет воспроизводить те самые симуляции
🍭 CLI. Утилита для упрощения взаимодействия с SimKube

Подобное решение может быть полезно, например, при расследовании инцидентов, чтобы понять, что именно и когда произошло.

Больше подробностей – архитектура, установка, настройка, видео с примером работы – можно найти в repo и на сайте с документацией.
AIAutoFix.pdf
3.7 MB
AutoFix для исправления ИБ-дефектов кода

Всем привет!

Использование AI уже норма современности и практически все его используют в той или иной мере.

Статические анализаторы исходного кода – не исключение.

В крупную клетку можно выделить 2 основные задачи, где AI (наверное) может очень сильно помочь: разметка и помощь в генерации исправлений, чтобы было безопасно.

Если первая задача (реализация) еще вызывает вопросы, то вторая, кажется, получила статус «пригодности» и используется много у кого.

В прилагаемом отчете можно найти информацию о том, как с этой задачей справились разные анализаторы: Corgea, Amplify, Arnica, Pixee, OX, Aikido, Codacy.

Приводится статистика:
🍭 Fix coverage
🍭 Average fix quality
🍭 Final score

По каждому блоку приводятся комментарии Авторов относительно полученных результатов и возможностей решений: отправка данных в LLM, использование собственных наработок, комбинированный вариант.

В завершении приводится набор сильных и слабых сторон, которые были идентифицированы в рамках исследования.

С полными результатами (Google Таблица) можно ознакомиться тут.

А что вы думаете по поводу использования AI в SAST? Какие задачи он хорошо решает и где может быть использован (на практике, не в теории)?
Обход политик OPA Gatekeeper

Всем привет!

Использование механизмов Admission Controller/Policy Engine для контроля того, что запускается и уже запущено в кластерах Kubernetes – обязательная практика информационной безопасности.

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

Именно этому посвящена статья от Aqua Security, в которой приводятся примеры того, как можно «обойти» те самые политики.

В статье рассказывают про:
🍭 Что такое Admission Controller и OPA Gatekeeper в частности
🍭 Анализ простой, но полезной политики (контроль реестров, из которых можно «брать» образы)
🍭 Краткое описание логики работы политики «изнутри»
🍭 Примеры того, как можно «обойти» политику и запустить вредоносный образ

Да, обход достаточно «банальный» и простой, но тем не менее рабочий. Это лишний раз подчеркивает важность того, что понимание того «как это работает» помогает (в том числе) лучше выстраивать защиту.

В завершении статьи Авторы анализируют возможность подобного «обхода» для иных известных Policy Engine – Kyverno, Kubewarden, JSPolicy (там тоже получится 😊)
Мы на БеКоне!!!

Приходите к нам, чтобы познакомиться лично, поговорить про безопасность контейнеров и не только, обсудить JCSF, да и просто сфотографироваться!!! 😊😊😊

PS У нас есть конфеты и носки!!! :) Ждем вас!!!