ar
Feedback
DevSecOps Talks

DevSecOps Talks

الذهاب إلى القناة على Telegram

Рассказываем об актуальном в мире DevSecOps. Канал DevSecOps-команды "Инфосистемы Джет"

إظهار المزيد
7 831
المشتركون
+224 ساعات
+377 أيام
+10130 أيام
أرشيف المشاركات
5 лет, 160 комментариев и уязвимость устранена! Всем привет! Сегодня предлагаем вам очень увлекательную и захватывающую с первых минут статью. Началось все с того, что Автор наткнулся на CVE-2022-1471, эксплуатация которой могла привести к RCE при использовании SnakeYAML. И это удивило Автора, ведь в статье, которой на тот момент было уже 5 лет, упоминалась ровно та же самая уязвимость (только ей не был присвоен CVE), а SnakeYAML приводился в качестве одного из примеров. Дальнейшее разбирательство немного шокировало: project maintainer перевел ее в значение «won’t fix», аргументируя это тем, что надо «просто использовать безопасный вариант реализации». Да, он был прав. Но большинство людей не задумываются о том, как это правильно использовать. Им нужно реализовать десереализацию и только. Это подтверждается множеством примеров в интернете, где рекомендуется использовать небезопасный вариант. С точки зрения Автора такой подход был в корне неверным. Ведь, если есть возможность, то лучше реализовать secure-by-default, а все остальное – на усмотрение пользователей. Именно так и начался thread о том, что это надо исправить. На момент окончания обсуждения было порядка 160 комментариев. Хорошая новость в том, что project maintainer все-таки согласился с тем, что можно сделать иначе и предоставил secure-by-default реализацию. Она попала в SnakeYAML 2.0. В статье можно прочесть много интересных размышлений Автора: 🍭 О том, как используют средства анализа кода (иногда фокус смещается на создание новых правил для сканеров, а не на устранение существующих недостатков) 🍭 О том, что делать ИБ-исследователям, если они зашли в тупик при общении с «автором уязвимости» 🍭 О том, почему secure-by-default это важно и не только Но это все лучше прочитать самим ☺️ Рекомендуем!

Сравнение Gateway API Всем привет! В repo можно найти результаты сравнения Gateway API. В выборку попали: Cilium, Envoy Gateway, Istio, Kgateway, Kong, Traefik и Nginx. Сравнение проводилось по следующим параметрам: 🍭 Attached Routes Test 🍭 Route Probe Test 🍭 Route Scale Test 🍭 Traffic Performance 🍭 Architecture В начале сравнения представлен итоговый результат, далее – детальные по каждому из блоков, описанных выше. Помимо этого, для каждого из сравниваемых решений описаны нюансы, которые выявил Автор в процессе тестирования. Графики, графики, графики, таблицы, комментарии – все это есть в материале для более глубокого изучения. P.S. Да, есть те, кто не попал в выборку (HAProxy, Linkerd и не только). Причины такого решения можно найти в repo.

Безопасность CI/CD, рекомендации Wiz! Всем привет! По ссылке можно найти статью, посвященную безопасности CI/CD, подготовленную специалистами Wiz. Сперва в статье разбираются основные компоненты: репозитории исходного кода, «сборщики», различные оркестраторы и т.д. После – особенности обеспечения ИБ конвейера: сложность, скорость, потребность в автоматизации, управление доступом и т.д. Далее Авторы приводят собственные рекомендации: 🍭 Automating Security Scans 🍭 Focusing on Runtime 🍭 Managing Secrets Effectively 🍭 Implementing Immutable Infrastructure и не только И это далеко не все – также рассматриваются задачи типового конвейера, распределение ответственности (кто делает что) и ключевые показатели эффективности, которые могут быть полезны для понимания того, насколько все хорошо реализовано. P.S. Помимо этого в Wiz Academy множество прекрасных статей по разным DevSecOps-тематикам. Возможно, вы найдете для себя что-то интересное ☺️

Атаки на JSON Web Tokens (JWT) Всем привет! JWT повсеместно используются в современном мире для решения значимых задач – аутентификация, авторизация, безопасный обмен данными в приложениях. Поэтому их защита – крайне важная задача. Если вам интересна эта тема, то рекомендуем прочесть статью. После минималистичной вводной (что такое JWT, из каких «частей» состоит, какие они бывают и т.д.) Автор переходит к самому интересному – атакам и уязвимостям, связанным с технологией! Рассматриваются: 🍭 Signature Not Verified 🍭 None Algorithm Attack 🍭 Trivial Secret 🍭 Algorithm Confusion и не только Для каждой уязвимости описано в чем ее суть, какое может быть воздействие/ущерб (impact), как ее можно эксплуатировать и как можно защититься. Коротко, ёмко, без воды и по делу! То, что надо!

Идентификация угроз в Kubernetes Всем привет! Еще одна потрясающая статья от ребят из Exness! В ней Авторы делятся практиками, которые они используют для мониторинга и идентификации угроз, характерных для Kubernetes. В первой части приводится описание используемых средств автоматизации. Выбор команды пал на Tetragon (в качестве агента) и Kubernetes Audit Log (для получения информации о том, что происходит с кластером). Описываются плюсы и минусы использования open source, доработки, реализованные командой, а также Audit Policy, которую применяют в Exness. Дальше – интересней! Поиск угроз: 🍭 System Binary Renaming 🍭 Privileged Container Detected 🍭 Suspicious Execution Activity Inside a Container 🍭 Cluster Admin Role Bound to the User и не только Для каждой угрозы приводится ее классификация по MITRE и/или матрицей от Microsoft, краткое описание и возможные способы ее идентификации. Очень и очень полезный материал для тех, кто работает с мониторингом ИБ сред контейнерной оркестрации. Рекомендуем! ☺️

Поиск изменений и Container Drift Всем привет! Изначально контейнеры были задуманы как неизменяемые сущности (immutable). Однако, бывают случаи что «что-то поменялось» и надо понять, что именно. Для этого можно пользоваться разными инструментами. Например: Docker Forensics Toolkit, Kube Forensics, Docker & Container Explorer. В статье Автор описывает свои размышления на эту тему: 🍭 Что такое Container Drift 🍭 Поиск drift при работе с Docker 🍭 Поиск drift при работе с containerd 🍭 Автоматизация описанных подходов В статье очень много примеров и деталей, а также разных способов реализации поиска container drift. Это может быть полезно не только ИБ, но и ИТ-специалистам при расследовании инцидентов и идентификации основной проблемы.

Khronoscope: анализ состояния кластера k8s во времени Всем привет! Не так давно мы писали про проект KHI (Kubernetes History Inspector), который позволял визуализировать журналы k8s для того, чтобы понять, что происходило в кластере. Еще одна утилита, которая может помочь разобраться в том, «как все было» - Khronoscope. Его основная задача – производить анализ конфигурации кластера в интересующий промежуток времени. С его помощью можно: 🍭 Получать сведения о том, что и когда запускалось 🍭 Отслеживать конфигурации ресурсов 🍭 Смотреть логи ресурсов 🍭 «Проматывать время и не только На текущий момент утилита работает с ConfigMap, DaemonSet, Deployments, Namespaces, Nodes, PersistentVolume, Pods, ReplicaSets, Secrets и Services Документация по установке, «горячие клавиши», видео с демонстрацией работы – все это можно найти в repo проекта.

Управление доступом к web-приложениям Всем привет! По ссылке можно найти достаточно подробную инструкцию о том, как реализовать безопасное управление доступом к web-приложениям. Примечательно, что это статья написана не «от лица ИБ» (настройки, RBAC, контроль сессий и т.д.), а именно «от лица разработчика». Автор описывает реализацию ABAC-модели с использованием CASL, в качестве основного инструмента. В статье есть информация о том: 🍭 Что такое управление доступом, в чем разница между AuthN/Z 🍭 Разные подходы к управлению доступом 🍭 Детальное рассмотрение ABAC 🍭 Реализация ABAC с использованием CASL Для наглядности Автор реализует все шаги – от установки CASL до написания небольшого приложения, демонстрирующего как это можно реализовать. В итоге имеем отличный материал с множеством комментариев, примеров и, конечно же, кода. Рекомендуем!

Pysa: статический анализатор для Python Всем привет! Pysa – «расширение» проекта Pyre (анализ качества кода), которое позволяет проверять исходный код на Python на наличие ИБ-дефектов. Чтобы запустить Pysa понадобится: 🍭 Установить Pyre, Sapp и Watchman (опционально, для инкрементального сканирования) 🍭 Инициализировать Pysa-проект 🍭 Собрать информацию о ПО с использованием Pyre, включая данные о taint 🍭 Полученные данные отправить в Sapp и работать с результатами в минималистичном web-приложении Pysa позволяет искать разные ИБ-дефекты, например: RCE, XSS, SQL-инъекции, SSRF и не только. Подробнее можно посмотреть тут. Подробнее о том, как работает анализатор, способах его конфигурации и возможностях можно найти в документации на проект.

Мы на БеКоне!!! Приходите к нам, чтобы познакомиться лично, поговорить про безопасность контейнеров и не только, обсудить JCS
Мы на БеКоне!!! Приходите к нам, чтобы познакомиться лично, поговорить про безопасность контейнеров и не только, обсудить JCSF, да и просто сфотографироваться!!! 😊😊😊 PS У нас есть конфеты и носки!!! :) Ждем вас!!!

Обход политик OPA Gatekeeper Всем привет! Использование механизмов Admission Controller/Policy Engine для контроля того, что запускается и уже запущено в кластерах Kubernetes – обязательная практика информационной безопасности. Однако, даже такие отличные инструменты не лишены изъянов, особенно если настраивать их без должного понимания происходящего. Именно этому посвящена статья от Aqua Security, в которой приводятся примеры того, как можно «обойти» те самые политики. В статье рассказывают про: 🍭 Что такое Admission Controller и OPA Gatekeeper в частности 🍭 Анализ простой, но полезной политики (контроль реестров, из которых можно «брать» образы) 🍭 Краткое описание логики работы политики «изнутри» 🍭 Примеры того, как можно «обойти» политику и запустить вредоносный образ Да, обход достаточно «банальный» и простой, но тем не менее рабочий. Это лишний раз подчеркивает важность того, что понимание того «как это работает» помогает (в том числе) лучше выстраивать защиту. В завершении статьи Авторы анализируют возможность подобного «обхода» для иных известных Policy Engine – Kyverno, Kubewarden, JSPolicy (там тоже получится 😊)

AutoFix для исправления ИБ-дефектов кода Всем привет! Использование AI уже норма современности и практически все его используют в той или иной мере. Статические анализаторы исходного кода – не исключение. В крупную клетку можно выделить 2 основные задачи, где AI (наверное) может очень сильно помочь: разметка и помощь в генерации исправлений, чтобы было безопасно. Если первая задача (реализация) еще вызывает вопросы, то вторая, кажется, получила статус «пригодности» и используется много у кого. В прилагаемом отчете можно найти информацию о том, как с этой задачей справились разные анализаторы: Corgea, Amplify, Arnica, Pixee, OX, Aikido, Codacy. Приводится статистика: 🍭 Fix coverage 🍭 Average fix quality 🍭 Final score По каждому блоку приводятся комментарии Авторов относительно полученных результатов и возможностей решений: отправка данных в LLM, использование собственных наработок, комбинированный вариант. В завершении приводится набор сильных и слабых сторон, которые были идентифицированы в рамках исследования. С полными результатами (Google Таблица) можно ознакомиться тут. А что вы думаете по поводу использования AI в SAST? Какие задачи он хорошо решает и где может быть использован (на практике, не в теории)?

SimKube: симуляция кластера Kubernetes Всем привет! SimKube – проект, который позволяет симулировать поведения кластера Kubernetes в безопасной изолированной среде. Если просто, то он позволяет «записывать» действия пользователей в кластере и сохранять данные для последующего анализа. Для этого у него есть несколько компонентов: 🍭 Tracer. Сохраняет события кластера, может быть настроен для сохранения событий. Определяемых пользователем 🍭 Controller. Запускает отдельный Kubernetes кластер и позволяет воспроизводить те самые симуляции 🍭 CLI. Утилита для упрощения взаимодействия с SimKube Подобное решение может быть полезно, например, при расследовании инцидентов, чтобы понять, что именно и когда произошло. Больше подробностей – архитектура, установка, настройка, видео с примером работы – можно найти в repo и на сайте с документацией.

Визуализация логов Kubernetes Всем привет! KHIKubernetes History Inspector – проект, который позволяет визуализировать логи Kubernetes для повышения удобства работы с ними. Он агрегирует данные, отображая их в виде timeline, на которых указано что/когда/с чем происходило. Например: 🍭 История ресурсов. Отображение статуса ресурсов, их манифесты в определенный промежуток времени 🍭 Журналы от разных источников. Общий взгляд на логи, генерируемые разными ресурсами 🍭 Возможность фильтрации. Анализ больших объемов данных на основании выборки, определяемой пользователем В итоге получается наглядная диаграмма, на которой видна «летопись» происходящего. С примерами можно ознакомиться в repo проекта. KHI подключается и настраивается очень просто (информацию об этом можно прочесть в Getting Started). Реализована поддержка Google Cloud, однако, есть возможность использования KHI с «обычным» кластером Kubernetes. Подробнее об этом написано тут.

DeepWiki: автоматическое описание repo! Всем привет! Команда Cognition Labs (разработчики Devin) создали проект DeepWiki, с которым может ознакомиться каждый желающий. Если кратко, то он создает (автоматически) документацию для любого репозитория, ссылку на который ему предоставят. Основная цель проекта – упростить понимание того, что делает тот или иной проект. Эта цель достигается за счет генерации описания, схем взаимодействия/связи компонентов, типов данных и ссылок на исходный код, на основании которого это подготовлено. Информация варьируется в зависимости от repo: 🍭 Общая информация (что это такое, зачем это нужно) 🍭 Основные компоненты 🍭 Детализация сведений об основных компонентах 🍭 Функции безопасности и не только В DeepWiki можно «отправить» любой public repo и получить о нем сведения. На текущий момент в нем уже есть информация о более чем 100 проектах, включая Kubernetes, Redis, Nginx, Linux и многие другие. Трудно сказать, насколько точной является информация. Однако, это еще один интересный пример использования нейронных сетей, в том числе для нужд ИБ. Ведь составление документации на ПО – задача достаточно сложная, особенно для проектов, которые находятся на стадии активной разработки. Если вам хочется больше деталей, то их можно найти в этой статье.

Cheat-Sheet Collection! DevOps и IT! Всем привет! По ссылке доступен repo, в котором можно найти еще одну awesome подборку один набор Cheat Sheets на все случаи жизни (ну почти). Например: 🍭 Nginx 🍭 Docker 🍭 Redis 🍭 Linux 🍭 VIM (куда без него) и не только! Зачастую для каждой отдельно взятой технологии приводится набор «азов» и базовых команд. Например, как собрать и запустить контейнер, положить его в реестр и как узнать информацию о том, из чего образ «состоит». Тем не менее информация может быть полезна при начале изучения технологий или в качестве небольшой шпаргалки на случай, если вы чем-то пользуетесь, но не часто и каждый раз надо вспоминать «тот самый флаг». А вы делаете для себя подобные подборки? Если да, то где их храните и как ими управляете?

Dynamic Dev (Sec) Ops Roadmap Всем привет! Сегодня хотим познакомить вас с open source проектом, в котором приведен roadmap того, что нужно знать для погружения в мир Dev (Sec) Ops. Материал разбит на части: 🍭 Foundations. Основы, ключевые термины, краткие объяснения 🍭 Projects. Реализация проекта с использованием определенных средств автоматизации 🍭 Interview. Советы о том, как их проходить, какие вопросы могут задавать 🍭 Growth. Дополнительная информация. Например, SRE, DevSecOps и т.д. Материал находится в стадии активного развития, поэтому не все разделы заполнены или насыщены информацией с «равномерной плотностью». Тем не менее, внутри можно найти много полезного – от простых объяснений до ссылок на полезные материалы и средства автоматизации процессов Dev (Sec) Ops.

Kube-recycle-bin: «корзина» для Kubernetes Всем привет! Небольшой пятничный пост, который может быть полезен тем, кто иногда удалял то, чего не стоило и хотел «быстро вернуть все как было». Да, есть специальные backup-решения, но, иногда, их использование можно описать фразой «пушкой по воробьям». Бывают случаи, когда требуется нечто попроще. В repo можно ознакомиться с проектов Kube-recycle-bin. Принцип ровно такой же, как у знакомой «Корзины». Мы что-то удаляем. Оно не удаляется навсегда и, при необходимости, это что-то можно восстановить. Работает это примерно так: 🍭 Создаем Recycling Policy, в которых описано что помещать в корзину и в каких namespaces 🍭 Создаем тестовые ресурсы 🍭 Удаляем их 🍭 Проверяем содержимое «корзины» 🍭 Восстанавливаем в случае необходимости Kube-recycle-bin поддерживает все ресурсы Kubernetes. Подробнее с проектом можно ознакомиться в репозитории. А с вашей точки зрения – полезная ли утилита или просто «развлечение на вечер пятницы»?

Методика ИБ-оценки web-приложений Всем привет! В repo можно найти объемный материал, в котором структурирована информация о том, как проводить анализ безопасности web-приложений. В материале представлены все ключевые области, на которые стоит обращать внимание, а также рекомендации о том, как и что лучше сделать. Информация структурирована по разделам: 🍭 Discovery 🍭 Configuration 🍭 Design 🍭 AuthN/Z 🍭 Input Handling 🍭 Cryptography Для каждого раздела описывается что надо делать и (не всегда) чем это можно (рекомендуется) проверять. Например, для AuthN Автор разбирает вопросы, связанные с Password Recovery, Account Management, MFA, управления сессиями. В итоге получилось отличное руководство, которое можно и нужно использовать при проведении аудитов web-приложений. Либо, если у вас уже есть опыт в подобных работах – найти что-то новое для себя и переиспользовать ☺️ Рекомендуем!

Open Source Security and Risk Analysis Report Всем привет! В приложении можно скачать отчет (~ 32 страницы) от Blackduck, посвященный вопросам обеспечения безопасности при работе с open source. В отчете можно найти много статистики. Например: 🍭 Количество ПО, при разработке которого используется open source 🍭 Насколько увеличился % использования open source при разработке ПО 🍭 Топ-10 наиболее «популярных» CWE (да-да, Improper Input Validation все еще на первом месте) 🍭 Использование open source компонентов, которые не обновляются и многое другое Цифры, пояснения, комментарии – все на месте, как и у любых аналогичных отчетов. В целом материал очень неплох для просмотра «по диагонали» и понимания общей картины происходящего в мире open source.