DevSecOps Talks – Telegram
DevSecOps Talks
7.43K subscribers
85 photos
94 files
1.22K links
Рассказываем об актуальном в мире DevSecOps. Канал DevSecOps-команды "Инфосистемы Джет"
Download Telegram
Admission Controller с использованием OPA (но не Gatekeeper)

Всем привет!

Про Admission Webhook есть очень много разных статей, а полезность самой технологии велика! И сегодня мы предлагаем вам ознакомиться с еще одной статьей по теме 😊

Автор предлагает использовать OPA в качестве «точки принятия решения» о соответствии Admission Review Request требованиям. Нюанс в том, что это не Gatekeeper, а самостоятельный сервис, реализованный на "чистой" OPA.

В первой части материала предлагается установить OPA:
🍭 Создание сертификатов, создание и подтверждение CSR
🍭 Разворачивание и конфигурация OPA и kube-mgmt
🍭 Создание Service
🍭 Настройка прав доступа

Все готово! Теперь в кластере есть полноценный Policy Engine, готовый обрабатывать запросы на соответствие политикам.

А продолжение… (написание политик, контроль создаваемых ресурсов и т.д.) будет во второй части статьи!

Для полного погружения и воспроизведения сценария в статье есть ссылки на материалы по теме, много схем, пояснений и примеров кода/конфигураций.
1👍1
Pipeline Integrity and Security

Всем привет!

Еще одна интересная статья из блога GitGuardian. В этот раз ребята рассматривают вопросы обеспечения информационной безопасности конвейеров сборки.

Начинается все с небольшого моделирования угроз (если вы изучали SLSA, то схема будет вам очень знакома 😊), а далее Автор переходит к описанию мер защиты.

Рассматривается:
🍭 Branch protection
🍭 Reproducible builds
🍭 Artifact signing
🍭 Workstation security
🍭 Build platform hardening и не только

В статье приведен очень неплохой обзор того, что можно делать для защиты конвейера сборки, получаемых в процессе артефактов и build workers.

Единственное, чего бы хотелось – больше детализации.
👍21
K8S Cleaner: удаление неиспользуемых ресурсов k8s

Всем привет!

Иногда случается так, что в кластере k8s остаются неиспользуемые ресурсы или ресурсы, которые находятся в постоянном перезапуске. Причин может быть множество – от некорректно отработавших finalizers до нарушения в логике работы приложения.

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

Удалять их можно по-разному: следить «руками» (но кто так делает в 2024?) или автоматизировать! Реализацией второго варианта может служить K8S Cleaner!

На текущий момент он работает с:
🍭 ConfigMaps/Secrets
🍭 ClusterRoles/Roles
🍭 ServiceAccounts
🍭 Deployments/StatefulSets и не только

А чтобы вы были в курсе происходящего можно настроить оповещения через различные каналы о том, какие ресурсы были удалены. Но это не все 😊 Со всеми возможностями и параметрами конфигурации K8S Cleaner можно ознакомиться в repo проекта
🙈51
CodeQL: From zero to hero, Part 3

Всем привет!

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

Третья часть посвящена использованию CodeQL для проведения Security Research. Автор описывает:
🍭 Поиск определенных методов используемых библиотек
🍭 Отслеживание taint-данных (с разбором data flow – local/global и их отличия от taint)
🍭 Идентификация аналогичных/идентичных уязвимостей в кодовой базе
🍭 Общую методологию анализа исходных кодов с использованием CodeQL

Материала много, деталей много, пользы (надеемся) тоже много! Каждый пример описывается максимально подробно, чтобы точно понять, что происходит. Отличное чтиво для пятницы или приближающихся выходных, рекомендуем 😊

P.S. Для укрепления теоретических навыков можно пройти ряд практических заданий 😊
👍2
Distroless Containers: (не) самые защищенные?

Всем привет!

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

Варианты реализации есть от Google и Chainguard. И кажется, что все отлично – ничего лишнего внутри нет, sh, bash отсутствуют и эксплуатация уязвимостей становится (не) возможной.

Однако, нет ничего абсолютного. В статье Автор предлагает рассмотреть обычный Debian образ из реестра Google и посмотреть можно ли что-то сделать.

Автор пробует:
🍭 Запустить sh, bash внутри контейера. Логично, что ничего не получается
🍭 Далее он меняет entrypoint на /usr/bin/openssl
🍭 Используя enc он может читать информацию, в том числе в Kubernetes, получая ServiceAccountToken

Да, это лишь чтение и изучение, но идею можно развить и дальше. Какой вывод можно сделать? Да, distroless – отличный вариант для сокращения поверхности атаки, но это не панацея и потому лучше не полагаться только на них, а подходить к вопросу обеспечения защиты контейнеров комплексно
🔥5👍1
Kubernetes Pentesting Checklist

Всем привет!

По ссылке можно ознакомиться с checklist’ом, в котором описаны подходы к тестированию на проникновение кластеров Kubernetes.

Материал «разбит» на следующие части:
🍭 Control Plane (etcd, kubelet, static pods и т.д.)
🍭 RBAC Abuse (кража token, горизонтальное перемещение, глаголы (verbs) с повышенными привилегиями и т.д.)
🍭 Иное (то, что не попало в перечень выше)

Внутри много теории, в которой описываются возможные способы компрометации кластера и примеры утилит, которыми можно воспользоваться для автоматизации рассматриваемых активностей.

Например, в статье можно найти информацию о том, как записывать данные в etcd, взаимодействовать с kubelet напрямую для получения информации о кластере или запускать команды внутри pod и многое другое
👍2🤓2🔥1
Анализ PyPi пакетов от DataDog

Всем привет!

В том году команда DataDog выпустила в open source свет проект GuardDog, который совмещает возможности композиционного и статического анализа для более точной идентификации уязвимых open source компонент.

Согласно статье команда и сама его использует. В том числе для анализа PyPi пакетов на постоянной основе. Всего у них получилось идентифицировать ~ 1500 вредоносных open source пакетов.

Однажды им попалось вот такое срабатывание:
🍭 Empty Information. У пакета отсутствует описание
🍭 Single Python File. Пакет состоит лишь из одного Py-файла
🍭 Command Overwrite. Команда install видоизменена
🍭 Code Execution, Пакет выполняет команды на уровне ОС

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

Подробности и результаты (а там много всего интересного с примерами кода и пояснениями) можно найти в статье, рекомендуем!
👍1
CI/CD Goat: writeup! Часть 2!

Всем привет!

Продолжение серии writeup’ов, посвященной прохождению заданий в CI/CD Goat (про первую часть мы писали тут). В этот раз Автор сконцентрировался на заданиях уровня «Moderate»

Рассматриваются следующие сценарии:
🍭 Caterpillar. Есть только r/o доступ к repo. Цель – украсть учетные данные из Jenkins Store
🍭 Cheshire Cat. Выполнение кода на Jenkins Controller
🍭 Twiddledum. Поиск флага в загадочном pipeline!
🍭 Dodo. Как сделать S3 Bucket public readable?

Пояснения, скриншоты, комментарии – как обычно 😊 Присутствуют и в достаточном количестве!
👍2
Awesome CI/CD Attacks

Всем привет!

Продолжаем тематику безопасности CI/CD и завершаем неделю с Awesome-подборкой про атаки на CI/CD.

Автор собрал материалы:
🍭 Описание техник (Exposed Sensitive Date, Initial Code Execution, Post Exploitation и т.д.)
🍭 Инструментарий для атак (Gato, Token-Spray, git-dumper и другие)
🍭 Примеры инцидентов
🍭 Перечень похожих материалов по теме CI/CD Security

Ссылок много – точно можно будет найти что-то, что почитать на грядущих выходных 😊

P.S. Про еще один Awesome, посвященный CI/CD Security, мы писали тут.
👍4
Talos Linux: You don't need an OS, you only need Kubernetes

Всем привет!

Разговоров про минималистичные ОС, которые позволяют «запускать Kubernetes и больше ничего» становится все больше.

Если вы еще не в курсе что это такое и зачем, то рекомендуем посмотреть выступление Андрея Квапила (Ænix).

Его история начинается с того, что он пришел в компанию в которой был достаточно громоздкий pipeline для подготовки ИТ-инфраструктуры и запуска приложений.

Далее он подробно рассказывает о том, как Talos может упросить процесс и сделать его оптимальным:
🍭 Установка Talos и Kubernetes
🍭 Использование FluxCD для «дооснащения» кластера (Cert Manager, Prometheus, Cilium и т.д.)
🍭 Нюансы работы с bare metal и способы их решения
🍭 Завершает доклад рассказ про CozyStack – open source платформу, создаваемую Андреем и командой, в которой как раз используется Talos Linux

Помимо этого, в докладе есть информация о том, как делать troubleshooting (что может быть непривычно ввиду отсутствия shell и ssh).

Кстати, использование минималистичных ОС может быть удобно не только ИТ, но и ИБ-специалистам за счет значительного сокращения поверхности атаки и меньшего количества уязвимостей в используемых операционных системах.

Подробнее можно посмотреть в докладе Николая Панченко (Тинькофф) – «ОС Talos Linux — путь к «тому самому» харденингу инфраструктуры для k8s»
👍4
Advanced_Linux_Detection_and_Forensics_Cheatsheet_by_Defensive_Security.pdf
2.4 MB
Linux Detection and Forensics Cheatsheet

Всем привет!

В приложении можно найти «подсказку» по Linux (~ 28 страниц), в которой собрана информация, которая может потребоваться для обнаружения активности или для проведения расследований.

Например:
🍭 /proc и его содержимое
🍭 Работа с журналами (/var/log)
🍭 Полезные команды (lsof, pstree, strace и т.д.)
🍭 Работа с OSQuery и не только

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

«Шпаргалку» можно использовать просто для того, чтобы лучше узнать Linux или для того, чтобы лучше настраивать runtime security ваших контейнеров 😊
👍9
ЦУПИС: Митап «Инструменты обеспечения безопасной разработки»

Приглашаем вас на митап, посвященный вопросам безопасной разработки!

🗓 18 июня в 18:30 Мск

В открытом разговоре участники из ЕДИНОГО ЦУПИС, Уральского центра систем безопасности, Профископ (вендор CodeScoring) и Axel.PRO обсудят, как из хорошей разработки сделать безопасную, какие инструменты для этого лучше использовать, как правильно интегрировать безопасность в процесс разработки и как это все реализуется на практике.

В рамках обширной программы митапа:
🍭 Разберем традиционный подход к статическому анализу. Сравним SAST с ML SAST и обсудим преимущества интеграции машинного обучения в SAST

🍭 Рассмотрим проблему транзитивных Open Source зависимостей и разберем полезные сценарии ручного и автоматического триажа на практических кейсах

🍭 Расскажем о построении процессов информационной безопасности при разработке, интеграции решений ИБ в конвейер разработки и о реализации Security Quality Gate

🍭 Поговорим о том, каким должен быть ASOC, с какими сложностями можно столкнуться при управлении процессами безопасной разработки, а также на тему автоматизации. Обсудим, какие из open source решений доступны на рынке

Зарегистрироваться на мероприятие можно по ссылке: https://1cupisintelligence.ru/june. До встречи 18 июня в 18:30 Мск! ☺️
🔥83❤‍🔥2👍2
Falco: от A до Y

Всем привет!

По ссылке доступна очень-большая-статья, посвященная Falco.

Начинается она достаточно "обыденно" – что это такое, зачем это нужно, какая у него архитектура, как его установить и т.д.

Дальше – интересней! Работа с правилами – от описания того, где и какие располагаются до до описания их структуры и написания собственных и обработки исключений.

Автор уделяет время принципам, по которым работает Falco (мониторинг Syscalls с использованием eBPF) и настройке оповещений в случае срабатывания правил (с использованием проекта Falco Sidekick)

И это далеко не все! Да, документацию на Falco статья не заменит, но может быть очень полезной при первом знакомстве с решением.

Если эта тематика вам интересна, то вот тут, тут и тут можно найти еще материалов по Falco.
👍31
STRIDE GPT

Всем привет!

Все становится лучше с bluetooth machine learning! Моделирование угроз не является исключением 😊 По ссылке представлен проект STRIDE GPT, цель которого очень проста – применение LLM для генерации моделей угроз и построения деревьев атак, основанных на методологии STRIDE.

Воспользоваться им достаточно просто – через repo clone или с использованием Docker Container’a. После запуска последнего остается лишь перейти на URL и следовать указаниям.

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

Потребуется указать информацию:
🍭 OpenAI Key
🍭 Предоставить архитектуру в JPG, JPEG, PNG (опционально)
🍭 Описать приложение «обычными словами»
🍭 Указать «тип» (web, mobile cloud и т.д.)
🍭 Уровень критичности обрабатываемых данных
🍭 Доступно ли приложение через интернет и какой способ аутентификации используется

Готово! Остается лишь немного подождать. Да, пока больше похоже на «интересную» игрушку, но кто знает, что будет дальше 😊

P.S. А если не хочется читать и хочется посмотреть видео, в котором Автор рассказывает про Stride GPT, то можно воспользоваться ссылкой.
👍5😱21
It's always DNS...

Всем привет! Хотите узнать, как работает CoreDNS в Kubernetes? Тогда эта статья для вас!
Автор детально рассказал, как устроен DNS в Kubernetes. В статье подробно рассмотрены такие аспекты, как:

🎹 Общее представление о CoreDNS и процессе разрешения имен в Kubernetes
🎹 DNS политики Kubernetes такие, как ClusterFirst, Default и None
🎹 Разница между библиотеками glibc и musl

Статья получилась достаточно простой, но тем не менее очень интересной! Надеемся она поможет вам разобраться во внутреннем устройстве работы DNS в Kubernetes!
👍4🔥4👏1
Damn Vulnerable Kubernetes Application

Всем привет!

По ссылке можно найти repo с DVKA. Проект относительно новый, поэтому материалов пока что не так много.

Есть 2 Challenge:
🍭 Hack The NFT Museum
🍭 Enterprise Grade Network Debugging Console

Это 2 web-приложения, для поиска ключа в которых потребуется знать как базу тестирования на проникновение для web и так и основы k8s (Service Account Token, Network Policies и т.д.)

Помимо этого, в repo можно найти workshop, в котором Автор предлагает разобраться в основах ИБ Kubernetes – от базовых аспектов работы с кластером до запуска утилит, которые могут быть полезны специалистам по информационной безопасности. Ничего сложного и может быть полезно для новичков.
🔥3
DevSecOps Learning Path от TryHackMe!

Всем привет!

В феврале 2024 года TryHackMe запустили новый learning path, который посвящен DevSecOps. Материал содержит как теоретическую часть, так и практические задания.

Курс состоит из модулей:
🍭 Secure Software Development
🍭 Security of the Pipeline
🍭 Security in the Pipeline
🍭 Container Security
🍭 Infrastructure as Code

Для прохождение нужны общие знания по информационной безопасности и инженерные навыки.

Если чего-то не хватает, то можно пройти курс «Security Engineer Learning Path» в качестве «подготвки» (в котором есть и про SAST и про DAST и про основы DevSecOps 😊)
🔥9
Что такое контейнеры и Docker в частности?

Всем привет!

Это виртуальные машины. Это емкость, в которую кладут еду на работу. Это сокращенное название портовых работников. Это набор Linux Namespaces. Это… Есть много версий ответов на этот вопрос.

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

Статья структурирована по разделам
🍭 Введение в контейнеризацию и Docker – предпосылки реализации, решаемая проблематика
🍭 Постепенное погружение – от общей архитектуры Docker до взаимодействия dockerd с containerd, runc и ядром Linux
🍭 Детальный разбор основных терминов (Image, Dockerfile, Docker manifest)
🍭 Контейнеры! Linux Namespaces, Control Groups, Linux Kernel и не только

Крайне рекомендуем к прочтению! Автор проделал просто колоссальную работу по структурированию и описанию информации, за что ему огромнейшее спасибо! 😊

P.S. В статье очень много ссылок на полезные материалы и средства автоматизации, которые помогут еще лучше разобраться в происходящем
👍134
Автостопом по HashiCorp Vault

Всем привет!

Если вы начинаете свое знакомство с HashiCorp Vault и количество сущностей, терминов, возможностей, настроек и т.д. кажется вам ошеломляющим, и вы не знаете «с чего начать», то рекомендуем обратить внимание на статью.

В ней Автор описывает:
🍭 Общая информация о том, что есть «секрет» и какие системы управления бывают
🍭 Базовые концепты Vault (API, Storage, (Un)seal, Secret Engine и т.д.)
🍭 Способы доставки Token (Response Wrapping, AppRole)
🍭 Управление политиками доступа к секретам
🍭 Интеграции с приложениями (SDK, Agent) и многое другое

В статье много практических примеров и объяснений. Также в ней можно найти советы о том, «как лучше приготовить Vault» от практиков, которые занимаются его внедрением и эксплуатацией.
👍5🔥41
Привет!

Мы проводим небольшое исследование и нам нужна ваша помощь. Далее будет 3 маленьких опроса, на которые просим вас ответить.

Все анонимно :) Интересует статистика. Спасибо! ☺️
👍1
Сколько уникальных (независимых) инсталляций систем контроля версий (например, GitLab, Gitea и т.д.) используется в вашей Компании?
Anonymous Poll
65%
Одна
16%
Две
19%
Более двух