Kubernetes Operator: Step by Step Guide
Всем привет!
В статье приведена детальная пошаговая инструкция о том, как создать собственный Kubernetes Operator с использованием Operator SDK. Задача создаваемого оператора простая – он будет хранить информацию о
Статья начинается с краткого описания того, что такое Operator и зачем он нужен, что он делает и из каких «компонентов» состоит.
Дальше – интересней:
🍭 Перечень необходимых «зависимостей» (начиная от Golang и заканчивая «подопытным» кластером k8s)
🍭 Инициализация проекта с Operator SDK
Создание Custom Controller
🍭 Написание логики ключевого процесса Operator’a – реконсиляции
🍭 Сборка созданного Operator и его тестирование
Статья и правда step by step. Каждый шаг описывается Автором, приводится листинг (частичный) кода, который может быть полезен при самостоятельном воспроизведении материала. А для наглядности есть схема, в которой описан процесс работы Operator’a.
Всем привет!
В статье приведена детальная пошаговая инструкция о том, как создать собственный Kubernetes Operator с использованием Operator SDK. Задача создаваемого оператора простая – он будет хранить информацию о
pod, которые не пересоздавались/обновлялись в течение заданного времени.Статья начинается с краткого описания того, что такое Operator и зачем он нужен, что он делает и из каких «компонентов» состоит.
Дальше – интересней:
🍭 Перечень необходимых «зависимостей» (начиная от Golang и заканчивая «подопытным» кластером k8s)
🍭 Инициализация проекта с Operator SDK
Создание Custom Controller
🍭 Написание логики ключевого процесса Operator’a – реконсиляции
🍭 Сборка созданного Operator и его тестирование
Статья и правда step by step. Каждый шаг описывается Автором, приводится листинг (частичный) кода, который может быть полезен при самостоятельном воспроизведении материала. А для наглядности есть схема, в которой описан процесс работы Operator’a.
Medium
Effortlessly Develop and Deploy Kubernetes Custom Resources with Operator SDK: A Step-by-Step Guide
Introduction
🔥4
Repo Jacking
Всем привет!
В статье описывается принципы работы одной из software supply chain attack – Repo Jacking. Эта атака может привести к значительным последствиям.
При этом реализуется она относительно просто:
🍭 Допустим, что в коде есть зависимость на
🍭 Но! Освободившийся username можно зарегистрировать «еще раз» и создать такой же «project», но уже с нужным вам содержанием.
В этом случае зависимость, указанная в коде, будет ссылаться не на исходный проект, а на созданный потенциальным злоумышленником.
Помимо описания самой атаки в статье можно найти информацию об условиях, когда она может быть реализована, а также результаты анализа GitHub Repo, потенциально уязвимых к Repo Jacking.
Кстати, подход к идентификации уязвимых Repo доступно описан в статье и весьма интересен -от сбора данных, до поиска unregistered user names!
Что делать и как быть? Все это можно найти внутри 😊(не использовать прямые ссылки, делать version pinning и использовать lock files, скачивать зависимости и использовать их локально (vendoring)).
P.S. Сама статья от 2020 года. Если интересно что изменилось с тех пор – можно обратиться к этому материалу от 2023.
Всем привет!
В статье описывается принципы работы одной из software supply chain attack – Repo Jacking. Эта атака может привести к значительным последствиям.
При этом реализуется она относительно просто:
🍭 Допустим, что в коде есть зависимость на
https://github.com/username/project
🍭 Представим, что username был изменен владельцем. Пока что все нормально🍭 Но! Освободившийся username можно зарегистрировать «еще раз» и создать такой же «project», но уже с нужным вам содержанием.
В этом случае зависимость, указанная в коде, будет ссылаться не на исходный проект, а на созданный потенциальным злоумышленником.
Помимо описания самой атаки в статье можно найти информацию об условиях, когда она может быть реализована, а также результаты анализа GitHub Repo, потенциально уязвимых к Repo Jacking.
Кстати, подход к идентификации уязвимых Repo доступно описан в статье и весьма интересен -от сбора данных, до поиска unregistered user names!
Что делать и как быть? Все это можно найти внутри 😊
Securityinnovation
Repo Jacking: Exploiting the Dependency Supply Chain
Three scenarios enable GitHub repositories to be hijacked. Linking directly to them may result in malicious code injection; don’t do it.
👍1
Callisto: binary analysis
Всем привет!
Callisto – небольшая утилита, которая позволяет искать уязвимости в binary-файлах. Скорее всего качество анализа будет невысоким, но сам подход достаточно интересный.
В своей работе Автор объединил следующее:
🍭 Декомпиляция binary файла с использованием
Всем привет!
Callisto – небольшая утилита, которая позволяет искать уязвимости в binary-файлах. Скорее всего качество анализа будет невысоким, но сам подход достаточно интересный.
В своей работе Автор объединил следующее:
🍭 Декомпиляция binary файла с использованием
Ghidra
🍭 Анализ полученных результатов – Semgrep
🍭 Валидация результатов при помощи GPT-3.5-Turbo
Пример того, как работает Callisto можно найти в repo проекта. Так же там присутствует информация о необходимых prerequisites для запуска утилиты и ключах, которые можно использовать.GitHub
GitHub - JetP1ane/Callisto: Callisto - An Intelligent Binary Vulnerability Analysis Tool
Callisto - An Intelligent Binary Vulnerability Analysis Tool - JetP1ane/Callisto
👍2❤1🔥1
Jsluice: анализ JavaScript файлов
Всем привет!
Jsluice существует в двух вариантах – один из них представляет собой CLI, а второй – Golang Package. На случай, если вам вдруг захочется интегрировать ее возможности себе в проект 😊
Утилита позволяет анализировать JavaScript файлы и находить в них:
🍭 URLs и paths
🍭 Секреты (по умолчанию только AWS, GCP, GitHub Keys и Firebase configurations, но можно расширять собственными patterns)
🍭 Syntax tree и не только
В repo дается отличное описание с примерами как и зачем можно использовать jsluice. А если хочется использовать Golang Package-версию, то есть детальное описание в документации пакета.
Всем привет!
Jsluice существует в двух вариантах – один из них представляет собой CLI, а второй – Golang Package. На случай, если вам вдруг захочется интегрировать ее возможности себе в проект 😊
Утилита позволяет анализировать JavaScript файлы и находить в них:
🍭 URLs и paths
🍭 Секреты (по умолчанию только AWS, GCP, GitHub Keys и Firebase configurations, но можно расширять собственными patterns)
🍭 Syntax tree и не только
В repo дается отличное описание с примерами как и зачем можно использовать jsluice. А если хочется использовать Golang Package-версию, то есть детальное описание в документации пакета.
GitHub
jsluice/cmd/jsluice at main · BishopFox/jsluice
Extract URLs, paths, secrets, and other interesting bits from JavaScript - BishopFox/jsluice
Validating Admission Policies
Всем привет!
В repo собраны политики, используемые утилитой Kubescape. Получился неплохой baseline набор, который можно использовать. Да, многие из них встречаются в различных статьях и материалах, но это не делает их менее правильными или нужными для использования.
Например, внутри есть политики про:
🍭 Управление ресурсами CPU/RAM
🍭 Наличие SSH-сервера внутри контейнера
🍭 Небезопасные Linux-capabilities
🍭 Naked Pods (Pod, не имеющие «обертки» в виде ReplicaSet, Deployment, Job и т.д.) и другие
Очень понравилось описание каждой политики. В нем содержится указание причины, из-за которой политику целесообразно применять; подверженные ресурсы; уровень значимости политики; параметры конфигурации (при наличии) и описание того, что именно делает политика.
Всем привет!
В repo собраны политики, используемые утилитой Kubescape. Получился неплохой baseline набор, который можно использовать. Да, многие из них встречаются в различных статьях и материалах, но это не делает их менее правильными или нужными для использования.
Например, внутри есть политики про:
🍭 Управление ресурсами CPU/RAM
🍭 Наличие SSH-сервера внутри контейнера
🍭 Небезопасные Linux-capabilities
🍭 Naked Pods (Pod, не имеющие «обертки» в виде ReplicaSet, Deployment, Job и т.д.) и другие
Очень понравилось описание каждой политики. В нем содержится указание причины, из-за которой политику целесообразно применять; подверженные ресурсы; уровень значимости политики; параметры конфигурации (при наличии) и описание того, что именно делает политика.
GitHub
GitHub - kubescape/cel-admission-library: This projects contains pre-made policies for Kubernetes Validating Admission Policies.…
This projects contains pre-made policies for Kubernetes Validating Admission Policies. This policy library is based on Kubescape controls, see here a comlete list https://hub.armosec.io/docs/contro...
🔥2
Рождение pod’a: что «внутри»?
Всем привет!
Еще одна статья из серии «что происходит под капотом?». Рассматривается процесс создания
Расписываются следующие шаги
🍭 Написание манифеста, использование
🍭 AuthN и AuthZ при обращении к
🍭 Scheduling (Node Selection, Filtering, Scoring, Final Selection, Binding and Assignment, Node Allocation)
🍭 Взаимодействие
Материал очень хорошо структурирован и позволит чуть больше понять «внутренности» и то, зачем как и когда используются разные технологии и компоненты Kubernetes.
Всем привет!
Еще одна статья из серии «что происходит под капотом?». Рассматривается процесс создания
pod’a и вся та «магия», что осуществляется с помощью Kubernetes.Расписываются следующие шаги
🍭 Написание манифеста, использование
kubectl и client-side validation🍭 AuthN и AuthZ при обращении к
kube-apiserver. Когда «подключается» Admission Control🍭 Scheduling (Node Selection, Filtering, Scoring, Final Selection, Binding and Assignment, Node Allocation)
🍭 Взаимодействие
Kubelet, CRI и CNI для старта контейнераМатериал очень хорошо структурирован и позволит чуть больше понять «внутренности» и то, зачем как и когда используются разные технологии и компоненты Kubernetes.
Deepsecrets: поиск секретов
Всем привет!
Много инструментов для поиска секретов не бывает! Поэтому предлагаем еще один – Deepsecrets. Особенно приятно, что этот инструмент от команды Avito!
Зачем нужен еще один сканер? Ответ можно найти в repo – вместо классического regex-подхода Deepsecrets использует семантический анализ, более эффективное использование энтропии и не только. Но все равно regex «внутри» есть 😊
Устанавливается быстро, запускается просто и немного конфигурируется. Можно сразу посмотреть на результаты и сравнить с аналогами.
Если хочется ознакомиться с историей создания инструмента, то можно прочесть отличную статью, описывающую проблематику поиска секретов от все той же команды Avito.
Всем привет!
Много инструментов для поиска секретов не бывает! Поэтому предлагаем еще один – Deepsecrets. Особенно приятно, что этот инструмент от команды Avito!
Зачем нужен еще один сканер? Ответ можно найти в repo – вместо классического regex-подхода Deepsecrets использует семантический анализ, более эффективное использование энтропии и не только. Но все равно regex «внутри» есть 😊
Устанавливается быстро, запускается просто и немного конфигурируется. Можно сразу посмотреть на результаты и сравнить с аналогами.
Если хочется ознакомиться с историей создания инструмента, то можно прочесть отличную статью, описывающую проблематику поиска секретов от все той же команды Avito.
GitHub
GitHub - avito-tech/deepsecrets: Secrets scanner that understands code
Secrets scanner that understands code. Contribute to avito-tech/deepsecrets development by creating an account on GitHub.
🔥4
Defending_CICD.PDF
817.2 KB
Defending CI/CD environments
Всем привет!
Свежий материал от NSA и CISA, посвященный безопасности окружений непрерывной сборки и доставки. Материал относительно небольшой (~23 страницы), но весьма полезный.
Внутри можно найти:
🍭 Attacks and Attack Surface. Небезопасный код, некорректные конфигурации, небезопасная обработка секретов и т.д.
🍭Threat Scenarios. Небольшое описание сценариев «что может пойти не так» и рекомендации по противодействию
🍭Hardening. Управление доступом, безопасность секретов, patch management, использование средств автоматизации проверок ИБ (SAST, DAST, SCA), журналирование и т.д.
Каждый раздел кратко детализируется, приводятся ссылки на дополнительные материалы для изучения. В качестве «бонуса» - mapping угроз CI/CD на матрицу MITRE ATT&CK.
Всем привет!
Свежий материал от NSA и CISA, посвященный безопасности окружений непрерывной сборки и доставки. Материал относительно небольшой (~23 страницы), но весьма полезный.
Внутри можно найти:
🍭 Attacks and Attack Surface. Небезопасный код, некорректные конфигурации, небезопасная обработка секретов и т.д.
🍭Threat Scenarios. Небольшое описание сценариев «что может пойти не так» и рекомендации по противодействию
🍭Hardening. Управление доступом, безопасность секретов, patch management, использование средств автоматизации проверок ИБ (SAST, DAST, SCA), журналирование и т.д.
Каждый раздел кратко детализируется, приводятся ссылки на дополнительные материалы для изучения. В качестве «бонуса» - mapping угроз CI/CD на матрицу MITRE ATT&CK.
👍2🔥2🐳1
Взаимодействие с ArgoCD через Golang
Всем привет!
В статье приводится пример того, как можно «общаться» с ArgoCD используя Golang. Начинается статья с подготовки необходимого окружения – запуск Minikube, установка ArgoCD, создание token для аутентификации в ArgoCD.
Дальше начинается самое интересное:
🍭 Приводится структура Golang-проекта, который будет создаваться
🍭 Создание Client для взаимодействия с ArgoCD сервером
🍭 Получение перечня кластеров
🍭 Создание project в ArgoCD и не только
В заключение приводится пример минималистичной программы, которая подключается к ArgoCD серверу, создает проект, отображает его ID, удаляет его и показывает все доступные кластеры. Таким образом получается продемонстрировать подготовленные наработки.
Всем привет!
В статье приводится пример того, как можно «общаться» с ArgoCD используя Golang. Начинается статья с подготовки необходимого окружения – запуск Minikube, установка ArgoCD, создание token для аутентификации в ArgoCD.
Дальше начинается самое интересное:
🍭 Приводится структура Golang-проекта, который будет создаваться
🍭 Создание Client для взаимодействия с ArgoCD сервером
🍭 Получение перечня кластеров
🍭 Создание project в ArgoCD и не только
В заключение приводится пример минималистичной программы, которая подключается к ArgoCD серверу, создает проект, отображает его ID, удаляет его и показывает все доступные кластеры. Таким образом получается продемонстрировать подготовленные наработки.
Medium
Manage ArgoCD Resources Programmatically with Golang 🐹
We will examine how to manage ArgoCD resources with Go for programmatically creating projects, clusters, and destinations with example…
❤1
SR-IOV Network metrics exporter
Если вдруг так сложилось, что вы используете K8s на bare-metal, да и еще в полной мере пользуетесь функциональностью SR-IOV на сетевых картах, то возникает вопрос, как же все мониторить?
Kubernetes Network Plumbing Working Group, разработчики SR-IOV Network Operator и Multus MetaCNI недавно выложили в сеть экспортер метрик, позволяющий полноценно снимать метрики с VF интерфейсов.
Пока что, данный проект, по заявлениям разработчиков не готов к продуктивной эксплуатации. Однако, ни что не мешает попробовать его в тестовой среде 😀
https://github.com/k8snetworkplumbingwg/sriov-network-metrics-exporter
Если вдруг так сложилось, что вы используете K8s на bare-metal, да и еще в полной мере пользуетесь функциональностью SR-IOV на сетевых картах, то возникает вопрос, как же все мониторить?
Kubernetes Network Plumbing Working Group, разработчики SR-IOV Network Operator и Multus MetaCNI недавно выложили в сеть экспортер метрик, позволяющий полноценно снимать метрики с VF интерфейсов.
Пока что, данный проект, по заявлениям разработчиков не готов к продуктивной эксплуатации. Однако, ни что не мешает попробовать его в тестовой среде 😀
https://github.com/k8snetworkplumbingwg/sriov-network-metrics-exporter
GitHub
k8snetworkplumbingwg
k8snetworkplumbingwg has 42 repositories available. Follow their code on GitHub.
👍3🔥2🥰1
Приглашаем вас 18 июля в 16:00 присоединиться к online-митапу наших партнеров: Зачем «Марлин» повстречал «Штурвал»?
Две российские компании-разработчики — «Лаборатория Числитель» и «Высокие цифровые технологии» — решили объединить усилия и представить на рынок надежное решение для ускорения процесса разработки приложений и сокращения Time to Market для бизнеса.
📈 Платформенное решение «Марлин», построенное на микросервисной архитектуре, позволяет снизить стоимость разработки на 40%, структурировать и автоматизировать все необходимые процессы, высвобождая ресурсы разработчика непосредственно для написания кода. А контейнерная платформа «Штурвал» выступает в роли надежного звена по управлению контейнерами, обеспечивая высокий уровень доступности и информационной безопасности.
🔗 В связке «Марлин» и «Штурвал» — это решение, готовое выполнить задачи быстрой и безопасной разработки и эксплуатации контейнеризированных приложений на всем жизненном цикле. Поэтому на мероприятии спикеры продемонстрируют «Марлин» и «Штурвал» в действии и на примере реальной производственной задачи в компании ВСК.
На online Meetup поговорят:
▪️ о безопасной разработке и эксплуатации приложений средствами «Марлин» и «Штурвал»;
▪️ бесшовной миграции без потери функционала;
▪️ стандартах деплоя, готовом конвейере разработки;
▪️ совместной поддержке решения.
✅ Регистрация
Две российские компании-разработчики — «Лаборатория Числитель» и «Высокие цифровые технологии» — решили объединить усилия и представить на рынок надежное решение для ускорения процесса разработки приложений и сокращения Time to Market для бизнеса.
📈 Платформенное решение «Марлин», построенное на микросервисной архитектуре, позволяет снизить стоимость разработки на 40%, структурировать и автоматизировать все необходимые процессы, высвобождая ресурсы разработчика непосредственно для написания кода. А контейнерная платформа «Штурвал» выступает в роли надежного звена по управлению контейнерами, обеспечивая высокий уровень доступности и информационной безопасности.
🔗 В связке «Марлин» и «Штурвал» — это решение, готовое выполнить задачи быстрой и безопасной разработки и эксплуатации контейнеризированных приложений на всем жизненном цикле. Поэтому на мероприятии спикеры продемонстрируют «Марлин» и «Штурвал» в действии и на примере реальной производственной задачи в компании ВСК.
На online Meetup поговорят:
▪️ о безопасной разработке и эксплуатации приложений средствами «Марлин» и «Штурвал»;
▪️ бесшовной миграции без потери функционала;
▪️ стандартах деплоя, готовом конвейере разработки;
▪️ совместной поддержке решения.
✅ Регистрация
👍7❤🔥4🔥2
Krossboard: k8s resource usage analysis
Всем привет!
Krossboard – средство аналитики и визуализации, которое позволяет получать информации о потреблении ресурсов множеством кластеров Kubernetes централизованно.
При помощи решения можно:
🍭 Сбор данных с кластеров. Информация о container, pod, node с каждого кластера собирается раз в 5 минут
🍭 Аналитика. Удобные dashboards, которые предоставляют информацию о потреблении ресурсов по namespace, cluster и globally
🍭 Отчетность. Krossboard обладает REST API, при помощи которого можно скачивать отчеты в CSV или JSON
Устанавливается и настраивается очень просто. Правда, в качестве Secret ему необходим Kubeconfig для доступа к целевым кластерам. Инструкцию о том, как сделать Kubeconfig с минимальными правами и перечень этих самых прав можно найти в repo проекта.
Всем привет!
Krossboard – средство аналитики и визуализации, которое позволяет получать информации о потреблении ресурсов множеством кластеров Kubernetes централизованно.
При помощи решения можно:
🍭 Сбор данных с кластеров. Информация о container, pod, node с каждого кластера собирается раз в 5 минут
🍭 Аналитика. Удобные dashboards, которые предоставляют информацию о потреблении ресурсов по namespace, cluster и globally
🍭 Отчетность. Krossboard обладает REST API, при помощи которого можно скачивать отчеты в CSV или JSON
Устанавливается и настраивается очень просто. Правда, в качестве Secret ему необходим Kubeconfig для доступа к целевым кластерам. Инструкцию о том, как сделать Kubeconfig с минимальными правами и перечень этих самых прав можно найти в repo проекта.
GitHub
GitHub - 2-alchemists/krossboard-kubernetes-operator: Kubernetes Operator to handle cross-site, cross-distribution & multi-Kubernetes…
Kubernetes Operator to handle cross-site, cross-distribution & multi-Kubernetes usage tracking, analytics and accounting (vanilla Kubernetes, OpenShift, EKS, AKS, GKE and other distros). - ...
👍5
Webhook: проверка электронной подписи
Всем привет!
Но как убедиться в том, что данные пришли от доверенного источника? Что никто не пытается его «взломать», например, передав не те данные. Ответ – электронная подпись.
В статье Авторы от SNYK проводят простую демонстрацию:
🍭 Создают небольшой
🍭 Настраивают
Примеры кода и пояснения, а также рекомендации как повысить уровень информационной безопасности при использовании
Всем привет!
Webhook – интеграционный механизм, который повсеместно используется в разработке и DevSecOps. Это удобно, просто и быстро.Но как убедиться в том, что данные пришли от доверенного источника? Что никто не пытается его «взломать», например, передав не те данные. Ответ – электронная подпись.
В статье Авторы от SNYK проводят простую демонстрацию:
🍭 Создают небольшой
webhook-receiver на базе Node.js
🍭 Направляют запрос при помощи Postman. Контроля подписи нет, запрос выполняется🍭 Настраивают
webhook в GitHub
🍭 Изменяют логику работы приложения, добавляя анализ электронной подписи webhook
🍭 Повторяют аналогичный тест. На этот раз выполняется только «разрешенный» запрос, для всех остальных – 401Примеры кода и пояснения, а также рекомендации как повысить уровень информационной безопасности при использовании
webhook можно найти в статье.Snyk
The importance of verifying webhook signatures | Snyk
Webhooks are a callback integration technique for sending and receiving information, such as event notifications, in close to real-time. In this walkthrough, we’ll implement a GitHub webhook in Node.js that detects when users push code to a repository.
👍7❤1
Arbitrary Code Execution в R/O filesystems
Всем привет!
Рекомендацию по использованию
Размышления на эту тему можно найти в статье. Автор рассматривает 3 сценария:
🍭
🍭
В каждом из сценариев Автору удалось добавить файлы в файловую систему и установить reverse shell. При этом контейнеры запускались с
Примеры реализации (команды, код, детализация подходов), а также меры для идентификации подобных сценариев можно найти в самой статье.
Всем привет!
Рекомендацию по использованию
readOnlyRootFileSystem: true можно встретить практически во всех рекомендациях и лучшим ИБ-практиках по защите контейнеров. Но достаточно ли ее для того, чтобы полностью избежать манипуляций с файловой системой контейнера?Размышления на эту тему можно найти в статье. Автор рассматривает 3 сценария:
🍭
Nginx и использование /dev/tcp
🍭 Alpine и использование возможностей «встроенного» busybox (wget)🍭
Alpine и использование dynamic linker/loader librariesВ каждом из сценариев Автору удалось добавить файлы в файловую систему и установить reverse shell. При этом контейнеры запускались с
readOnlyRootFileSystem: true и из-под непривилегированных пользователей.Примеры реализации (команды, код, детализация подходов), а также меры для идентификации подобных сценариев можно найти в самой статье.
Withsecure
Executing Arbitrary Code & Executables in Read-Only FileSystems
In containerized environments, such as Kubernetes clusters, read-only filesystems are viewed as an additional layer of defense, as they allow for better control and management of containerized applications. Immutable containers are consistent and predictable…
👍9❤1
PyLoose: fileless-атака с Python
Всем привет!
Команда Wiz идентифицировала новое вредоносное ПО, которое получило название PyLoose. Оно позволяет запустить crypto miner в оперативной памяти с использованием
Для эксплуатации необходим Jupyter Notebook, возможность запуска Python-скриптов с доступом к системным командам (
Примечательно, что noscript состоит всего из 9(!) строк кода на Python. «Построчный разбор», подробности атаки (включая условия «успешности»), а также способы ее идентификации можно найти в статье от Wiz.
Всем привет!
Команда Wiz идентифицировала новое вредоносное ПО, которое получило название PyLoose. Оно позволяет запустить crypto miner в оперативной памяти с использованием
memfd. Для эксплуатации необходим Jupyter Notebook, возможность запуска Python-скриптов с доступом к системным командам (
os, subprocess). Жертве передается нужный noscript, происходит его запуск и установка XMrig miner.Примечательно, что noscript состоит всего из 9(!) строк кода на Python. «Построчный разбор», подробности атаки (включая условия «успешности»), а также способы ее идентификации можно найти в статье от Wiz.
wiz.io
PyLoose: Python-based fileless malware targets cloud workloads to deliver cryptominer | Wiz Blog
PyLoose is a newly discovered Python-based fileless malware targeting cloud workloads. Get a breakdown of how the attack unfolds and the steps to mitigate it.
👍4🔥3❤2
SNYK_Top_10.pdf
5.5 MB
SNYK Top 10
Всем привет!
В приложении доступен отчет поOWASP Top 10 по 10 наиболее распространенным уязвимостям по версии SNYK для языков: JavaScript, Java, Python, Go, PHP, Ruby, and C#.
Отчет формировался на основании данных, анализируемых специалистами компании и представляет их видение происходящего.
Список получился таким:
🍭 Denial of Service
🍭 Remote Code Execution
🍭 Deserealization of Untrusted Data
🍭 SQL Injection
🍭 Prototype Pollution
🍭 Insecure Temporary File
🍭 Directory/Path Traversal
🍭 Privilege Escalation
🍭 Regular Expression Denial of Service
🍭 NULL Pointer Dereference
Помимо информации об уязвимостях в отчете можно найти ссылки на cheatsheet по языкам и полезные материалы по теме.
Всем привет!
В приложении доступен отчет по
Отчет формировался на основании данных, анализируемых специалистами компании и представляет их видение происходящего.
Список получился таким:
🍭 Denial of Service
🍭 Remote Code Execution
🍭 Deserealization of Untrusted Data
🍭 SQL Injection
🍭 Prototype Pollution
🍭 Insecure Temporary File
🍭 Directory/Path Traversal
🍭 Privilege Escalation
🍭 Regular Expression Denial of Service
🍭 NULL Pointer Dereference
Помимо информации об уязвимостях в отчете можно найти ссылки на cheatsheet по языкам и полезные материалы по теме.
❤5👍3
Labeling в Kubernetes
Всем привет!
Простой пост понедельника, посвященный Labels. Механизм повсеместно используется в Kubernetes. При этом есть как «системные» Labels (нужны для работы Kubernetes), так и «пользовательские» (упрощают понимание контекста).
В статье приведены рекомендации о том, как именно их стоит указывать. За основу взят материал из официальной документации k8s, который рекомендует указывать:
🍭 Name
🍭 Instance
🍭 Version
🍭 Component
🍭 Part-of
🍭 Managed-by
Рассматриваются примеры реализации, в том числе на базе существующих и популярных решений мира контейнеризации. Помимо этого, можно найти рекомендации об использовании Labels в multitenant-инсталляциях.
Всем привет!
Простой пост понедельника, посвященный Labels. Механизм повсеместно используется в Kubernetes. При этом есть как «системные» Labels (нужны для работы Kubernetes), так и «пользовательские» (упрощают понимание контекста).
В статье приведены рекомендации о том, как именно их стоит указывать. За основу взят материал из официальной документации k8s, который рекомендует указывать:
🍭 Name
🍭 Instance
🍭 Version
🍭 Component
🍭 Part-of
🍭 Managed-by
Рассматриваются примеры реализации, в том числе на базе существующих и популярных решений мира контейнеризации. Помимо этого, можно найти рекомендации об использовании Labels в multitenant-инсталляциях.
DEV Community
Labels and annotations in Kubernetes
In Kubernetes, you can use labels to assign key-value pairs to any resources. Labels are ubiquitous...
👍1
Нюансы проверки подписи в Kubernetes
Всем привет!
Подпись образов, их аттестация и последующая проверка при создании ресурсов Kubernetes становится все более и более привычной практикой. Появляются новые механизмы, обрастают функционалом существующие.
Но все ли так просто, неужели нет «подводных камней»? Ответ можно найти в статье от Chainguard, в которой Автор описывает несколько нюансов, связанных с проверкой подписи.
В их число входят:
🍭 Resource Type. Важно учитывать, что «местоположение» контейнера в манифесте будет разным, например, для
🍭 Tags and digest. Особенности, связанные с «конвертацией» tag – digest
🍭 Attestations and additional data. Больше данных – больше проверок, что может увеличить время анализа и быть заметно на масштабе
🍭 Key Rotation. Управление ключами, используемыми для подписи образов
Все очень структурированно и доступно описано. Что делать с описанными выше нюансами? У Chainguard есть мнение и на этот счет! В завершении статьи можно найти ссылку на их проект – Chainguard Enforce (увы, не open source).
Всем привет!
Подпись образов, их аттестация и последующая проверка при создании ресурсов Kubernetes становится все более и более привычной практикой. Появляются новые механизмы, обрастают функционалом существующие.
Но все ли так просто, неужели нет «подводных камней»? Ответ можно найти в статье от Chainguard, в которой Автор описывает несколько нюансов, связанных с проверкой подписи.
В их число входят:
🍭 Resource Type. Важно учитывать, что «местоположение» контейнера в манифесте будет разным, например, для
Pod, Deployment или CronJob
🍭 Scale. Потенциальный rate limit для container registries, связанный с большим количеством запросов при проверке подписи, важность использования cache🍭 Tags and digest. Особенности, связанные с «конвертацией» tag – digest
🍭 Attestations and additional data. Больше данных – больше проверок, что может увеличить время анализа и быть заметно на масштабе
🍭 Key Rotation. Управление ключами, используемыми для подписи образов
Все очень структурированно и доступно описано. Что делать с описанными выше нюансами? У Chainguard есть мнение и на этот счет! В завершении статьи можно найти ссылку на их проект – Chainguard Enforce (увы, не open source).
www.chainguard.dev
So you want to check image signatures in Kubernetes…?
Signing containers is one of the best security practices you can adopt today but its not always as easy as it seems. Here are five problems you'll likely encounter when trying to verify signatures at deployment time in Kubernetes. Everything you need to know…
👍2
25 Methods for Pipeline Attacks
Всем привет!
В статье собраны примеры того, как можно что-то «получить» или сделать «плохо» при неправильной конфигурации pipeline.
Например:
🍭 Добавление unauthorized user в качестве approver
🍭 Извлечение секретов и переменных окружения
🍭 Изменение конфигурационных файлов приложения и другие
Для каждого примера приводится описание сценария и примеры команд, как это можно реализовать. В завершении статьи примеры того, как этого можно не допустить.
Всем привет!
В статье собраны примеры того, как можно что-то «получить» или сделать «плохо» при неправильной конфигурации pipeline.
Например:
🍭 Добавление unauthorized user в качестве approver
🍭 Извлечение секретов и переменных окружения
🍭 Изменение конфигурационных файлов приложения и другие
Для каждого примера приводится описание сценария и примеры команд, как это можно реализовать. В завершении статьи примеры того, как этого можно не допустить.
👍3
CodeQL: From zero to hero, Part 2
Всем привет!
Вторая статья серии, посвященной CodeQL (о первой мы писали тут). На этот раз речь пройдет не про общие концепты статического анализа, а непосредственно про сам CodeQL.
Статья содержит информацию:
🍭 Общий принцип работы CodeQL
🍭 «Первое сканирование» с использованием GitHub Actions
🍭 База данных CodeQL: создание, переиспользование
🍭 Написание собственных CodeQL Query: основы, Predicates, Classes и т.д.
В статье очень много примеров, каждый из которых разбирается практически «line-by-line» и отлично помогает разобраться в основах CodeQL. Однозначно рекомендуем к прочтению, как и первую статью серии! ☺️
Всем привет!
Вторая статья серии, посвященной CodeQL (о первой мы писали тут). На этот раз речь пройдет не про общие концепты статического анализа, а непосредственно про сам CodeQL.
Статья содержит информацию:
🍭 Общий принцип работы CodeQL
🍭 «Первое сканирование» с использованием GitHub Actions
🍭 База данных CodeQL: создание, переиспользование
🍭 Написание собственных CodeQL Query: основы, Predicates, Classes и т.д.
В статье очень много примеров, каждый из которых разбирается практически «line-by-line» и отлично помогает разобраться в основах CodeQL. Однозначно рекомендуем к прочтению, как и первую статью серии! ☺️
The GitHub Blog
CodeQL zero to hero part 2: Getting started with CodeQL
Learn the basics of CodeQL and how to use it for security research! In this blog, we will teach you how to leverage GitHub’s static analysis tool CodeQL to write custom CodeQL queries.
👍2
