DevSecOps Talks – Telegram
DevSecOps Talks
7.43K subscribers
85 photos
94 files
1.23K links
Рассказываем об актуальном в мире DevSecOps. Канал DevSecOps-команды "Инфосистемы Джет"
Download Telegram
CodeQL: From zero to hero, Part 1

Всем привет!

Немного обманчивая статья 😊 В ней, по крайней мере в первой ее части, разбирается не сам CodeQL, а основы статического анализа. Какие способы бывают, чем они отличаются, для чего используются и почему всеми любимого grep не хватает.

Статья погружает читателя в тематику постепенно:
🍭 Описание
общей задачи поиска уязвимостей в исходном коде
🍭 Идентификация sources и sinks (что это – описано в статье 😊)
🍭 Lexical analysis и зачем он используется
🍭 Syntactic pattern matching, abstract syntax tree и control flow graph
Data flow analysis и taint tracking

Автор отлично описывает разные способы анализа, зачем они нужны, их плюсы и минусы. Материала достаточно много, есть примеры, самое «то» для начала!

Прочитав статью можно сделать еще один вывод. Анализ кода строится на понимании механик и того, что происходит при работе ПО. Слепо полагаться на автоматизацию, которая «сама все найдет» не стоит, она лишь сможет помочь. Да и то, если ей объяснят, что надо делать. Однако, без автоматизации тоже плохо – ведь анализировать код «глазами» задача выполнимая, но крайне ресурсоемкая.
Важно помнить, что результаты, получаемые при таком подходе, скорее всего будут не актуальны. За время, потраченное на такой анализ приложение уже успеет «измениться».

P.S. В завершении статьи можно найти несколько challenges.
Certified GitOps Associate (CGOA)

Всем привет!

KubeCon идет во всю, о самых интересных докладах по ИБ (на наш взгляд) напишем позже. А пока – новая сертификация от CNCF: Certified GitOps Associate (CGOA).

Увы, пока в статусе «coming soon», но уже известно «что внутри»:
🍭 GitOps Terminology (20%)
🍭 GitOps Principles (30%)
🍭 Related Practices (16%)
🍭 GitOps Patterns (20%)
🍭 Tooling (14%)

Тест на 90 минут, который, судя по описанию, подойдет всем DevOps инженерам. Уровень знаний: beginner.
4👍1
Атака на k8s RBAC

Всем привет!

В сети можно найти много статей про то, как кто-нибудь нет-нет, да и установит crypto miner в кластер k8s. На этот раз команда Nautilus (Aqua Security) нашла нечто новое – persistence через RBAC misconfiguration (хотя без crypto miner так и не обошлось).

Атака была зарегистрирована на honey pot кластерах Aqua Security:
🍭 Злоумышленник воспользовался возможностью отправки анонимных запросов к kube-apiserver и создал cluster role, близкую к Cluster Admin
🍭 После этого он «присоединил» ее к ServiceAccount kube-controller, которую создал в namespace kube-system
🍭 В дальнейшем это позволило ему создавать ресурсы по желанию

С одной стороны «анонимный доступ к kube-apiserver, серьезно?». С другой – важность аудита ролевой модели k8s. Ведь подобный persistence мог остаться после того, как недостаток с анонимными запросами был устранен. Это лишний раз показывает, что важно смотреть на безопасность k8s не по отдельным аспектам, а в общем.
👍6
#мероприятие
Российский разработчик ПО, компания «Лаборатория Числитель» запускает серию практических вебинаров, посвященных работе с платформой управления контейнерами «Штурвал»

Вебинары пройдут в формате live-демо, во время которых будут показаны все этапы работы с платформой.

25 апреля в 11:00 откроет серию вебинар «Штурвал». Начало работы».

В программе:
🔹Планирование инсталляции
🔹Развертывание в открытом и закрытом контуре
🔹Настройка зеркала

Демонстрацию проведет Александр Краснов, технический директор «Лаборатории Числитель».

Вебинар будет интересен DevOps-инженерам и DevOps-администраторам

Регистрация
🔥5👍2😁21👎1🥰1👏1🐳1
PESD: автоматизация создания диаграмм последовательностей

Всем привет!

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

Это можно делать «в ручную», но это может быть долго, неудобно, не лишено ошибок. Поэтому ребята из Doyensec сделали Proxy Enriched Sequence Diagram – PESD! Этот небольшой Burp Plugin позволяет автоматизировать процесс создания таких диаграмм.

Есть еще важное слово – «Enriched». Все так, диаграммы получаются с «дополнительными» сведениями. Например, можно посмотреть URL Query Params или иные параметры взаимодействия.

Результаты можно выгружать в различных форматах: SVG, Markdown (MermaidJS), JSON. Больше подробностей и сам PESD можно найти по ссылке на GitHub Repo.
1🦄1
KubeArmor: k8s runtime security

Всем привет!

KubeArmor – runtime security решение, которое позволяет контролировать что происходит с контейнером и/или хостом на котором он расположен. В качестве «основного движка» используется AppArmor, SELinux и BPF-LSM.

Решение позволяет:
🍭 Реализовать hardening
🍭 Управлять процессами, сетевыми соединениями и контролировать доступ к чувствительным данным
🍭 Генерировать k8s network policy
🍭 Профилировать контейнеры для создания поведенческих моделей

Проект активно развивается (можно посмотреть в Version Releases Blog), есть документация, описывающая ключевые возможности KubeArmor и примеры его использования.
1👍1
Sveltos: централизация управления кластерами k8s

Всем привет!

Целью проекта Sveltos является упрощение работы с большим количеством кластеров. Концептуально схему можно описать так: есть управляющий кластер, подчиненный кластера и профили кластеров, которые содержат требуемые данные. Обращаясь к кластеру управления можно вносить изменения в подчиненные кластеры.

Sveltos умеет:
🍭 Создать ресурсы
в кластерах
🍭 Следить за configuration drift, возвращая все в «исходное состояние» (указанное в кластере управления)
🍭 Создавать ресурсы в dry-run режиме
🍭 Направлять alert в случае идентификации проблем с состоянием кластера
🍭 Управлять кластерами на основании labels (например, применять что-то на production и не применять на test) и не только

Полное описание функционала и компонентов проекта (какие есть operators, какие CRD и что они делают) можно найти в документации. Отдельно рекомендуем заглянуть в раздел «Blogs and Videos». В нем можно найти много ссылок на материалы по теме.
🔥21
Как быстро обновляются Secrets и ConfigMaps в k8s?

Всем привет!

Все началось с простого опроса, в котором большинство ( ~ 41%) выбрало ответ «почти мгновенно», однако это не совсем так.

В статье Автор разбирает внутренние механизмы, отвечающие за процесс обновления Secrets и ConfigMaps в Pod.

У Kubelet есть параметр configMapAndSecretChangeDetectionStrategy, который может принимать 3 значения:
🍭 Get: получение объектов от API server
🍭 Cache: использованием TTL Cache
🍭 Watch (Default): наблюдение за интересующим объектом

Получается, что у Kubelet есть вся необходимая информация, однако обновления (мгновенного) не происходит. Оказалось, что у Kubernetes отсутствуют механизмы, запускающие реконсиляцию при обновлении ресурса (в нашем случае это Secret и ConfigMap).

На деле обновление происходит при вызове syncPod функции:
🍭 В случае изменения Pod (Pod event update, изменение параметров Pod) – что происходит не часто
🍭 Периодически: где-то раз в минуту

Именно по этой причине, по умолчанию, Secret и ConfigMap не синхронизируются мгновенно. Если хочется проверить, то есть repo с PoC. Если интересно как можно это ускорить – ответ есть в статье.
👍4
Open source threat modelling tools

Всем привет!

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

Рассматриваются такие инструменты, как:
🍭 Cairis
🍭 OWASP pytm
🍭 OWASP Threat Dragon
🍭 Threagile
🍭 ThreatSpec
🍭 Microsoft Threat Modeling Tool
🍭 Threats Manager Suite

Для каждого их них есть небольшой описание и ссылки на сайты/repo. В завершении статьи (раздел References) можно найти дополнительные материалы по теме.
Open-appsec: Web-protection и API Security

Всем привет!

Open-appsecopen source продукт, разрабатываемый командой Checkpoint. Представляет из себя add-on, который можно установить на Kubernetes Ingress Controller, Nginx и Kong API Gateway.

Обладает следующим функционалом:
🍭 API Security
🍭 Bot prevention
🍭 Intrusion Prevention
(IPS Engine с поддержкой Snort 3.0 Signatures, аналитика от Checkpoint)
🍭 Защита от OWASP Top-10 и не только

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

Функционала и возможностей достаточно много, поэтому рекомендуем ознакомиться с документацией и роликами, которые демонстрируют работу open-appsec.
👍3
Service Mesh Comparison

Всем привет!

На сайте можно найти небольшое сравнение Service Mesh технологий. Рассматриваются все «основные» участники: Nginx, Istio, Kuma, Cilium, LinkerD и т.д.

В качестве критериев представлены:
🍭 Auto Proxy Injection
🍭 gRPC
🍭 Prometheus Integration
🍭 Tracing Integration
🍭 SPIFFE и не только

Кстати, на самом сайте можно найти интересную timeline-диаграмму, в которой отображены даты появления участников «на рынке».
👍2
DevSecOps в Chime

Всем привет!

По ссылке ребята из компании Chime делятся своим подходом к построению практик безопасной разработки и не только.

Соотношение разработчиков к ИБ было ~ 60/1, в результате чего надо было как-то оптимизировать затраты и выстроить рабочий процесс.

Если ничего не подходит – сделай свое! Так поступили ИБ-специалисты Chime и написали собственное приложение – Monocle.

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

Само приложение не является open source, однако в статье много скриншотов для того, чтобы можно было получить представление о нем. Возможно, Вам понравится такой подход и Вы повторите его у себя.
👍1
Анализ PR на соответствие ИБ-требованиям

Всем привет!

Продолжение истории Chime! В статье они делятся опытом анализа pull request’ов при помощи их разработки – Monocle!

Команда определила следующие требования:
🍭 PR должен иметь хотя бы 1 review
🍭 PR не должен содержать dependency confusion
🍭 Repo должны содержать только те базовые образы, что были одобрены ИБ
🍭 «Новый код» не должен содержать уязвимостей уровня Critical и High

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

Если интересно, что внутри и как это работает (дада, там OPA) – в статье есть общая архитектура и описание ключевых принципов. Рекомендуем к прочтению!
Мини-лабораторные по анализу кода от GitHub

Всем привет!

По ссылке доступно 5 небольших лабораторных работ по анализу кода от команды GitHub.

Материал включает в себя:
🍭 Level-1: Black Friday
🍭 Level-2: Matrix
🍭 Level-3: Social Network
🍭 Level-4: Data Bank
🍭 Level-5: Locanda

Все лабораторные представляют из себя небольшие python-проекты. Чтобы «пройти» испытание, необходимо получить «passed» от hack.py (уязвимости больше нет) и test.py (при этом код все еще работает). Сложность возрастает от Level-1 до Level-5.

Можно попробовать как в Codespaces (при этом время использование будет тратиться) или установить локально.
👍6
Gartner_CNAPP.pdf
996.9 KB
Gartner Market Guide for Cloud Native Application Protection Platform

Всем привет!

В приложении можно скачать отчет Gartner, посвященный безопасности Cloud Native приложений. Пусть название Вас не смущает: помимо анализа рынка в отчете много полезной теоретической информации.

Например:
🍭 Общий взгляд на Risk Surface Area
🍭 «Дополнительные» задачи, которые появляются в Cloud Native для разработчиков
🍭 Описание функционала Cloud Native Application Protection Platform
🍭 Основные вызовы, с которыми можно столкнуться и не только

В целом получился неплохой материал, который может быть полезен, если вы погружаетесь в этот прекрасный мир.
👍2👾1
GitGuardian_Secrets.pdf
2 MB
State of Secrets in AppSec

Всем привет!

Команда GitGuardian опросила 507 представителей отрасли для того, чтобы собрать информацию о вопросах ИБ, связанных с управлением секретами. В результате получился прилагаемый отчет.

Внутри можно найти:
🍭 Статистику об управлении секретами (сколько % находили hardcode, кто озадачился вопросами управления секретами, используемые практики и т.д.)
🍭 Самооценка уровней зрелости Компаний по вопросам управления секретами
🍭 Подходы к идентификации секретов в репозиториях исходного кода и не только

Получился простой, наглядный и информативный отчет, рекомендуем!
1👍1
PhD: Development!!!

Всем привет!

Завтра из каждого электронного самоката, powerbank’a, умных часов, IoT-устройств и даже из утюгов будут писать про Positive Hack Days!
Что ж! Мы не будем исключением и еще раз напишем про программу track’a “Development” на 19 мая.

Итак, нас ожидает:
🍭 09:40–10:00 Владимир КочетковОткрытие трека. Вступительное слово организаторов
🍭 10:00–11:00 Дмитрий СкляровЯ реверсер, я так вижу!
🍭 11:00–12:00 Владимир Кочетков / Сергей ПодкорытовЯзык запросов к коду... не нужен?
🍭 12:00–13:00 Георгий АлександрияКак разработчики анализатора исходного кода с одной экспонентой боролись
🍭 13:00–14:00 Дмитрий Шмойлов Безопасность цепи поставок
🤩 14:00–15:00 Алина Новопольцева DAF: путь самурая в безопасной разработке
🍭 15:00–16:00 Виктор Бобыльков / Дмитрий ЕвдокимовSCAзка о SCAнерах
🍭 16:00–17:00 Ксения Змичеровская / Илья ШаровКазнить нельзя помиловать: уязвимости из-за ошибок в бизнес-логике
🍭 17:00–18:00 Алексей ХорошиловОпыт тестирования и верификации ядра Linux
🍭 18:00–19:00 Сергей ЗадорожныйРуководство бравого докер-секьюрити мастера

Отдельно приглашаем Вас на доклад нашей Алины, который пройдет с 14:00 до 15:00 в Конструкторском Бюро! Первое выступление на столь крупном мероприятии, да еще и сразу в Парке Горького! Ей будет приятна Ваша поддержка! 🥰🥰🥰

И приходите на наш стенд, очень-очень-очень будем рады пообщаться лично! Увидимся! 👋👋👋
Please open Telegram to view this post
VIEW IN TELEGRAM
12👍1
Managed Kubernetes Auditing Toolkit

Всем привет!

Еще один отличный материал от DataDogManaged Kubernetes Auditing Toolkit (MKAT). Он позволяет идентифицировать ИБ-дефекты в облачных инсталляциях Kubernetes. На текущий момент поддерживается только AWS. Поддержка GCP GKE есть в roadmap.

При помощи него можно:
🍭 Идентифицировать взаимосвязь между k8s SA и AWS IAM Roles
🍭 Искать hardcoded учетные данные AWS в ресурсах k8s (Pods, CM, Secrets)
🍭 Идентифицировать возможность доступа pod’ов к AWS Instance Metadata Service

Кроме этого, MKAT позволяет визуализировать взаимосвязь сущностей через --output dot. В repo есть ссылки на другие решения по анализу конфигураций и описание их отличия от MKAT.
2
Копирование Secrets в Kubernetes

Всем привет!

Казалось бы, зачем «изобретать еще один велосипед» при управлении секретами в k8s? Есть же HashiCorp Vault с его sidecar/operator, SealedSecrets, External Secrets и не только. Однако, бывают такие случаи 😊

В статье описывается «путь» Lonto. Началось все с того, что командам нужен был сертификат не только для домена вида *.dev.example.com, но и для его sub-domains. Самым очевидным решением стало копирование секретов. Очевидным, но трудно поддерживаемым на большом объеме, особенно в условиях динамического предоставления сервисов (namespace’ов k8s) разработчикам. Второй задачей стала синхронизация секретов во всех кластерха и namespace’ах.

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

В соответствии с потребностями определили следующие требования:
🍭 Поддержка регулярных выражений для указания namespaces, куда должны быть скопированы секреты
🍭 Наблюдение за создаваемыми namespaces для добавления в них секреты (если такое требуется)
🍭 При удалении CR все порожденные им Secrets должны так же удаляться
🍭 Controller должен быть расширяемым.
Например, для интеграции с HashiCorp Vault

Результатом работы стал SecretMirror, который доступен на GitHub. И если у вас аналогичные задачи, то может быть именно он сможет вам помочь. Описание архитектуры, логики работы и примеры использования (в том числе работа с HashiCorp Vault) можно найти в статье.
1
Вебинар «Первичная настройка платформы "Штурвал". Конфигурация провайдеров»

24 мая компании «Лаборатория Числитель» и «Инфосистемы Джет» приглашают вас присоединиться к второму практическому вебинару, посвященному работе с платформой управления контейнерами «Штурвал».

В программе:
▪️Конфигурация провайдера oVirt
▪️Конфигурация провайдера vSphere
▪️Подготовка шаблонов узлов

Демонстрацию решения проведут:
▪️Александр Краснов, технический директор «Лаборатории Числитель»
▪️Дмитрий Горохов, директор департамента виртуализации и контейнеризации «Инфосистемы Джет»

Вебинар будет интересен DevOps-инженерам и DevOps-администраторам.

Регистрация
🔥8🦄2❤‍🔥1👎1