DevSecOps Talks
7.43K subscribers
85 photos
92 files
1.22K links
Рассказываем об актуальном в мире DevSecOps. Канал DevSecOps-команды "Инфосистемы Джет"
Download Telegram
Ну и не совсем связанный вопрос. Что используете для сборки контейнеров?
Anonymous Poll
70%
Docker
15%
Buildah
2%
BuildKit
2%
BuildPacks
0%
Img
15%
Kaniko
2%
PouchContainer
Всем привет!

Сегодня опять за инструмент. Бесплатная утилита kubectl-who-can от Aqua Security выводит перечень RBAC разрешений для "глаголов" Kubernetes, что бывает полезным, когда надо посмотреть перечень сущностей, которые могут выполнять конкретное действие. Удобно получать информацию о том, "кто" может "что" и с "чем" в масштабах кластера, чтобы не делать много ручной работы. Кроме того утилита позволяет подсветить потенциально опасные права для сущности (например, delete psp)

Пример использования:
kubectl-who-can create pods выведет список ClusterRoleBinding, Subject, Type и Namespace с перечнем сущностей, у которых есть разрешение на выполнение создание подов.

Установка:
Установить утилиту можно с использованием krew, вручную или из собрать из source-ов. По ссылке описана как процедура установки, так и примеры использования
Привет!

Исследователи из компании Prevasio проанализировали 4 000 000 образов контейнеров, размещенных на Docker Hub на предмет наличия уязвимостей. Результат показал, что 51% из них содержит уязвимости различных уровней критичности. Распределение Malicious / Potentially Harmful Container Images получилось следующим:

🍭 44% - Coinminers
🍭 23% - Flatmap Stream, Malicious npm package(Bitcoin wallet stealer)
🍭 20% - Hacking tools
🍭 6,6% - Other
🍭 6,4% - Windows Malware

Не думаем, что результаты станут/стали откровением для ИБ-специалистов, однако, отчет запросто можно использовать в качестве reference при подготовке обоснования необходимости защиты контейнеров, чтобы наглядно показать что может «пойти не так» на достаточно большой выборке данных.

P.S. Сам отчет можно посмотреть по ссылке: https://prevasio.com/static/web/viewer.html?file=/static/Red_Kangaroo.pdf
Привет!

В статье автор наглядно демонстрирует примеры использования Amazon CodeGuru. Согласно информации с официальной страницы "Amazon CodeGuru – is a developer tool that provides intelligent recommendations to improve your code quality and identify an application’s most expensive lines of code. CodeGuru Reviewer uses machine learning to identify critical issues, security vulnerabilities, and hard-to-find bugs during application development to improve code quality". Трудно сказать, сколько тут правды, а сколько – маркетинга, но в статье рассмотрены примеры:

🍭 AWS API security best practices //на примере идентификации hardcoded credentials
🍭 Java crypto library best practices //на примере идентификации недостаточно криптостойкого алгоритма
🍭 Secure web applications //на примере идентификации некорректной обработки cookie
🍭 AWS Security best practices //на примере идентификации небезопасного хранения данных

Более полное описание инструмента и его возможностей можно найти на официальном сайте
Привет!

Иногда слышишь фразу «Ну DevSecOps это же S-SDLC, да?». И тут уже можно развести не один holy war, но мы не будем этого делать ☺️ Наткнулись на интересные статьи (один, два), в которых наглядно показаны ключевые термины, используемые при разработке:

🍭 ALM, Application Lifecycle Management
🍭 ADLM, Application Development Lifecycle Management
🍭 SDLC, Software Development Lifecycle
🍭 EAP/EAPT, Enterprise Agile Planning / Tool
🍭 DevOps, Development and Operations

В статьях представлена общая таксономия терминов, их взаимосвязь, описано что является чем, зачем используется и чем не является. Наглядно, с удобными схемами! Надеемся, что этот материал позволит структурировать картинку и ответит на вопрос «Ну DevSecOps это же S-SDLC, да?» ☺️
Всем привет! Ранее мы уже упоминали Falco в одном из своих постов. Сегодня расскажем немного подробнее.

Falco (а точнее Falco Project) – это open source инструмент, который реализует мониторинг поведенческой активности, позволяя выявлять аномальные действия в приложениях. Он выполняет контроль событий на уровне ядра операционной системы и собирает данные о контейнерах, приложениях, хосте и сетевой активности.

Что именно делает Falco?
Инструмент использует системные вызовы для реализации защиты и мониторинга системы:
🍡Разбор используемых системных вызовов Linux на уровне ядра
🍡Проверка потока данных на соответствие заданным правилам
🍡Оповещение в случае срабатывания правила

Что Falco проверяет?
Инструмент использует набор правил по умолчанию для выявления нестандартного поведения, например:
🍡Эскалация привилегий
🍡Изменение namespace с использованием утилиты setns
🍡Чтение/запись в известные директории (например, /etc, /usr/bin и пр)
🍡Выявление сетевых аномалий
🍡Запуск различных shells (sh, bash, csh и пр)
🍡Запуск ssh (ssh, scp и пр)
🍡И пр.

Что такое правила Falco?
Правила – это набор элементов, которые можно проверить на уровне системы. Они задаются в конфигурационном файле, который представляет собой YAML-файл, содержащий 3 типа элементов:
🍡Правила (Rules) – условия, в соответствии с которыми генерируется событие ИБ
🍡Макросы (Macros) – шаблоны условий правил, которые могут повторно использоваться в правилах или других макросах
🍡Lists (Списки) – наборы данных, которые могут быть включены в правила, макросы или другие списки

Пример правила:
- rule: program_accesses_file
desc: track whenever a set of programs opens a file
condition: proc.name in (cat, ls) and evt.type=open
output: a tracked program opened a file (user=%user.name command=%proc.cmdline file=%fd.name)
priority: INFO

Куда отправляются события ИБ от Falco?
Инструмент генерирует набор событий ИБ, которые могут быть направлены в разные источники, такие как:
🍡STDOUT
🍡Файл
🍡Syslog
🍡Сторонняя программа
🍡HTTP/S end point
🍡Клиент, работающий через gRPC API

Информация задается на уровне конфигурационного YAML-файла.

Пример вывода события (stdout):
10:20:05.408091526: Warning Sensitive file opened for reading by non-trusted program (user=root command=cat /etc/shadow file=/etc/shadow)

Дополнительную информацию можно найти в документации и здесь.
Привет!

В видео показывают и рассказывают про Snyk Infrastructure as Code – решение, которое позволяет проанализировать Terraform Modules, Kubernetes YAML и Helm Charts на предмет наличия ИБ-недостатков. Если вы не хотите слушать общую часть, то timecode на обзор – 10:15, последующую демонстрацию – 14:59, использование CLI - 22:41.

Принцип работы достаточно простой – необходимо реализовать интеграцию с GitLab/GitHub/BitBucket/Иное для получения доступа к файлам конфигураций, а после – запустить проверку. Альтернативный вариант – использование Snyk CLI для реализации проверок.

Ссылка на Snyk IaC: https://snyk.io/product/infrastructure-as-code-security/
Ссылка на документацию Snyk IaC: https://support.snyk.io/hc/en-us/categories/360001342678-Infrastructure-as-code
Привет!

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

🍭 Truffelhog
🍭 Kubectl-who-can
🍭 Nikto
🍭 nmap

Полную информацию о содержимом можно посмотреть тут. Ссылка на сам проект.
Привет, сегодня вторая часть нашей статьи про OpenShift Egress. В ней мы рассмотрели ситуации, когда нужно предоставить доступ трафику из PODов в другие VLAN'ы, а также описали, какие решения позволяют это реализовать, и как их правильно настроить! (Подсказка - Multus CNI).
Приятного чтения!
https://habr.com/ru/company/jetinfosystems/blog/533294/"
Tracee – это простой инструмент мониторинга процессов и контейнеров от Aqua Security. Он может отслеживать события процессов и контейнеров в реальном времени.

Главные особенности:
🥨 Поддержка eBPF.
🥨 Возможность мониторинга только новых процессов и/или контейнеров (т.е. созданных после запуска Tracee). Это помогает сосредоточиться только на актуальных событиях.
🥨 Очень простая фильтрация мониторинга. Настройка фильтра требует всего нескольких строк кода.

Помимо мониторинга, Tracee способен:
🥨 Захватывать файлы, которые записываются на диск или в память, и копировать их в хранилище.
🥨 Извлекать данные, которые динамически загружаются в память (например, когда приложение использует упаковщик).

Демонстрация работы Tracee доступна по ссылке: https://youtu.be/WTqE2ae257o
Гитхаб проекта: https://github.com/aquasecurity/tracee
Привет!

Наткнулись на отличную подборку материалов (форматов books, slides, video), в которую автор поместил материалы, собранные с большого количества конференций. Примеры материалов:

🍭 Container Security for RED and BLUE Teams! (slides, All Day DevOps)
🍭 Attacking and Auditing Docker Containers and Kubernetes Clusters (book,Def Con)
🍭 Container Security Monitoring using Open Source (video, All Day DevOps, 2018)

Подборка хорошо оформлена, простая и понятная навигация, интересное содержание. Надеемся, что вам пригодится!
Всем привет !

Компания RedHat подготовила отличный новогодний подарок сообществу DevSecOps - платформа контейнерной орrестрации OpenShift теперь поддерживает контейнеры Windows. C 12/18/2020 реализация Windows Containers в OpenShift 4.6 перешла стадию GA (Generally Available) и может быть использована в продуктивных решенияx.

Поддержка Windows Containers в OpenShift позволяет запускать Windows-приложения (например на базе .NET) в OpenShift без трудоемкой миграции подобных приложений на платформу Linux/.Net Core.

Для конфигурации и работы с узлами кластера на базе ОС Windows. RedHat разработала новый оператор - Windows Machine Config Operator. Именно этот оператор позволяет добавить Windows сервер в кластер OpenShift.

Пока что у Windows Containers на OpenShift есть ряд ограничений:
🍭Windows Containers поддерживаются только на платформе Windows Azure или AWS
🍭В качестве ОС может использоваться только Windows Server 2019

Но в ближайшем будущем RedHat обещает поддержку Windows Containers на on-permise платформах (WMware vSphere, RHV, RH OpenStack, Bare Metal).

Более подробно об этом в статье на OpenShift Blog: https://www.openshift.com/blog/announcing-general-availability-for-windows-container-workloads-in-openshift-4.6
Всем привет!

Недавно Aqua Security Research Team опубликовала отчет в своем блоге о новом типе атак на контейнеры - fileless malware attack. Опасность такого рода атаки в том что ее крайне трудно отследить и заблокировать выполнение, так как все неприятности происходят в оперативной памяти контейнера.
В случае fileless malware при запуске контейнера из образа запускается скрипт, распаковывающий несколько зашифрованных вредоносных файлов и подготавливающий среду для выполнения атаки.

Как устроена атака?

🍩 Скрипт распаковывает и загружает в память malware
🍩 Запускается rootkit для маскировки системных процессов
🍩 Один из маскированных процессов запускает дочерний процесс криптомайнинга
🍩 И еще один из процессов собирает и выгружает данные на удаленный сервер, организовывая backdoor

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

Рекомендации специалистов, как не стать жертвой такой атаки не новы, но тем не менее способны усложнить жизнь атакующим:

🍩 Сканируйте все используемые образы, убедитесь что вы знакомы с ними и с их использованием, используйте минимальные привилегии, такие как "не работать под root и в привелегированных режимах"
🍩 Анализируйте активность в контейнерах, например при помощи Tracee (open source)
🍩 Анализируйте логи, особенно в части пользовательские действий и обращайте внимание на аномалии

Подробнее с техническим "мясцом" - в блоге Aqua:
https://blog.aquasec.com/fileless-malware-container-security
Всем привет!

21.12 вышел новый релиз Prisma Cloud Compute Edition – версия 20.12 (эх, жаль ребята не выпустили его на день раньше, получилось бы очень символично). Из наиболее интересных изменений:

🍭 В качестве объектов применения политик теперь можно выбирать коллекции
🍭 Cloud Native Network Firewall (CNNF) – он вернулся!!!
Теперь сетевые правила необходимо задавать в ручную. Автоматическое обучение более не применяется для enforcing’a правил контроля сетевого взаимодействия
🍭 Добавлены compliance-проверки для CRI-O
🍭 Добавлена поддержка Admission Control для Red Hat OpenShift 4
🍭 Расширены возможности
Web Application and API Security (WAAS)

Подробности можно найти по ссылке: https://docs.paloaltonetworks.com/prisma/prisma-cloud/20-12/prisma-cloud-compute-edition-release-notes/release-information/release-notes-20-12.html
QUAD DAMAGE! ⚔️⚔️⚔️⚔️

Возможно, в вашем сердце что-то «встрепенулось» и вы даже вспомнили этот голос ) До Нового Года совсем немного времени и, надеемся, что вы уже можете немного расслабиться! Как это можно сделать? Например, сыграть в Quake 3 на Raspberry PI и Kubernetes! Не верите? Тогда вот вам отличный how to, переведенный ребятами из Флант: https://habr.com/ru/company/flant/blog/532452/

Очень согласны с примечанием переводчика: «Казалось бы, еще недавно сочетание из заголовка казалось невозможным безумием». Все же, не смотря на COVID и иные трудности, мы живем в потрясающее время! ☺️
Всем привет !

Любой администратор Kubernetes рано или поздно сталкивается с ситуацией, когда удаляемый ресурс не исчезает, а продолжает существовать в состоянии "Terminating".
В отличной статье на OpenShift Blog объясняется:

🍭 почему возникает подобная ситуация
🍭 почему не стоит "махать шашкой"
🍭 что правильно делать в таких ситуациях

https://www.openshift.com/blog/the-hidden-dangers-of-terminating-namespaces
Друзья, с наступающим!
2020 для нас особый год, в том числе потому, что это год рождения нашего канала👶 Именно в 2020 мы решили, что хватит делиться крутыми новостями только внутри и расшарили его на всех вас 🤗
Сейчас нас уже больше 500, и в новом году у нас большие планы: собрать community лучших спецов по DevSecOps в России в одном месте, где мы сможем делиться новостями и обсуждать возникающие проблемы 😎
Stay tuned и волшебного вам Нового Года! 🍾
Всем привет!

CNCF подвел итоги 2020 года и подготовил сводный отчет о развитии community, его составе и о событиях, которые произошли за год. Наиболее полезными разделами на наш взгляд стали:

🍭 End user technology radar (стр. 9) - чем-то напоминает Gartner Hype Cycle: что "можно брать, протестировано", а что - "смотрим, наблюдаем"
🍭 Информация о доступных тренингах и сертификациях (стр. 14), включая информацию об анонсированном в ноябре 2020 года Certified Kubernetes Security Specialist
🍭 Сведения о проектах, которые были «приняты» в 2020 году (стр. 16) в количестве 35 штук
🍭 Сведения о проектах, которые были «обновлены» в 2020 году (стр. 17)
🍭 Ссылки на наиболее популярные посты в блоге CNCF (стр. 19)

Ознакомиться с материалами можно по ссылке: https://www.cncf.io/cncf-annual-report-2020/
Привет!

StackRox подготовили обзор под названием «Protecting Kubernetes: The Kubernetes Attack Matrix and How to Mitigate Its Threats». В качестве основы ребята взяли адаптацию фреймворка MITRE ATT&CK от Microsoft. Для каждой из 40 техник доступно описание возможных способов противодействия, собраны лучшие практики. Обзор получился общим, т.к. нет единого решения, которое подойдет всем, но все же может быть использован для понимания того, как выстроить защиту кластера.

Отчет примечателен тем, что рекомендации по противодействию авторы разделили на 3 группы:
🍭 Использование штатных механизмов безопасности Kubernetes
🍭 Использование сервисов Cloud Platform Provider’a
🍭 Использование сторонних решений

Для некоторых тактик приведены ссылки на «Real-world Example». Не обошлось, конечно же, без небольшой рекламы – «Где StackRox может помочь?». Но, spoiler (!), согласно тому же обзору 20 из 40 рассмотренных тактик можно противостоять с использованием собственных ИБ-возможностей Kubernetes.

P.S. Для скачивания обзора необходимо указать email, можно взять любой, мы проверяли. Preview не отображается, поэтому дублируем ссылку еще раз: https://security.stackrox.com/protecting-against-K8s-threats-white-paper.html?Source=Social&LSource=Social
Привет!

По ссылке доступна утилита KubeLinter, которая позволяет проверять Kubernetes YAML и Helm Charts. Проверки направлены на оценку production readiness и security.
Возможна гибкая настройка – некоторые проверки можно отключать по желанию, также можно добавлять собственные.

В качестве примера, доступного по ссылке, приведена идентификация следующих недостатков:
🍭 "Security": Pod is not running as a read only file system
🍭 "Production readiness": CPU and memory limits are not set

В случае, если какая-либо проверка не была пройдена, KubeLinter предлагает рекомендации по устранению недостатка, приводятся ссылки на документацию (там, где применимо).

Документация на утилиту (хоть и небольшая) доступна по ссылке: https://github.com/stackrox/kube-linter/tree/main/docs
Всем привет!

24 января пройдет вебинар, посвященный Software Composition Analysis, SCA под руководством Maya Kaczorowski (Product Manager at GitHub in software supply chain security). На семинаре обещают рассказать про то, как:

🍭 Определить используемые зависимости (dependencies)
🍭 Как сделать так, чтобы они были up-to-date
🍭 Как узнавать о том, что появились обновления по ИБ, которые необходимо установить
🍭 Как работать с потенциальными сложностями

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

P.S. Вебинар будет проходить с 13 до 14 GMT-5 (21-22:00 по Московскому времени)