DevSecOps Talks
رفتن به کانال در Telegram
Рассказываем об актуальном в мире DevSecOps. Канал DevSecOps-команды "Инфосистемы Джет"
نمایش بیشتر8 002
مشترکین
+424 ساعت
+137 روز
+5130 روز
آرشیو پست ها
8 002
Kubernetes Spec: интерактивный режим
Всем привет!
Изучение спецификации (раздела
spec) ресурсов Kubernetes может быть не самой простой задачей. Да, есть документация, есть kubectl explain, однако, это не всегда удобно и уж точно не наглядно.
Для того, чтобы решить эту проблему Автор создал Kubespec!
Он содержит:
🍭 Древовидную структуру раздела spec Kubernetes ресурсов
🍭 Описание каждого параметра
🍭 Тип данных параметра
🍭 Изменения в наличии/описании параметра, что происходили от версии к версии
🍭 Небольшие примеры использования
🍭 Ссылки на полезные ресурсы (документация Kubernetes, tutorials)
Все это доступно online и с материалом можно ознакомиться по ссылке выше. Поддерживаются версии Kubernetes: 1.12 – 1.32.
P.S. На текущий момент доступно описание не всех ресурсов, но «основные» - точно на месте 😊8 002
Почему Kubernetes не управляет пользователями?
Всем привет!
Впервые столкнувшись с Kubernetes многие немного удивятся тому, что в нем нет пользователей в «привычном» понимании.
Нет процедур «ввода пароля», нет вкладки «Пользователи», а есть только некий
kubeconfig, в котором что-то написано.
Но почему это так? В статье ребята из Armo предлагают свою версию:
🍭 Гибкость, которую надо предоставлять пользователям для подключения удобных им механизмов аутентификации, которые уже есть в компании
🍭 Разные сценарии использования. Кто-то использует bare metal, кто-то облака, кто-то все вместе. И везде будут свои лучшие практики по аутентификации
🍭 Безопасность. Различные стандарты предъявляют много требований к управлению пользователями. В этом случае удобнее и проще воспользоваться чем-то уже существующим
Поэтому (как и всегда) целесообразней не изобретать велосипед, а использовать нечто готовое и проверенное. Главное - сделать "ручку", через которую можно настроить интеграцию.
В заключение статьи разбирается несколько примеров настройки интеграции Kubernetes с Auth-провайдерами и вопросы, связанные с ролевым управлением доступа (RBAC).8 002
Правила для Semgrep от Trail of Bits!
Всем привет!
Ребята из Trail of Bits выложили в открытый доступ еще 35 собственных правил для Semgrep. Всего их теперь 115, ознакомиться с ними можно здесь.
В новой подборке доступны правила для:
🍭 Ruby (большая часть – от Insecure SSL до проверок, связанных с десериализацией)
🍭 HCL (проверка TLS, поиск секретов, соответствие лучшим практикам)
🍭 YAML (большинство за поиск секретов)
🍭 Generic (проверка корректности использования криптографии)
Для каждого правила приводится небольшое описание.
А в завершении – краткий обзор функционала Semgrep (regex mode и поддержка HCL).
8 002
Большой обзор релиза 2.8 контейнерной платформы «Штурвал» — 17 декабря в 11:00
Всем привет!
Ну что, успели потестить бесплатную community-версию «Штурвала»?
Ребята из «Лаборатории Числитель» зовут на онлайн-обзор нового релиза 2.8. Расскажут про фичи последней версии и поделятся важной информацией для тех, кто собирается установить или уже начал использовать community-версию платформы, но не знает, с чего начать.
Что в программе:
🔵 Чем отличается community-версия от коммерческой платформы
🔵 Как создавать кластеры и управлять в них узлами
🔵 Как устроена архитектура решения: инсталлятор, управление через kubectl, IAC и GUI
🔵 Пользователи и доступы: как настроить подключение через Keycloak, Blitz, Login Plugin
🔵 Как управлять репозиторием, сервисами и ресурсами
Подробности и регистрация здесь, готовьте вопросы и подтягивайтесь онлайн!
8 002
Утилиты для валидации манифестов Kubernetes
Всем привет!
Одно из преимуществ IaC-подхода – возможность анализировать конфигурацию, которая будет применяться для реализации изменений.
В статье можно найти подборку утилит, которые могут быть полезны для проверки манифестов Kubernetes.
Автор разбил материал на блоки:
🍭 Schema Validation – очепятки, ошибки с пробелами, несуществующие поля и т.д.
🍭 Custom Policies – утилиты, позволяющие проверять выполнение требований политик
🍭 Best Practices – анализ конфигурации на соответствие лучшим практикам
🍭 Dashboards – способы визуализации результатов, генерируемых некоторыми утилитами, описанными в статье
Получится такой вот «набор ссылок» на полезные утилиты, который разбавлен комментариями Автора и небольшими примерами (не для всех).
8 002
Эксплуатация CSPT с использованием Evil Villain
Всем привет!
Недавно мы писали про Client Side Path Traversal (CSPT) – уязвимости, которая позволяет производить действия с файлами, используемыми клиентскими приложениями.
История закончилась на том, что команда Doyensec создала собственный playground, где можно познакомиться с уязвимостью поближе.
Сегодня предлагаем вашему вниманию продолжение! Небольшой guide от той же команды – как эксплуатировать CSPT с использованием Evil Villain.
В статье вы найдете:
🍭 Описание необходимого инструментария
🍭 Как идентифицировать и исследовать CSPT
🍭 Сбор дополнительной информации
🍭 Эксплуатация CSPT
Множество screenshots, примеров кода, комментариев и пояснений!
Кстати, очень рекомендуем блог Doyensec – там крайне много всего интересного 😊
8 002
Supply-Chain Firewall
Всем привет!
Тематика безопасности цепочки поставки ПО набирает обороты. За последние годы было множество информации о различных атаках – от базовых typosquatting до более продвинутых *-jacking и манипуляций с пакетными индексами и менеджерами.
Чтобы хоть как-то упростить жизнь, команда Datadog выпустила новый open source инструмент – Supply-Chain Firewall.
Его принцип работы очень похож на аналогичный firewall-механизм, применяемый в композиционном анализе:
🍭 Supply-Chain Firewall «перехватывает» команду пакетного менеджера
🍭 Анализирует пакеты, которые хотят установить (используются собственные данные Datadog и OSV.dev)
🍭 Принимает решение (Block, Confirm, Allow)
На текущий момент поддерживается
pip и npm. А если вы используете Datadog, то логи о срабатываниях firewall можно смотреть прямо в ней за счет реализованной интеграции.
Ссылка на GitHub Repo проекта, в котором описана его установка и использование с примерами, доступна вот тут.8 002
Все любят Policy as Code, но не все любят Rego
Всем привет!
Policy as Code крайне удобный подход к управлению доступом, анализу выполнения корпоративных требований.
Он декларативен, его можно автоматизировать, конфигурационные файлы можно хранить в git, возможности (практически) безграничны.
Однако, есть и нюансы. В статье Автор описывает несколько примеров, связанных с Open Policy Language (OPA) и Zanzibar.
Если обобщить, то получается следующее:
🍭 Сложность. Написать базовые политики крайне просто, а что-то «поинтереснее» - уже сложно
🍭 Порог входа. Написание политик требует технических навыков
🍭 Дополнительные знания. Для корректной работы с Rego или Zanzibar потребуется изучить «еще одну область знаний»
🍭 Масштабируемость. При увеличении количества политик их тестирование и поиск ошибок в них становится затруднительным
В качестве решения Автор предлагает использовать абстракции более высокого уровня и low-code интерфейсы. Например, Permit (есть бесплатная Community версия).
Основная идея – создание простого drag and drop UI, с которым могут работать все пользователи. А вся «магия» остается «под капотом».
А что вы думаете по этому поводу? Стоит ли оно того или лучше все-таки выучить REGO или иной аналогичный инструмент?
8 002
The State of Open Source
Всем привет!
В приложении можно найти небольшой отчет (~ 12 страниц) от команды SNYK, посвященный вопросам безопасности Open Source.
Внутри есть информация о:
🍭 Отслеживании зависимостей (прямые, транзитивные)
🍭 Частоте изменений кодовой базы
🍭 Используемых практиках анализа кода и зависимостей
🍭 Случаях, связанных с Supply Chain Security
🍭 Соблюдении SLA и не только
Минимум текста, максимум графики и данные за 2023 и 2024 год.
В целом – достаточно хороший и информативный отчет, который можно быстро изучить.
8 002
Минималистичное обучение по уязвимостям
Всем привет!
Небольшой пятничный пост, посвященный обучающим материалам. По ссылке доступен набор небольших «уроков», посвященных уязвимостям и недостаткам в ПО.
Например:
🍭OWASP Top 10, Web (куда без него)
🍭Logging and Monitoring
🍭Buffer Overflows
🍭Host Header Poisoning
Из плюсов – подборка достаточно большая, материал подается просто и наглядно. Из минусов – только теория.
Как вариант, материал может пригодиться для вводных курсов специалистов,которые только начинают свое погружение в этот увлекательный мир.
Или для быстрого и краткого ознакомления с темой, чтобы «быть в курсе».
8 002
Zero Trust Reference Architecture для Kubernetes
Всем привет!
В приложении – электронная книга (~ 68 страниц), в которой описана Zero Trust архитектура, которую Авторы предлагают реализовать в Kubernetes.
Для этого они предлагают использовать:
🍭 Emissary-ingress. Защита доступа извне
🍭 Linkerd. Контроль взаимодействия сервисов внутри
🍭 Cert-Manager. Управление множеством сертификатов, которые понадобятся
🍭 Polaris. Контроль политик и выполнения их требований
Само повествование линейно – от того, что такое Zero Trust и основных терминов, до погружения в предлагаемые технологии.
Авторы описывают почему они выбрали именно такой набор, приводят общее описание функционала и способы настройки для того, чтобы собрать все «воедино».
P.S. Кстати, все приложения, конфигурационные файлы и т.д., используемые в книге, можно найти в GitHub Repo (ссылка на него есть в книге 😊).
8 002
Анализируем CVE
Всем привет!
Вроде нет ничего в мире ИБ более «знакомого», чем CVE (разве что КЦД 😊). Про них часто говорят, их разбирают и анализируют.
Однако, бывают случаи, когда надо просто и понятно объяснить, что это такое. Например, разработчику ПО, которого мы просим обновить библиотеку, чтобы устранить CVE-XXX-YYYY.
В статье от SNYK как раз содержится такой необходимый набор:
🍭 Получение информации о CVE
🍭 Анализ уровня критичности CVE
🍭 Изучение CWE, характерных для CVE. Разница между CVE и CWE
🍭 Возможность эксплуатации CVE
🍭 Стратегии по устранению уязвимости
Каждый блок разбирается на конкретной уязвимости, а именно: CVE-2020-8203 (prototype pollution в Lodash).
В итоге получается очень неплохой минималистичный обзор, позволяющий быстро ввести кого-либо в курс дела.
8 002
Mend Renovate: автоматическое обновление зависимостей
Всем привет!
Mend Renovate – решение, которое позволяет идентифицировать устаревшие версии используемых библиотек и предлагает варианты по обновлению.
По умолчанию Renovate поддерживает более 90 пакетных менеджеров, включающих в себя как языки программирования, так и средства автоматизации управления ИТ-инфраструктурой.
Алгоритм работы весьма прямолинейный:
🍭 Сканирование репозиториев для идентификации пакетов и зависимостей
Проверка на наличие более свежей версии
🍭 Открытие PR (MR) на обновление с дополнительной информацией (Age, Adoption, Passing, Confidence)
Познакомиться с его работой поближе можно в статье. В ней Автор использует Renovate для управления Helm Charts. Описаны все шаги – от подключения GitHub Repo до создания PR на обновление Chart.
Renovate доступен в нескольких вариантах: CLI (open source), Community и Enterprise. О разнице и ограничениях разных вариантов можно прочесть вот тут.
И, конечно же, больше подробностей можно узнать в документации на решение, доступной по ссылке.
8 002
Kubernetes Endpoints: что это и зачем?
Всем привет!
Endpoints играют важную роль в «жизни» Kubernetes – они помогают «связывать» Service с Pod для корректной работы приложений.
Но что это такое и как это работает изнутри? Если вам интересно разобраться, то эта статья может быть вам полезна.
Автор рассматривает:
🍭 Что такое Endpoint и как они работают (создание Service, создание Endpoint, обновление Endpoint)
🍭 Структура Endpoint с пояснениями
🍭 EndpointSlice, их роль, назначение и принцип работы
В завершении статьи приводится демонстрация на примере простого Deployment и его Service, в котором рассматриваются описанные в статье сущности.8 002
Штурвал - community версия
Всем привет!
Не можем остаться в стороне и не поделиться интересной новостью. Лаборатория Числитель выпустила community версию своей платформы контейнерной оркестрации - Штурвал.
В community версии есть:
🍭бесплатная лицензия с неограниченным сроком действия
🍭полный функционал, сопоставимый с коммерческой редакцией продукта
🍭управление до 10 воркерами любой конфигурации
И важные ссылки:
🍭форма для получения лицензионного ключа
🍭чат community в Телеграм
8 002
Service Mesh: DIY
Здрасссссьте Всем привет!
Хотели разобраться в том, что такое Service Mesh? Тогда эти статьи (раз, два) могут вам понравиться. В них Автор предлагает создать свою собственную реализацию!
Конечно не для production ready окружений, но для обучающих целей точно сойдет!
Предлагается пройти вот такой путь:
🍭 Создание
http-client и http-server
🍭 Реализация proxy для перехвата requests и responses
🍭 Добавление созданных сущностей в Deployment
🍭 Автоматизация предыдущего шага с использованием собственного Admission Controller
Указанные шаги Автор реализует с использованием Golang. Код, пояснения и примеры, ссылки на конфигурационные файлы и используемый инструментарий – все это есть в статье для воспроизведения
P.S. А если не хочется читать статью, то все необходимое собрано в этом GitHub Repo 😊8 002
SAST: руководство для начинающих!
Всем привет!
Сегодня хотим поделиться с вами обзорной статьей про Static Application Security Testing. Сперва Автор кратко описывает что это такое, зачем оно нужно и почему это важно.
Далее – переходит к самому интересному, а именно – способам анализа, которые могут быть «под капотом» у анализатора
Рассматривается следующее:
🍭 «Grep»-техника (она же pattern-matching)
🍭 Control Flow Analysis
🍭 Data Flow Analysis
🍭 Taint Analysis
Для каждой техники приводится лаконичное описание логики работы, примеры на небольших code snippets, а также ее преимущества и недостатки.
Помимо этого, есть краткое описание Enterprise и Open Source сканеров с указанием типов анализа, которые они поддерживают.
Завершают статью рекомендации о том, с чего можно начать реализацию практики статического анализа, как можно «бороться» с False Positive. И, конечно же, не обошлось без возможных областей использования машинного обучения для рассматриваемых задач.
В итоге получилось очень хорошее руководство для новичков, которые только начинают свой путь в SAST 😊
8 002
Совместим ли GitOps с Database Rollback?
Всем привет!
GitOps – прекрасный подход, который позволяет реализовать декларативное управление состоянием программного обеспечения.
Реализовали новую функциональность? Не проблема. Операторы Kubernetes синхронизируют изменения и автоматически применят их в кластере. Что-то пошло не так? Не проблема. Всегда можно «откатиться на предыдущий commit и разбираться что пошло не так».
В теории все очень классно, но что можно наблюдать на практике? Для stateless приложений такой подход может работать очень хорошо, а что делать с stateful?
Например, с базами данных? Вот так «просто» обновить ее не получится, ведь помимо ПО, необходимого для функционирования базы есть еще и данные. И эти самые данные уже не получится «просто взять из системы контроля версий».
Именно этой проблеме посвящена статья. Авторы разбирают:
🍭 Up и Down- миграции, возможную проблематику их реализации
🍭 Возможности ArgoCD по реализации миграций, нюансы работы с rollback
🍭 Использование Atlas Operator для управление схемой (schema) БД, включая rollbacks
В статье очень много интересных теоретических аспектов, связанных с работой баз данных. Кроме того, можно не читать статью, а посмотреть видео с прошедшего KubeCon (оно доступно в начале статьи).
8 002
DevSecOps Blueprint
Всем привет!
Сегодняшний материал подойдет всем, кто хочет начать свой путь в DevSecOps. DevSecOps BluePrint состоит из двух частей: Blueprint и Projects.
Первая часть посвящена теории. В ней собрана общая информация о том, что такое Application Security, безопасность SDLC, основы DevSecOps.
Вторая представляет из себя описание создания небольшой «лабораторной» для развития практических навыков.
Лабораторная включает в себя:
🍭 Docker
🍭 Gitea
🍭 Jenkins
🍭 Nexus
🍭 Security Tools (SonarQube, Trivy)
🍭 Monitoring Tools (Grafana, Prometheus)
Для каждого инструмента лабораторной приводится небольшая справка-инструкция о том, как его можно установить/запустить и первоначально настроить.
Для начала пути в мир DevSecOps – вполне себе! 😊
8 002
Sealed Secret Web UI
Всем привет!
Если вы любите IaC подходы и храните конфигурацию в системе контроля версий, то рано или поздно встанет вопрос: «А что делать с Kubernetes Secretes?»
Ответом может стать утилита от Bitnami – Sealed Secrets (про нее мы писали тут). Если просто – то она создает «шифрованного двойника» секрета и позволяет разместить его в git-репозитории.
Сегодня же мы хотим рассказать вам про простую утилиту, которая позволяет сделать Web UI для Sealed Secrets.
Функционал минималистичен и прост:
🍭 Encode/Decode. (Де) кодирование строк в base64
🍭 Secrets. Получение всех Sealed Secrets в рамках Namespace
🍭 Seal. Шифрование Kubernetes Secret с созданием Sealed Secret
🍭 Validate. Проверка Sealed Secret
Ничего сверхъестественного, просто небольшое графическое представление информации, которое может немного упростить жизнь 😊
