DevSecOps Talks – Telegram
DevSecOps Talks
7.44K subscribers
85 photos
94 files
1.22K links
Рассказываем об актуальном в мире DevSecOps. Канал DevSecOps-команды "Инфосистемы Джет"
Download Telegram
Kubernetes Network Tutorial для разработчиков

Всем привет!

По ссылке можно найти обзорный материал о том, как устроено сетевое взаимодействие в Kubernetes и как с ним можно (нужно) работать.

«Предварительные требования» невелики: общее понимание контейнеризации и сетевых терминов, наличие кластера Kubernetes и установленный Helm.

Материал структурирован по разделам:
🍭 Introduction to Kubernetes Networking
🍭 Core Concepts in Kubernetes Networking
🍭 Cluster Networking Components
🍭 DNS and Service Discovery
🍭 Pod Networking Deep Dive
🍭 Network Policies and Security
🍭 Common Pitfalls and Troubleshooting
🍭 Summary and Next Steps

Получился tutorial, который охватывает сразу несколько тем и написан очень простым и понятным языком.

Много примеров и пояснений. В каждом разделе есть какой-то свой сценарий, на котором Автор наглядно демонстрирует происходящее.

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

Рекомендуем!
8👍1
Раскрытие чувствительных данных через GitLab GraphQL API

Всем привет!

Небольшая история о том, как уязвимость в GitLab API позволила получить доступ к конфиденциальной информации.

GraphQL API GitLab’a отключает защиту от CSRF для Queries (которые передаются через GET-запросы) и включает ее для Mutations (которые передаются через POST-запросы).

Это построено на допущении, что Queries могут только «читать» данные и ничего больше. Но так ли это на самом деле?

Оказалось, что нет. Нашлась Query, которая может делать запросы к внешним сервисам.

Соединив все это вместе Автор реализовал сценарий:
🍭 Атакующий настраивает webhook для получения данных
🍭 Создается HTML-файл, который перенаправляет пользователя на специальный URL (используя ту самую «небезопасную» Query)
🍭 Файл направляется аутентифицированному GitLab-пользователю, он нажимает на ссылку…
🍭 Отправляется GET запрос к gitlab.com/api/graph/…
🍭 Готово! Данные отправлены атакующему

Если нужно больше деталей о реализации сценария, то найти их можно в статье – там все очень подробно расписано.

Помимо этого, в статье есть видеозапись, которая демонстрирует реализацию рассмотренной атаки.

Важно (!): информация об уязвимости была сообщена команде GitLab и устранена в версии 18.4 (подробности доступны тут).
7
DevEx Engineer: на что обращать внимание при аудитах

Всем привет!

Работа на новой позиции зачастую связана с ответом на вопрос: «А что здесь вообще происходит и с чем мне придется работать?».

DevEx (Developer Experience) – роль, которая должна помочь оптимизировать процессы разработки и доставки ПО – не исключение.

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

Материал структурирован по разделам:
🍭 Phase 1: Benchmark Feedback Loops (Days 1–10). Понимание процессов сборки, тестирования, разворачивания
🍭 Phase 2: Reduce Context Switching (Days 11–20). Работа с управлением задачами, базой знаний и передачей компетенций
🍭 Phase 3: Audit Rituals That Impact Velocity (Days 21–30). Поиск ненужных (неоптимальных) «ритуалов» и бутылочных горлышек

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

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

В указанный план аудита можно очень удачно встроить часть, связанную с информационной безопасностью, чтобы сделать его более комплексным и полным.
3👍1
Поиск секретов: false positive или false negative?

Всем привет!

Задача поиска секретов – крайне важная задача при обеспечении безопасности разрабатываемого ПО.

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

Но эти сканеры не лишены недостатков: они могут генерировать большое количество false positive (дада, например, та-самая-длинная-переменная-на-Java).

Поэтому разработчики средств анализа секретов используют разные методы для получения более релевантных результатов: от объединения подходов (RegEx и энтропия) до анализа используемости и/или валидности секрета.

Однако, это «закручивание гаек» может дать «побочный эффект» - false positive сменятся на false negative и сканер не найдет «обычный секрет».

Что с этим можно сделать? Возможный ответ есть в статье от Semgrep.

В ней Авторы описывают:
🍭 Общие принципы работы средств анализа секретов
🍭 Техники, которые они используют для сокращения false positive
🍭 Результаты эксперимента команды по анализу репозиториев GitHub с целью поиска секретов
🍭 Рекомендации о том, как улучшить показатели работы сканеров

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

Кроме этого, в статье описаны трудности, с которыми можно столкнуться при оптимизации правил. Например, отсутствие уникальности в префиксах токенов (sk_live_, sk, gsk_ -весьма похожи, но используются разными сервисами).

Рекомендуем!
👍5
Kubernetes Learning Path!

Всем привет!

По ссылке доступен GitHub-репозиторий, в котором собраны материалы, которые будут полезны при изучении Kubernetes.

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

Например:
🍭 Understanding Distributed System
🍭 Basics of Key Value Store
🍭 Learn YAML
🍭 Understand Service Discovery
🍭 Network Basics и т.д.

После этого Авторы предлагают углубляться в сам Kubernetes – от понимания архитектуры и основных сущностей до создания и эксплуатации своего первого кластера.

Много ссылок на курсы, статьи, материалы по теме, а также voucher для получения скидки при оплате экзаменов (CKA, CKS, CKAD и т.д.)

Возможно, следующим Kubestronaut станете именно вы! ☺️
👍31
Ingress -> Gateway

Всем привет!

В марте 2026 закончится развитие и поддержка Ingress NGINX (если вы вдруг пропустили, то мы писали об этом вот тут).

Одним из возможных кандидатов для «переезда» является Gateway API.

Чтобы немного упростить и автоматизировать процесс можно воспользоваться проектом ingress2gateway. Он создан и поддерживается разработчиками Kubernetes.

Если просто, то он делает следующее:
🍭 Использует kubeconfig файл для того, чтобы иметь возможность «общения» с кластером
🍭 Ищет ресурсы Ingress NGINX в указанном namespace
🍭 Конвертирует найденные ресурсы в спецификацию, «понятную» Gateway API (на текущий момент только Gateways и HTTPRoutes)

Да, не совсем «полноценный переезд», но может сэкономить некоторое время.

Кстати, ingress2gateway поддерживает не только Ingress NGINX, но и другие провайдеры.

С установкой, запуском и возможными опциями можно ознакомиться в GitHub-репозитории проекта.

А какой Ingress вы выбрали для себя на замену?
👍41🔥1
Безопасность Supply Chain на примере npm

Всем привет!

В обновленной версии OWASP Supply Chain сразу попала на 3ье место, Shai-Hulud продолжает уничтожать Атрейдесов и Харконненов атаковать npm – лишь немногие подтверждения того, что вопрос обеспечения цепочки поставки ПО крайне важен.

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

Всего доступно 12 рекомендаций:
🍭 Disable post-install noscripts
🍭 Install with cooldown
🍭 Harden installs with npq
🍭 Prevent lockfile injection
🍭 Use deterministic installs и т.д.

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

Отличное руководство, в котором содержится много полезной информации.

Рекомендуем!
👍52🤬1
KubeVirt_InfoSec_Audit.pdf
785 KB
ИБ-аудит KubeVirt

Всем привет!

KubeVirt – open-source проект, представляющий из себя «надстройку» над Kubernetes, которая позволяет управлять виртуальными машинами вместе с контейнерами в одном кластере.

И да, даже для open-source проектов проводят внешние аудиты по информационной безопасности.

KubeVirt не стал исключением. Его исследовала команда Quarkslab.

Было найдено:
🍭 1 High-уязвимость (Arbitrary Host File Read and Write)
🍭 7 Medium-уязвимостей (Authentication Bypass in Kubernetes Aggregation Layer, Arbitrary Container File Read и т.д.)
🍭 4 Low-уязвимости (Host devices exposed by KubeVirt are accessible clusterwide, Lack of Common Name (CN) Verification in TLS Certificates)
🍭 3 Info-уязвимости (Crash Triggered by Unoptimized Build, Unhandled Exception Leads to a Crash)

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

Больше подробностей можно найти в прилагаемом файле (~ 108 страниц).

А как вы считаете? Open-source более/менее безопасен, чем коммерческое ПО? Или нет никакой разницы?
👍6
Ingress NGINX -> HAProxy Kubernetes Ingress Controller

Всем привет!

Недавно мы писали об утилите, которая позволит упростить переход с Ingress NGINX на Gateway API. Это не единственный вариант.

Но что, если вы не хотите использовать Gateway API, а хотите остаться на Ingress? В этом случае вам может быть полезен вот этот сайт.

Помимо базовой информации о том, как установить новый Ingress Controller, сайт поможет адаптировать существующие Ingress NGINX-конфигурации на HAProxy-вариант.

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

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

«Вишенкой» является набор руководств (tutorial), в которых собраны подобные инструкции о том, как настроить, например, Route HTTP traffic, Load balance traffic, Terminate SSL/TLS и т.д.
👍51🔥1
Technology Matrix: альтернативный взгляд на CNCF Landscape

Всем привет!

Если вы хотя бы раз видели CNCF Landscape, то, вероятно, у вас возникало несколько мыслей: «Как тут много всего!» и «А как с этим работать?».

Он развивается, обновляется, решений становится больше и… навигация в нем может быть не самой удобной.

Примерно так решил Автор статьи и сделал собственный вариант – Technology Matrix.

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

Автор разбил все на 7 основных «областей»:
🍭 Skip. Пока не интересует
🍭 Watch. Наблюдение за проектом, чтение release notes и т.д.
🍭 Explore. «Тестирование» - базовая установка и настройка, прохождение различных руководств. Без особого погружения
🍭 Learn. «Продвинутая» версия Explore – более глубокое изучение
🍭 Adopt. Использование в «реальной жизни», готово к промышленной эксплуатации
🍭 Advocate. Евангелизм: не просто использование, но и распространение информации о технологии
🍭 Graveyard. Без комментариев

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

Больше информации про Technology Matrix можно найти по ссылке.

Возможно, если вы любите структурировать информацию, предложенный подход может вас заинтересовать.
👍3
Анализ безопасности приложений с Raptor

Всем привет!

Raptor – open-source проект, использующий Claude Code для проверки безопасности разрабатываемого приложения.

И да – это акроним: Recursive Autonomous Penetration Testing and Observation Robot (если кому-то это интересно 😅).

Он позволяет:
🍭 Сканировать исходный код с Semgrep и CodeQL
🍭 Проводить fuzzing исполняемых файлов с AFL
🍭 Анализировать идентифицированные ИБ-дефекты с применением LLM
🍭 Генерировать exploits для подтверждения возможности эксплуатации ИБ-дефекта
🍭 Предлагать исправления для устранения ИБ-дефектов
🍭 Создавать отчеты в структурированном формате

Есть 2 режима установки – «самостоятельная» и c использованием devcontainer.

Подробнее об этом и о возможностях Raptor можно узнать в GitHub-репозитории проекта.
👀1
Kubeterm: GUI для Kubernetes

Всем привет!

Начинаем рабочую неделю с чего-то простого, а именно – Kubeterm. Да, это еще один графический web-интерфейс для Kubernetes.

С его помощью можно:
🍭 Аутентифицироваться в кластере Kubernetes
🍭 Просматривать общую информацию о кластере
🍭 Получать данные о созданных ресурсах
🍭 Управлять ресурсами: создавать, редактировать удалять и т.д. В том числе с использованием Helm
🍭 Искать причины возникших проблем (troubleshooting) через ephemeral-контейнеры
🍭 Реализовывать port-forward и не только

Устанавливается и настраивается быстро, можно сразу использовать. С «внешним видом» можно ознакомиться по ссылке на GitHub-репозиторий.

P.S. Можно установить даже на iOs и Android 😅
SecureCodeChallenges

Всем привет!

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

Ваша цель – провести его Security Review. Найти все ИБ-дефекты, объяснить насколько они критичны, предложить рекомендации и реализовать «защищенную версию».

«Доступен» следующий набор ИБ-дефектов:
🍭 SQL Injection
🍭 Stored XSS
🍭 Insecure Query Building
🍭 Missing Validation and Sanitization
🍭 Poor Handling of User Input
🍭 Lack of Output Encoding

Приложение создано с использованием Node.js, React, SQLite, Simple REST API. Соответственно, для установки и запуска потребуется Node.js.

Дальше все просто – скачиваем репозиторий, устанавливаем зависимости, запускаем приложение, получаем к нему доступ по порту 3000 и исследуем.
OWASP-AI-Testing-Guide-v1.pdf
6.2 MB
OWASP AI Testing Guide

Всем привет!

Мы не часто пишем про AI, но мимо такого пройти просто невозможно! В ноябре OWASP выпустили AI Testing Guide.

Документ получился очень массивный – около 250 страниц. Скачать его можно в приложении.

Материал «разбит» на 4 основные части:
🍭 Introduction
🍭 Threat Modeling AI Systems
🍭 OWASP AI Testing Guide Framework
🍭 Appendices and References

Самое «мясо» как раз находится в разделе «OWASP AI Testing Guide Framework».

В нем Авторы рассказывают о том, как и что можно проверить в соответствии с OWASP Top 10 для AI.

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

Однозначно рекомендуем!

P.S. А как вы смотрите на то, чтобы помимо DevSecOps мы бы еще писали про безопасность ML в этом канале? Если интересно – ставьте 🔥 под постом!
🔥41👎4👍1🥱1🥴1
MCP Breach-to-Fix Labs

Всем привет!

По ссылке доступен набор из 9 лабораторных работ, посвященных вопросам безопасности при работе с MCP.

Все сценарии проверены Автором и не являются теоретическими. Они помогут лучше понять «что может пойти не так» при работе с MCP и как сделать лучше.

Доступны такие лабораторные, как:
🍭 Hidden Instructions in Tool Responses
🍭 Log Poisoning Incident Response
🍭 Classic SQL Injection (Stored Prompt)
🍭 Git Command Injection
🍭 Tool Denoscription Poisoning и не только

У каждого сценария есть 2 «режима»: уязвимый и безопасный (hardened-вариант, который остановит атаку).

Запуск – как обычно, через Docker – инструкции можно найти в GitHub-репозитории.

Больше информации о проекте можно найти в статье.
3👍3
Building Secure AI Applications.pdf
2.7 MB
Building Secure AI Applications

Всем привет!

В приложении можно скачать небольшой методический материал (~ 40 страниц), посвященный тому, на что обращать внимание при обеспечении ИБ при разработке приложений, использующих AI.

Материал основан на OWASP Top 10 для LLM:
🍭 LLM01 Prompt Injection
🍭 LLM02 Sensitive Information Disclosure
🍭 LLM03 Supply Chain
🍭 LLM04 Data and Model Poisoning
🍭 LLM05 Improper Output Handling и не только

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

Дополнительно в материале представлена концептуальная архитектура с соотношением рассматриваемых угроз.
👍6
Использование LLM для анализа PR

Всем привет!

Как быть, если надо анализировать около 10,000 PR, создаваемых еженедельно? Вариант ответа на этот вопрос можно найти в статье от DataDog.

В ней Авторы описывают свой опыт создания BewAIre – специализированного инструмента, который позволяет определить является ли PR вредоносным.

Команда разбила задачу на 3 блока:
🍭 Управление набором данных (dataset, создание, актуализация)
🍭 Работа с «контекстными окнами» и большими размерами данных
🍭 Сокращение ложных срабатываний

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

В результате у них получилось достичь приличных показателей: > 99.3% - точность, 0.03% - FP, 100% - покрытие.

Больше подробностей, включая описание «подводных камней» и lessons learned, можно найти в самой статье.
4