DevSecOps Talks
7.41K subscribers
85 photos
91 files
1.21K links
Рассказываем об актуальном в мире DevSecOps. Канал DevSecOps-команды "Инфосистемы Джет"
Download Telegram
malcontent: инструмент для обнаружения supply-chain атак

Всем привет!

Изменения в бинарях важно заметить вовремя, особенно если речь идёт о скрытом или едва заметном поведении программы (subtle behavior). В таких случаях полезен malcontent от Chainguard — инструмент для выявления supply-chain компрометаций через контекстный анализ и сравнение артефактов.

🎯 Malcontent поддерживает три режима работы:
- diff — анализ изменений между двумя версиями: добавленные права или поведение будущих версий
- analyze — глубокий анализ возможностей и capabilities бинаря
- scan — поиск malware в директориях и в процессах
🎯 Использует YARA-правила: огромный набор — более 14,5к open-source правил, включая правила от Avast, Elastic, FireEye, Mandiant, ReversingLabs и других.
🎯 Широкая поддержка: работает с бинарями в форматах ELF, Mach-O, PE и платформами Linux, macOS, Windows, а также с языками (C, Go, Javascript, PHP, Perl, Ruby, Shell, Typescript), архивами (apk, tar, zip) и контейнерными образами. Отлично подходит для CI/CD.
🎯 Позволяет формировать отчёты в JSON, YAML и Markdown.

Важно:
Инструмент «параноидальный», многие находки могут быть ложноположительными — будьте к этому готовы.

Уже ставили что-то подобное в CI/CD? Делитесь опытом!
🔥91👍1👏1
Headlamp AI Assistant

Всем привет!

Headlamp – интерактивный Web UI для Kubernetes, о нем мы писали тут. Недавно команда добавила возможность использования собственного AI-ассистента.

Ассистент может помочь решить разные задачи:
🍭 Подготовить манифест для ресурса, который можно применить впоследствии без лишних действий
🍭 Дать «сводную информацию» о состоянии приложения
🍭 Помочь в идентификации причин возникающих проблем
🍭 Подготовить рекомендации о том, как устранить существующие ошибки
🍭 Выполнить действие (например, перезапустить deployment) и не только

Устанавливается он в качестве plugin и практически сразу готов к работе.

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

Всем привет!

Falco – очень известное решение в мире защиты сред контейнерной оркестрации. С его помощью можно анализировать события, происходящее в кластере с целью выявления инцидентов ИБ.

Недавно команда объявила о выпуске нового продукта – Falco Vanguard, который расширяет функционал Falco и упрощает процесс работы с ним.

Если кратко, то Falco Vanguard позволяет:
🍭 Обогатить результаты работы Falco с использованием AI. Помимо использования OpenAI и Gemini есть возможность использования локальной LLM (Ollama), чтобы исключить передачу данных во "внешние системы"
🍭 Получать информацию об уровне защищенности на готовых дашбордах
🍭 Генерировать рекомендации для сработавших правил Falco
🍭 Повысить точность работы Falco по идентификации угроз и не только

В статье приводится описание архитектуры, способов установки и первичной настройки Falco Vanguard.

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

Важно(!): проект находится в стадии активной разработки. Некоторый функционал может не работать или работать не так, как ожидалось. И да, возможны breaking change без уведомлений
👍32
Лучшие практики по защите Kubernetes

Всем привет!

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

Например:
🍭 Using Non-Root Containers
🍭 Do not use hostPath Volumes
🍭 Do not share the Host Namespace
🍭 Do not use Insecure Capabilities
🍭 Do not set Custom SELinux Options и другие

Для каждой рекомендации ёмко и кратко поясняется «почему это так», приводятся примеры и рекомендации о том, как и что лучше реализовать.
6👍3
DeepPass2: выявление секретов с использованием
LLM


Всем привет!

На предыдущей неделе мы писали про опыт Wiz в использовании LLM для поиска секретов с целью повышения качества анализа и сокращения false positive.

На этой неделе хотим поделиться статьей, в которой решается аналогичная задача и рассказывается про DeepPass2 (увы, не open source).

Команде нужен был инструмент, который из «стены текста» сможет найти пароли. Да, «P@SSW0RD» найти легко. А вот «Бабочка»? Это пароль или нет? Зависит от контекста.

«Большие LLM» не использовались. Проблематика схожа с тем, к чему пришли Wiz: это дорого, качество не всегда устраивает (в том числе и из-за галлюцинаций), вопросы с конфиденциальностью.

По этой причине команда решила использовать собственный подход.

Он заключается в том, что:
🍭 Используются небольшие модели
🍭 Добавляются RegEx. Команда взяла их у NoseyParker (о нем мы писали тут)
🍭 В качестве «данных для тренировки» использовались dump’ы с паролями; тексты генерируемые LLM
🍭 Дополнительно команда сделала «skeleton sentences» и подставляла в них разные данные, чтобы обучить модель пониманию контекста. Например: «Your account has been created with username: {user} and password: {pass}»

Что в итоге и какие планы на будущее? Ответы на эти вопросы и не только можно найти в статье.

Получились две идеологически очень похожие статьи (как с точки зрения подхода, так и с точки зрения достигнутых результатов). Быть может, повышение точности обнаружения секретов и сокращение количества false-positive – это то, где нейронные сети уже хорошо себя показывают?
Автоматическое масштабирование с помощью KEDA с использованием пользовательских метрик RED

Всем привет! 👋

Статья рассказывает, как настроить автоскейлинг в Kubernetes с помощью Kubernetes Event-driven Autoscaling (KEDA) и Rate, Errors, Duration (RED) метрик из Prometheus.

Автор начинает с задачи: старые сервисы перегружались в часы пик, но простаивали в остальное время. Отмечается, что традиционные метрики CPU/памяти не всегда отражают реальную нагрузку на приложение, поэтому для масштабирования был выбран подход, ориентированный на пользовательский опыт.

Ключевые шаги:
🎯 Архитектура решения: K8s + KEDA + Prometheus. Рассматривается сравнение KEDA с другими средствами (HPA, Cluster Autoscaler, Knative, самописные решения). KEDA поддерживает множество источников метрик (включая Prometheus и пользовательские), умеет масштабироваться «до нуля» и гибко настраивается через ScaledObject.
🎯 Тестирование нагрузки (Locust, JMeter) для имитации пиковых нагрузок, настройка мониторинга через Grafana.
🎯 Основные проблемы и их решения: оптимизация PromQL-запросов (подбор метрик, окон агрегации, упрощение запросов). Также нужно было сбалансировать быстродействие и устойчивость: регулировать pollingInterval и cooldownPeriod, а при уменьшении нагрузки — устанавливать разные пороги для масштабирования вверх и вниз. Кроме того, при масштабировании стали заметны узкие места внешних систем (например, БД). Для этого внедрили пул соединений, реплики для чтения базы данных и кэширование, чтобы помочь интеграционным компонентам выдерживать увеличенную нагрузку.
🎯 Результаты: улучшение отклика сервисов, оптимизированы расходы на облако, более надёжная архитектура и аналитика.

И самое полезное — в статье есть конкретные примеры манифестов и команд, которые можно повторить у себя! 🚀
🔥8👍53🥰1
GitHub Actions: Hardening

Всем привет!

Еще один материал от Wiz! На этот раз команда делится опытом о том, как можно сделать GitHub Actions более безопасным и на что стоит обращать внимание.

В статье рассматривается:
🍭 Configuring GitHub Actions for Safer GitHub Actions. Управление полномочиями, контроль Actions, управление runners
🍭 Safely Writing GitHub Workflows. Управление полномочиями, «внешними» Actions, контроль использования секретов
🍭 Safely Running GitHub Workflows. Управление runner и корректная настройка инфраструктуры

В результате получилось очень наглядное и понятное руководство о том, как и что можно настроить в GitHub Actions для повышения уровня защищенности.
5
SASTDemons.pdf
31.2 MB
Изгоняя демонов SAST

Всем привет!

Такое название отчету (который можно найти в приложении) дала Ghost Security. Он посвящен результатам исследования возможности использования LLM для оптимизации времени разметки результатов, генерируемых SAST.

В рамках исследования Команда:
🍭 Просканировала порядка 3000 репозиториев open source проектов
🍭 Проанализировала более 2000 сработок
🍭 Потратила 350 часов (~ 2 месяца) для того, чтобы найти 180 истинных срабатываний

Итог простой и очевидный – нужно «что-то», что поможет как-то оптимизировать процесс. И этим «чем-то», конечно, стала LLM.

В отчете достаточно детально описана методика тестирования (что анализировали, что искали, какие инструменты использовали).

Правда не хватает описания используемых LLM и соответствующих prompt’ов.

Единственное, что указано: чтобы сработка считалась истинной необходимо выполнение 3х условий. Код достижим, возможна эксплуатация через external input, ИБ-контроли отсутствуют.

Был ли у вас опыт использования LLM для разметки результатов SAST и если да, то какой?
👍6
Rules Files Backdoor

Всем привет!

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

Выглядит это следующим образом:
🍭 Злоумышленник создает собственный Rule File
«Делится» им с сообществом
🍭 Разработчики используют этот Rule File (который кажется весьма безобидным)
🍭 «Что-то» начинает добавляться в генерируемый код (зависит от того, что было в Rule File)

Для того, чтобы создаваемые Rule File выглядели безобидными в них добавляют обычное описание (например, «follow HTML5 best practices»). Однако, рядом, используя разные манипуляции, помещают «дополнительные инструкции», которые могут быть не видны.

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

Подробности (примеры, описание, анализ поверхности атаки, способы противодействия) можно найти в статье от Pillar Security.
ArgoCD: анти-паттерны

Всем привет!

В статье (~ 40 минут чтения) собраны 30 анти-паттернов, характерных для использования GitOps подхода (на примере ArgoCD).

Например:
🍭 Using ArgoCD parameter overrides
🍭 Grouping applications at the wrong abstraction layer
🍭 Writing applications instead of Application Sets
🍭 Using Helm to package Application CRDS
🍭 Abusing ArgoCD as a full SDLC platform и не только

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

Много комментариев, примеров конфигураций, пояснений на примере ArgoCD.

А вы согласны с таким набором и сталкивались ли вы с анти-паттернами использования GitOps? И если да, то с какими? Пишите в комментариях!
👍42👎2🔥2🤔1
🔵🔵🔵🔵🔵🔵🔵🔵
Всё ИТ-сообщество там будет, а вы?


10–11 сентября в Москве состоится третья ежегодная конференция IT Elements — событие для обмена опытом в области инфраструктуры, сетей, кибербезопасности, работы с данными и ИИ.

В программе:

🔹 Инфраструктура: антихрупкость архитектуры, гибридные облака, Kubernetes.
🔹 Сети: будущее ЦОДов, VXLAN, балансировка, UC.
🔹 Кибербезопасность: киберустойчивость, NGFW, безопасная разработка.
🔹 Данные и ИИ: Big Data, корпоративные GPT, LakeHouse.
🔹DevSecOps: процессы, инструменты и новые подходы (это самая интересная часть для вас, дорогие подписчики: будут классные доклады и круглый стол)

IT Elements — площадка для тех, кто реально делает ИТ в России:

🎙 6 тематических залов
🎙 100+ спикеров и десятки дискуссий
🎙 кейсы от известных спикеров
🎙 лаборатории, воркшопы, реальный хардкор
🎙 30+ вендорских демозон

Программа и регистрация доступны на сайте конференции.

Участие бесплатное.
Please open Telegram to view this post
VIEW IN TELEGRAM
25❤‍🔥5🔥3🥰21🤡1🐳1👻1🗿1
OpenSSF SBOM Catalog

Всем привет!

Небольшой пятничный пост ☺️ Хотите работать со SBOM, но не знаете какой инструмент выбрать? Или просто интересно «а что есть еще?»

Тогда OpenSSF SBOM Catalog может вам помочь.

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

Например:
🍭 Поддерживаемые стандарты (CycloneDX, SPDX)
🍭 Лицензия (open-source, проприетарное)
🍭 Возможности (создание, проверка, подпись, конвертация)
🍭 Поддерживаемые технологии и не только

Работает просто: выбираете нужные вам параметры и смотрите на получившийся «набор». При необходимости можно переключать отображения: «пузырьки», mind map, таблица.

А если нужен GitHub-репозиторий, то его можно найти по ссылке.
👍4🔥2
Multipart Parsers: примеры обхода

Всем привет!

Парсеры multipart/form-data не всегда работают корректно и есть разные способы для того, чтобы их обойти.

В статье (~ 27 минут) разбираются некоторые примеры того, как именно это можно сделать.

Начинается статья с того, что Автор описывает стандартные способы проверки (расширение файла, magic bytes, content-type и т.д.) и что такое multipart\form-data.

Дальше – сами техники обхода:
🍭 duplicated name parameter
🍭 breaking the CRLF seuqences
🍭 removing double quotes
🍭 missing closing boundary string
🍭 filename*=utf-8'' in request

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

Проверка передаваемых параметров – задача крайне важная и статья может помочь в том, чтобы понять на что обращать внимание и как сделать этот процесс более безопасным.
2
Использование AI для анализа CVE

Всем привет!

В статье описан опыт NVidia по анализу CVE в контейнеризованных приложениях с использованием AI.

Проблематика известная и понятна: «традиционный подход» -
проанализировать и использовать обновление – на больших масштабах работает не очень хорошо.

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

Если рассматривать процесс управления уязвимостями, как последовательность шагов «Scan», «Investigate», «Decide», «Mitigate» и «Publish», то перед NVidia стояла задача сокращения этапа «Investigate».

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

Если кратко, то используется следующий алгоритм:
🍭 Генерируется список действий (проверить наличие уязвимости, наличие JRE и т.д.)
🍭 Каждый элемент списка действий анализируется LLM. При этом используются внешние источники: SBOM-файлы, информация о репозиториях, данные от TI и т.д.
🍭 Завершается все анализом полученных результатов, формирование мнения относительно возможности эксплуатации CVE (в том числе в формате VEX)

Примеры того, как это выглядит можно найти в статье. Кроме того, есть краткое описание процесса по управлению уязвимостями, реализованном в NVidia: от момента помещения нового контейнера в реестр до формирования VEX-файлов.
👍31
Плагины и утилиты для Helm

Всем привет!

Helm’a при всем его (не) удобстве не всегда бывает достаточно. Иногда хочется как-то расширить его функционал.

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

Например:
🍭 helm-diff – анализ изменений до их применения
🍭 helm-docs – автоматическая генерация документации для чартов
🍭 trivy – анализ чартов на наличие уязвимостей
🍭 helm-mapkubeapis – анализ устаревших (deprecated) версий API и не только

Для каждого плагина/утилиты Автор кратко описывает назначение, преимущества от использования и ссылки на GitHub Repo.

А чтобы вы добавили/удалили из этого перечня?
👎21
Основы Taint Analysis

Всем привет!

SAST это не только «поиск по шаблонам», многие решения включают в себя более сложные механизмы поиска ИБ-дефектов, включая Taint Analysis.

Если упростить, то это нечто вроде анализа «пути жизни данных» - от их передачи в ПО до использования в различных методах.

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

Статья содержит разделы:
🍭 Основные концепты: sources, sinks, sanitizers
🍭 Принципы работы Taint Analysis
🍭 Примеры паттернов для уязвимостей (SQLi, XSS, Command Injection, Path Traversal)
🍭 Как писать правила для Taint Analysis

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

P.S. Помимо описания Taint Analysis на сайте представлен аналогичный материал для Control и Data Flow Analysis.
👍9
Alfa CTF: Surfing Edition! 🏄‍♂️

Всем привет!

Alfa CTF – мероприятие от Альфа Банка, в котором можно попробовать новое, испытать себя и прокачаться в кибербезопасности!

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

Вас ждут:
🍭 Web. Получить доступ к базе сайта, купить товар без денег, скачать файл (доступный только администратору)
🍭 Reversing. Понять алгоритм программы без исходников, обойти проверки в приложении, разобраться в протоколе между приложением и бэкэндом
🍭 Pwn. Переполнение буфера, ошибки при работе с кучей, стеком, перетирание указателей в памяти

Регистрация открыта до 13-ого сентября!

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

P.S. Задания будут разной сложности, опыт в CTF не обязателен, главное – желание!
🔥8👍5🥰5🤩21
Netflix и Dependency Confusion

Всем привет!

Зачем смотреть Netflix, когда можно его «сломать»? Примерно такие мысли были у Автора статьи, когда он решил проверить: получится ли использовать атаку Dependency Confusion против IT-гиганта?

Dependency confusion это по сути подмена: вместо «целевой» библиотеки (например, npm илт PyPi) пользователь получает ту, что собрал злоумышленник.

Однако, какую именно библиотеку надо «подменять»? Это можно посмотреть в манифесте (который неоткуда взять) или воспользоваться «доступными средствами». Именно второй путь и выбрал Автор.

Он реализовал следующий алгоритм:
🍭 Запись HAR-файла, в котором были все запросы и ответы веб-сессии
🍭 Анализ полученных данных
🍭 Идентификация скачанных файлов
🍭 Проверка того, что скачанные библиотеки (не) доступны в публичных реестрах, что есть более новые версии и т.д.

Спустя некоторое время Автору повезло и он нашел nf-cl-logger.

«Вряд ли Netflix ходит во вне за пакетами». «А вдруг есть ошибки в настройках ноутбука разработчика или инженера?». Интерес взял верх ☺️

Payload использовался крайне простой – получение обычной информации о рабочей станции. Просто проверка гипотезы. И она была подтверждена. Притом достаточно быстро!

Ну а подробности, как обычно, в статье. Приятного чтения! ☺️
2005❤‍🔥4👍1🔥1
Поиск ИБ-дефектов в исходном коде с использованием LLM

Всем привет!

Команда Semgrep провела небольшое исследование. Они использовали Claude Code и OpenAI Codex для поиска ИБ-дефектов в исходных кодах 11 популярных Python-приложений.

Суммарно было найдено более 400 ИБ-дефектов, которые команда проверила.

Получилось следующее:
🍭 Claude нашел 46 ИБ-дефектов (14% - TPR, 86% - FPR)
🍭 Codex – 21 ИБ-дефект (18% TPR, 82% FPR)
🍭 Лучше всего получалось находить IDOR (Claude) и Path Traversal (Codex)
🍭 Самой большой сложностью был taint-анализ среди нескольких файлов
🍭 И да, нюансы с идемпотентностью никуда не делись. Разные запуски могли давать разные результаты

Детали исследования можно найти в статье (а там много всего интересного).

Из приятного – у Semgrep есть мысли о том, чтобы отдать полученный dataset в «общественное использование» ☺️
👍4🔥32
KubeGuard: Kubernetes Security Scanner

Всем привет!

Еще-один-open-source-сканер, позволяющий выявлять нарушения в конфигурации ресурсов кластера Kubernetes – KubeGuard.

Он позволяет:
🍭 Производить статический анализ манифестов на наличие ИБ-дефектов
🍭 Сканировать созданные в кластере ресурсы на наличие ИБ-дефектов
🍭 Генерировать отчеты (в формате JSON)
🍭 Автоматизировать работу с использованием REST API

«Из коробки» доступно более 25 правил, включающих, в том числе, проверки на соответствие CIS Benchmark.

Аналитическую информацию можно посмотреть в Grafana. Например, информацию о сканированиях, ИБ-дефектах, потреблении ресурсов KubeGuard’om.

Подробности об установке и настройке можно найти в GitHub-репозитории проекта.

Важно: проект еще очень молодой и не успевший набрать "звезд" от сообщества (первый коммит месяц назад)
🔥73