DevSecOps Talks
6.91K subscribers
69 photos
80 files
1.04K links
Рассказываем об актуальном в мире DevSecOps. Канал DevSecOps-команды "Инфосистемы Джет"
Download Telegram
Управление секретами: ArgoCD, HashiCorp Vault и External Secrets Operator

Всем привет!

В статье можно найти очень неплохое руководство о том, как можно реализовать процесс управления секретами в кластерах Kubernetes с использованием ArgoCD (в целом – опционально, без нее ничего не поменяется), HashiCorp Vault и External Secrets Operator (ESO).

Автор фокусируются на двух основных вопросах:
🍭 Как избежать сохранения каких-либо секретов в git (включая аутентификационных токены для Vault)
🍭 Как реализовать синхронизацию секретов без перезапуска приложений

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

Весь процесс отлично описан (за исключением установки используемых решений): шаги, конфигурационные параметры, комментарии и то, что происходит «под капотом». Рекомендуем! ☺️
Поиск проблем в Kubernetes с использованием AI

Всем привет!

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

Таким помощником может быть и искусственный интеллект. В статье Автор описывает свои изыскания при работе с GPTScript и Kubernetes.

Статья состоит из следующих разделов:
🍭 Краткая вводная в использование GPTScript
🍭 Разницу между Tool и Agent (это потребуется в дальнейшем)
🍭 Создание простейших Tool и Agent, которые будет отвечать на вопрос о состоянии кластера
🍭 Развитие предыдущей идеи – не только отображать статус, но и вносить изменения
🍭 Deploy наработок в кластер в виде Job

Попутно Автор объясняет, как влияют вносимые им изменения на работу модели и результаты, которые она генерирует.

Да, у такого подхода множество вопросов – «А что, если он не сможет найти причину?», «А что, если он поправит так, что сделает только хуже?», «А как можно доверять такой конструкции?» и т.д. Однако, как концепт – это достаточно интересно на наш взгляд.

Кстати, есть еще один занятный способ использования AI для нужд поиска ошибок – «человеческое общение» с журналами событий (прочитать и посмотреть можно тут).

Вероятно, что со временем подобное станет распространённой практикой и сократит время на обслуживание систем.

А что вы думаете по этому поводу?
PhoenixResilientApplication.pdf
19.5 MB
Управление уязвимостями от Phoenix Security

Всем привет!

В приложении электронная книга от Phoenix Security (~ 120 страниц) с весьма претенциозным названием: «Building resilient application and cloud security programs to manage vulnerabilities».

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

В книге собрана информация о:
🍭 «Источниках данных» ИБ-дефектов и их «месте» в жизненном цикле ПО
🍭 CVE, CVSS – много аналитики и аргументов о том, почему этого крайне мало для принятия решения
🍭 Базах данных с exploits (например, CISA KEV) и EPSS, их роли в оптимизации управления ИБ-дефектами
🍭 Подходах к расстановке приоритетов для устранения ИБ-дефектов, важности роли «контекста»
🍭 Уровнях зрелости процесса и том, что надо делать, чтобы его повысить
🍭 Сравнительных затратах при ручной и (полу) автоматизированной разметке

В книге очень много статистики, рекомендаций и отсылок на разные методологические материалы.

Единственный нюанс – кажется, что все тоже самое можно было рассказать на чуть меньше, чем 120 страниц 😊
Графический генератор Audit Policy для Kubernetes

Всем привет!

Команда «Штурвала» сделала «Генератор политик аудита» для Kubernetes. С его помощью можно создавать требуемые политики в удобном web-интерфейсе!

Для этого потребуется
🍭 Перейти по ссылке выше
🍭 Создать правило, на которое будет срабатывать политика
🍭 Указать необходимые параметры (уровень логирования, ресурсы, глаголы и т.д.)
🍭 Повторить до желаемого результата

Ресурс пока что находится в стадии beta-тестирования.

Если вдруг вы найдете что-то, что не работает или у вас есть мысли по развитию функционала, то можете смело их адресовать в Telegram-чат «Сообщества Штурвал» 😊
mTLS в Kubernetes

Всем привет!

Mutual TLS очень полезная функция, особенно когда дело касается информационной безопасности.

Для начала погружения в тему очень может подойти вот эта статья.

В ней Автор разбирает:
🍭 Краткое описание того, что такое mTLS и зачем он нужен
🍭 «Сделай сам!»-реализация с изменением логики работы приложения
🍭 Использование Service Mesh для достижения цели
🍭 Реализация mTLS на основе Ambient Mesh
🍭 Общие рекомендации о том, как это можно сделать

Статья небольшая, дает общение понимание что и зачем и как это можно реализовать. Самое «то» для пятницы ☺️
AppSec метрики от SNYK

Всем привет!

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

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

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

Сегодня хотим обратить ваше внимание на подборку AppSec-метрик от SNYK. Возможно, что-то покажется вам полезным.

Ребята разделили их на 4 блока:
🍭 Risk reduction metrics
🍭 Team coverage and engagement
🍭 Application security posture trends
🍭 Vulnerability management efficiency

Для каждого блока приводится набор метрик с качественным описанием и общей логикой расчета (без формул и математики).
Docker Init

Всем привет!

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

Чтобы упростить задачу можно использовать docker init. С его помощью можно создать dockerfile, compose.yaml и .dockerignore автоматически.

Работает это примерно так:
🍭 Вы запускаете docker init и попадаете в интерактивную сессию
🍭 Потребуется указать используемую технологию (Node, Go, Python и т.д.)
🍭 Определиться с командой, которая должна быть запущена в контейнере
🍭 Написать порт, по которому можно обращаться к ПО
🍭 Готово!

Да, возможно не самый лучший вариант, но для начала вполне неплохо. Подробнее об использовании docker init можно прочесть в статье.
Autogrep!

Всем привет!

Да, вам не кажется! Это то, о чем вы подумали! Автоматическое создание правил для Semgrep с использованием нейронных сетей.

Если кратко, то его возможности заключаются в:
🍭 Создании правил для Semgrep на основе информации из патчей с исправленными уязвимостями
🍭 Анализе качество создаваемых правил
🍭 Поддержке различных языков программирования, для которых создаются правила.

В использовании тоже нет ничего сложного: скачиваем утилиту, создаем правила, используем их вместе с Semgrep для анализа интересующего проекта.

Если не хочется ничего качать, устанавливать и т.д., но интересно посмотреть на результаты работы Autogrep, то можно воспользоваться ссылкой.
NirmataKyverno.pdf
3.5 MB
Securing Kubernetes using Policy-as-Code

Всем привет!

В приложении можно скачать электронную книгу (~ 36 страниц), посвященную Policy-as-Code от Nirmata (дада, те самые разработчики Kyverno).

После вводной части, посвященной тому, что такое Policy-as-Code и основам безопасности Kubernetes, начинается самое интересное!

Авторы описывают:
🍭 Kyverno: основы, написание политик
🍭 Защита образов и реестров
🍭 Использование Kyverno в CI-конвейере
🍭 Использованием Kyverno для нужд compliance и не только

Получилось неплохое руководство для знакомства с Kyverno. Однако, рекомендуем держать «под рукой» документацию, чтобы изучение было максимально полезным и эффективным.
Автоматическое устранение ИБ-дефектов в коде

Всем привет!

Сегодня предлагаем вам легкое пятничное чтиво, в котором Автор рассуждает о том, насколько можно/нужно/целесообразно полагаться на различные технологии, предоставляющие функционал по автоматическому устранению ИБ-дефектов в исходном коде.

В качестве примера он берет то, «что показывают все производители на всех демонстрациях» (ведь это круто работает!) – работа с SQL-инъекциями.

Дальше он делает аналогичное для:
🍭 Cross-Site Scripting
🍭 Weak Cryptography
🍭 Hardcoded Secrets

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

А что вы думаете по этому поводу? Надо/Не надо/Надо, но аккуратно/Иное – пишите свое мнение в комментариях ☺️
Работа с контейнерами Docker: разбор популярных утилит

Всем привет!

Иногда нам приходится возвращаться к Docker, чтобы протестировать и быстро оценить функционал нового приложения, инструмента, сканера. На помощь приходят удобные утилиты:
🎯 lazydocker – интерактивный терминальный UI для мониторинга контейнеров, образов, логов и ресурсов.
🎯 ctop – аналог htop, но для Docker: показывает загрузку CPU, RAM, диски, сети контейнеров.
🎯 cdebug – удобный инструмент для дебага контейнеров (позволяет пробрасывать в контейнер link до бинарников хоста).
🎯 dive – анализ слоев Docker-образов, помогает оптимизировать их размер и выявлять неэффективные сборки.
🎯 layeremove – пример скрипта на Python для удаления слоев из Docker-образов.

Если чего-то не хватает, можно использовать простые запросы к Docker, для вывода JSON — добавляй --format '{{json .}}'.
Например, чтобы получить данные об использовании ресурсов:

# Использование ресурсов
docker stats --no-stream --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}"
# Информация о контейнерах в json
docker ps --format '{{json .}}' | jq .


А какими утилитами пользуетесь вы? Делитесь в комментариях!
Как работает scheduling в Kubernetes?

Всем привет!

«Как именно Kubernetes «размещает» создаваемые `pod` на узлах кластера?» - если вам интересен этот вопрос, то статья может быть полезна.

В ней описывается весь процесс:
🍭 Попадание pod в Scheduling Queue
🍭 Фильтрация (Filtering) – «отбрасываются» узлы, на которых нельзя разместить pod (например, у узла статус Unreachable)
🍭 Выбор оптимального узла (Scoring) – выбор осуществляется из узлов, которые «прошли» предыдущий этап
🍭 «Назначение» pod определенному узлу (Binding)

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

Затрагиваются такие темы, как Priority Class, Taints, Tolerations, (Anti) Affinity, Selectors и многое другое.

Рекомендуем! ☺️
Анализ достижимости и приоритизация уязвимостей

Всем привет!

По ссылке можно найти статью от Xygeni, посвященную анализу достижимости и его пользе в расстановке приоритетов при работе с уязвимостями в open source компонентах.

Главный вопрос, на который надо найти ответ звучит примерно так: «А можно ли как-то исполнить уязвимый код во время работы (исполнения) ПО?». Именно для этого и используется анализ достижимости.

В статье Авторы раскрывают такие темы, как:
🍭 Что такое анализ достижимости и какие подвиды у него бывают
🍭 Почему этот анализ так важен для процесса управления уязвимостями в open source компонентах
🍭 Использование достижимости при расстановке приоритетов по устранению уязвимостей
🍭 Значимость анализа достижимости (небольшая статистическая справка)

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

В завершении Авторы описывают то, как именно устроен подобный анализ в их решении. Да, маркетинг, но весьма полезный и приятный. Такой не жалко и почитать 😊
CyberCamp: форензика для контейнеров и контейнерных инфраструктур!

Всем привет!

Открытие нового сезона CyberCamp, да еще какое! Первый MeetUp 2025 года будет посвящен цифровой криминалистике (Digital Forensics and Incident Response, DFIR).

Одним из спикеров будет Дима Евдокимов, который не нуждается в представлении 💪💪💪 Он расскажет про расследование инцидентов в среде, где практически всё временно и эфемерно.

Приглашаем вас посетить мероприятие (14 марта, начиная с 13:30)! Для этого надо лишь зарегистрироваться по ссылке.

🚨🚨🚨 Но и это еще не все! 🚨🚨🚨

Команда CyberCamp решила запустить собственное сообщество, в котором собраны практические задания, рекомендации для изучения, календарь мероприятий по ИБ и многое другое!

Какой-то «определенной тематики» у сообщества нет. Поэтому, если вы неравнодушны к ИБ, вам хочется изучать новое, общаться, решать задачки и развивать свои навыки, то вам точно туда 🐾

Тут еще проще – надо просто перейти по ссылке и вступить в канал! Ждем вас! Спасем Компота вместе!!! 🤩🤩🤩
Please open Telegram to view this post
VIEW IN TELEGRAM
Централизованное управление уязвимостями

Всем привет!

Когда сканеров становится много, а уязвимостей еще больше, неплохо бы иметь единое место для их сбора, фильтрации и приоритизации. SecObserve (open-source) – может стать новым отличным решением на замену DefectDojo:

Платформе меньше двух лет, но уже доступно множество фич:
🎯 Интегрируется в CI/CD, поддерживает SARIF и парсеры на множество инструментов
🎯 Удобное управление проектами – поддержка веток и версий
🎯 Отслеживает лицензии – импорт информации из SBOM (CycloneDX и SPDX)
🎯 Обогащает данные с помощью Exploit Prediction Scoring System (EPSS)
🎯 Дает метрики как по всем продуктам так и по отдельным
🎯 Экспортирует уязвимости в трекеры (Jira, GitLab, GitHub), отправляет уведомления в Slack, Teams, email
🎯 REST API для автоматизации
🎯 Хорошая документация

Из минусов:
🤷‍♂️ Нет поддержки LDAP, что часто важно
🤷‍♂️ Не понятно как поведет себя с большим кол-вом данных

А вы как управляете уязвимостями в проектах?
OWASP DevSecOps Guideline

Всем привет!

Как-то так получилось, что мы ни разу не писали про материалы по DevSecOps от OWASP, а именно про OWASP DevSecOps Guideline.

В нем собрана информация о:
🍭 Моделировании угроз
🍭 Статическом и динамическом анализе
🍭 Композиционном анализе
🍭 Анализе образов и контейнеров и т.д.

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

Кроме этого, есть ссылки на полезные материалы по теме.

Из нюансов – проект давно не обновлялся. Однако, базовые вещи так и не потеряли актуальности и им можно пользоваться.
🔍 TruffleHog Analyzer – анализ утекших API-ключей

Всем привет!

Обнаружение секретов в коде – уже стандарт, но что делать, если ключ утек? TruffleHog предлагает новый подход: trufflehog analyze позволяет провести глубокий анализ ключа, выяснив, какие у него разрешения и какие ресурсы он затрагивает. Теперь можно не только находить ключи, но и сразу понимать их влияние.

🎯 Проверяет активность ключа – действующий он или нет
🎯 Определяет владельца – чей именно ключ
🎯 Анализирует доступ – какие ресурсы доступны по ключу (доступно до 20 источников)
🎯 Выявляет привилегии – что можно делать с этими ресурсами
🎯 Помогает в отзыве – инструкция как отозвать секрет

Если хотите разобраться глубже – вебинар по теме.

Как вы проверяете утекшие ключи? Пользуетесь ли авто-валидацией? Делитесь в комментариях! 💁‍♂️
Анализ угроз для ArgoCD

Всем привет!

Команда Exness написала отличную статью, посвященную идентификации ИБ-угроз, характерных в случае использования GitOps подхода и ArgoCD в частности.

После небольшого знакомства с ArgoCD и ее ключевыми компонентами/сущностями Авторы углубляются в то, как можно реализовать мониторинг возможных угроз.

Рассматриваются угрозы из «ArgoCD End User Threat Model», например:
🍭 Initial admin password compromise
🍭 Abuse of Argo CD local users
🍭 External cluster credentials compromise
🍭 Abuse of unrestricted default project и не только

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

Статья не затрагивает темы защиты, фокусируясь полностью на идентификации. Причина проста – защита потребовала бы отдельной статьи по теме 😊
Компрометация данных через session tokens…

Всем привет!

… или еще одна история о том, как заработать 15 000$ на bug bounty. Все начиналось как обычно, bug hunter взял «заказ» на Hackerone на уже знакомую ему систему.

События начали стремительно развиваться после того, как он заполнил данные на странице регистрации – имя, email, прочую информацию.

Оказывается, что сервер вернул сессионный token, но не простой, а без… expiration date. Это заинтересовало исследователя и он решил продолжить изучение.

После завершения регистрации и создания учетной записи приложение перенаправило его на страницу вида https://somesite.com/apply/information/?s=success&token=… Все так, там был «тот самый token без срока действия».

Следующий шаг вполне логичен – попробовать поискать аналогичные token в сети. Google Dorks в помощь и да, token был получен, как и доступ к конфиденциальной информации его владельца.

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

Всем привет!

Отличная статья о том как TruffleHog обновил алгоритмы сканирования, ускорив поиск утекших секретов. Теперь сканирование быстрее без потери точности – за счет оптимизации переходов при построении автомата Aho-Corasick.

Что изменилось?
🎯 Один проход по коду: ~800 ключевых слов от всех детекторов проверяются за раз, без повторных циклов
🎯 Aho-Corasick + предвычисления: заранее просчитаны переходы состояний, что сократило CPU-нагрузку
🎯 Быстрее на 11–17%: особенно заметно на больших репозиториях
🎯 Масштабируемость: добавление новых детекторов больше не замедляет анализ. Применение Aho-Corasick обеспечивает линейную масштабируемость по объему данных
🎯 Следующий шаг — оптимизация памяти и ускорение сканирования до 2240%

Подробнее – в разборе алгоритма

Используете TruffleHog? 🐽