DevSecOps Talks
الذهاب إلى القناة على Telegram
Рассказываем об актуальном в мире DevSecOps. Канал DevSecOps-команды "Инфосистемы Джет"
إظهار المزيد8 070
المشتركون
-324 ساعات
-17 أيام
+2730 أيام
أرشيف المشاركات
8 073
Привет!
Можно встретить много вопросов на тему «Как мне стать … (подставить нужное)?», т.к. не всегда понятно, за что браться в первую очередь в нашем мире, полном информации.
Есть интересный вариант пути развития по теме «Web Security Researcher». Он включает в себя несколько Tiers, которые кратко (по сравнению с тем, что приводится в статье – очень (!) кратко) описаны ниже:
🍭 Tier 1: Основы – HTTP, сети, программирование, Bash и Linux
🍭 Tier 2: Использование доступных online ресурсов для обучения и практики, например OWASP Top 10, изучение книг по анализу web – приложений
🍭 Tier 3: Применение полученных навыков на Hack The Box, RootMe, Try Hack Me и т.д.
🍭 Tier 4: «Оттачивание навыков», чтение более сложной литературы по тематике
🍭 Tier 5: Продолжения развития навыков, полученных на предыдущих этапах
Подборка, в первую очередь, привлекла количеством интереснейших материалов, на которые ссылаются ее авторы – от простого «30 дней Python» до «HTTP Desync Attacks.». Возможно, это пригодится и вам!
8 073
Привет!
Недавно (13.09.2021) появилась новость про CVE-2021-25741 в Kubernetes (получила уровень критичности High), которая позволяет «create a container with subpath volume mounts to access files & directories outside of the volume, including on the host filesystem».
Подверженные версии: v1.22.0 - v1.22.1; v1.21.0 - v1.21.4; v1.20.0 - v1.20.10; <= v1.19.14
Уязвимость можно эксплуатировать, даже если администраторы ограничили возможность mount'a hostPath: «Exploitation allows hostPath-like access without use of the hostPath feature, thus bypassing the restriction».
Рекомендации по профилактике: «Disable the VolumeSubpath feature gate on kubelet and kube-apiserver, and remove any existing Pods making use of the feature».
Больше информации можно найти по ссылке на github, статье и в материалах cve.report
8 073
Привет!
Интересная статья от SNYK, в которой рассматриваются некоторые их продукты для обеспечения безопасности Python Application.
«Ваш код, используемые open source компоненты, контейнеры, конфигурация элементов ИТ-инфраструктуры (IaC)» - то, что можно проанализировать при помощи решений от SNYK:
🍭 Snyk Code – статический анализатор (SAST)
🍭 Snyk Open Source – анализ open source компоненты (SCA)
🍭 Snyk Container – анализ образов контейнеров на наличие уязвимостей и иных ИБ-дефектов
🍭 Snyk Infrastructure as Code – анализ конфигурационных файлов
Далее в статье приводятся небольшие примеры каждого инструмента и общий обзор того, как вместе они выстраиваются в целостную картину для обеспечения безопасности приложения.
Отдельно хочется отметить Snyk Advisor – бесплатный online ресурс, который можно использовать для выбора оптимальной зависимости или образа контейнера, используемого в качестве базового ☺️
8 073
Привет!
Tilt – удобный инструмент для разработчиков, который поможет им в поиске ошибок при разработке контейнеров и микросервисных приложений.
Ключевые функции Tilt:
🍭 Отслеживает изменения в исходном коде и автоматически запускает build/push deployments для k8s
🍭 Поддержка приложений, состоящих из нескольких компонент/микросервисов
🍭 Предоставляет web-console, в которой отображается информация о deploy, можно посмотреть логи build и deploy процессов
🍭 Возможно использовать Tilt вместе с Helm charts
При помощи графического интерфейса, кроме получения информации о deploy и логах, можно увидеть в чем именно (в какой сущности) заключается ошибка, что сократит время потенциального debug.
Краткое видео об основных возможностях можно посмотреть вот тут, а небольшую обзорную статью с базовым примером установки и использования – вот тут. И, конечно же, ссылка на repo ☺️
8 073
Всем привет!
И мы снова продолжаем делиться с вами полезными ресурсами и тулами, и сегодня у нас в меню небольшой инсайд о весьма интересном решении, ориентированным на срез AppSec.
Турецкий стартап, как бы это ни звучало неожиданно, Kondukto.io разработал и вывел на рынок весьма неплохое решение по направлению Vulnerability Orchestration.
Система ориентирована по большей части на направление Application Security, однако пока еще небольшой вендор, открыто идет на контакт с заказчиками и уверяет что большинство Feature Request'ов может обработать в небольшие сроки.
Итого платформа представляет из себя централизованную SaaS консоль, расположенную в Amazon, интегрируемую с различными toolchain в области DevSecOps и позволяющую быстро и удобно агрегировать обнаруженные уязвимости, репортить их и следить за их жизненным циклом.
Платформа работает как с инфраструктурными уязвимостями полученными от Nessus сканеров и Tenable инсталляций, так и контейнерными и уязвимостями в коде.
Прелесть платформы в том что сама платформа выполняет только функции агрегации и трекинга уязвимостей, источники же она использует как уже имеющиеся в вашей инфраструктуре, так и идущие из коробки тулзы:
🍩 SASD/DAST сканеры кода
🍩 Trivy сканер docker образов
🍩 CLI утилита, интегрированная в пайплайны большинства CI/CD систем
🍩 IAC сканеры
🍩 IAM анализаторы
и многие другие.
Процесс обработки уязвимостей, их репортинга через различные issue трекеры от Jira до тяжелых энтерпрайзных ServiceNow прозрачен, понятен и удобен и позволяет в любой момент времени быстро получить инфромацию о статусе кейса, его истории и выполнять активную обработку задачи. И конечно же, многие действия могут и должны быть автоматизированы.
Ссылка на сайт продукта ниже, и помните: Using Jira doesn't make you Agile 🤪
https://kondukto.io/
8 073
Привет!
Простая и КРАЙНЕ НАГЛЯДНАЯ статья, описывающая общее устройство сети Kubernetes.
От создания pod до контроля доступа к нему из-за пределов кластера:
🍭 Создание pod, изолированная сеть, сетевой доступности к контейнеру нет (извне/изнутри кластера)
🍭 «Соединение» pod network и host network, роль CNI в этом процессе, сетевая доступность контейнера на уровне node
🍭 ClusterIP – абстракция, позволяющая общаться с контейнерами, расположенными на разных nodes, сетевая доступность контейнеров на уровне кластера
🍭 NodePort и LoadBalancer – или как сделать контейнеры доступными извне! Описание взаимосвязи сущностей NodePort и LoadBalancer
🍭 Управление «внешней» доступностью при помощи LoadBalancer и Ingress Controller – в чем концептуальная разница и что это такое
Рекомендуем к прочтению! Множество схем, которые «эволюционируют» вместе с увеличением количеством абстракций, что упрощает общее восприятие и помогает разобраться что к чему ☺️
8 073
Threatspec – это open source инструмент, который реализует моделирование угроз путем добавления специальных аннотаций в исходный код. Кроме основного назначения, идея инструмента заключается в устранении стены между командами разработки и специалистами ИБ за счет совместной работы по интеграции процесса моделирования угроз на самом начальном этапе.
Работу с утилитой можно сгруппировать на 3 основных блока:
🍡Установка. Выполняется через pip. После установки утилита инициализируется в конкретном репозитории, в рамках этого процесса генерируется конфиг-файл, который можно скорректировать, например, указать другие репозитории для сканирования
🍡Настройка. Выполняется добавление аннотаций в исходный код (пример приведен далее)
🍡Запуск и генерация отчета. Запускается threatspec, на выходе получается графический отчет с блоками кода и потенциальными проблемами
Аннотации
Внутри threatspec находится парсер, который разбирает файлы с исходным кодом и выполняет поиск аннотаций. Парсер реализован на питоне и поддерживает работу с несколькими MIME типами для понимания какие комментарии необходимо разобрать (например, C, C++/C#, XML…).
Пример использования аннотации может выглядить следующим образом:
// @accepts arbitrary file writes to WebApp:FileSystem with filename restrictions
// @mitigates WebApp:FileSystem against unauthorised access with strict file permissions
func (p *Page) save() error {
filename := p.Title + ".txt"
return ioutil.WriteFile(filename, p.Body, 0600)
}
Где accepts означает «принятие» конкретной угрозы, а mitigates – устранение угрозы с использованием определенной меры.
После запуска threatspec можно получить отчет (для примера картинка прилагается далее).
Более детальную информацию об инструменте и полном перечне аннотаций можно получить здесь: https://github.com/threatspec/threatspec8 073
Привет!
По ссылке можно посмотреть видео, посвященное безопасности Docker. В первой части приводится общее описание концепций безопасности Docker: Container Security – Namespaces – Isolating, Userns-remap, CGroups – Restricting, Capabilities – Control, Seccomp / AppArmor – Control.
Далее производится разбор возможностей Escape из контейнера:
🍭 Published Vulnerabilities – Kernel bugs
🍭 Runtime bugs
🍭 Host volume mounts
🍭 Privileged containers
🍭 Dockerd / Containerd access
🍭 Docker.sock
🍭 Containerd.sock
🍭 Docker network 2375/tcp, 2376/tcp
В целом видео достаточно интересное и насыщенное (всего 30 минут), единственный недостаток – отсутствие интерактивности
8 073
Привет!
Vault-CSI-Provider – утилита, которая позволяет делать инъекции секретов в pods через механизм Secrets Store CSI.
Это может быть удобнее схемы с Sidecar контейнером и подстановкой секретов через механизм Annotations.
Пример использования доступен по ссылке:
🍭 Запуск Minikube и установка HashiCorp Vault
🍭 Создание Secrets, Policy, Role и AuthMethod (Kubernetes)
🍭 Создание SecretProviderClass с конфигурацией HashiCorp Vault
🍭 Создание Pod, оптимизация конфигурации для использования ранее определенного SecretProviderClass
Если вдруг вас заинтересует указанный способ, просим обратить внимание на «This project is currently supported as a Beta product, but relies on Alpha Kubernetes APIs and the CSI secrets store driver which is also Alpha»
8 073
Всем привет!
Статья, посвященная Indicators of Compromise от SysDig. Приводится краткое описание IoC и способов, как его можно идентифицировать (да, преимущественно с SysDig, на практики можно использовать и с другими инструментами):
🍭 Увеличенное использование CPU/RAM
🍭 Аномальный сетевой трафик (исходящий)
🍭 Назначение Cluster-Admin Role
🍭 Аномальная активность пользователей
🍭 Повышенный сетевой трафик (входящий)
🍭 Изменения в файловой системе
🍭 Аномалии в DNS запросах
🍭 Увеличение http response
🍭 Запуск неизвестного процесса
🍭 HTTP 403 и 404
С одной стороны – вроде бы ничего нового, с другой – приятно иметь структурированный перечень и краткие пояснения перед собой ☺️
P.S. Всех с пятницей! Отлично отдохнуть на выходных!
8 073
Всем привет!
Интересная подборка с возможными способами Docker Breakout:
🍭 Mounted Docker Socket
🍭 Container Capabilities и Privileged
🍭 Runc exploit (CVE-2019-5736)
🍭 Docker API Firewall Bypass
🍭 Writable hostPath Mount
Рассматриваются примеры эксплуатации, предоставляются ссылки на более детальную информацию о том или ином способе «побега» (в случае, если это допустимо)
P.S. Кстати, на ресурсе еще много чего интересного, с чем можно ознакомиться с точки зрения практической безопасности и тестирования на проникновение
8 073
Привет!
HashiCorp подготовили интересную обзорную статью про один из механизмов аутентификации – AppRole. В статье раскрывается принцип работы:
🍭 Для получения токена аутентификации в Vault приложение должно предоставить Role ID (нечто вроде Username) и Secret ID (нечто вроде Password).
🍭 Role ID и Secret ID должны передаваться в приложение через различные каналы.
🍭 Secret ID должен передаваться только в определенные моменты времени (например, при старте приложения).
Сам концепт напоминает двухфакторную аутентификацию: мы знаем Username (Role ID) и нам нужен одноразовый идентификатор – OTP (Secret ID).
В статье приводится схема распределения доставки Role ID и Secret ID с использованием response wrapping (обратную процедуру, unwrapping, может сделать только уполномоченный client).
В завершении – описываются 11 (!) шагов этой процедуры. Желаем приятного чтения! ☺️
P.S. Также в статье даются простые и понятные аналогии для абстракций Vault, что упрощает общее понимание концепций, в которых он работает. И множество отсылок на полезные материалы в документации решения.
8 073
Привет!
Datree – утилита, которая позволяет предотвращать misconfigurations путем анализа манифестов на соответствие требованиям ИБ и лучшим практикам.
«Из коробки» доступны проверки (в количестве 30 штук) для таких сущностей как:
🍭 Workload
🍭 Containers
🍭 CronJob
🍭 Networking
🍭 Deprecations
🍭 Others
У утилиты есть web-интерфейс, отображающий информацию об активных проверках и о результатах ее (утилиты) деятельности. Подробнее можно почитать в документации, а если хочется немного «поиграть» с утилитой – то можно воспользоваться Katacoda! ☺️
8 073
Я календарь перевернул - и снова третье сентября!
На постик я сейчас взгляну - и снова третье сентября!
Всем привет!
И снова пятница, первая пятница осени, календарь перевёрнут и со всех дворов и окрестностей на нас льётся осенняя лирика!
Тем временем, мы рады поделиться очень полезной статьей про mTLS от ребят из Buoyant.io
Казалось бы, о TLS сломано столько копий, ну что здесь может быть нового?
Тем не менее, статья может быть полезной и опытным Devops инженерам, и тем более начинающим специалистам.
В статье кратко и понятно излагаются и объясняются основные бенефиты решения такие как:
🍩 Аутентификация для микросервисов
🍩 Проверка подлинности
🍩 Certificate management
🍩 Использование с servicemesh
И самое интересное - короткий и понятный гайд как начать использовать и получить профит от mTLS в своей k8s среде!
Ссылка как всегда ниже. Приятного чтения! 👇
https://buoyant.io/mtls-guide/
8 073
Привет!
Иногда спрашивают – «Что такое DevSecOps?», «Что такое контейнеры?», «Чем Kubernetes отличается от Docker?» и т.д.
Люди ищут информацию для того, чтобы погрузиться в тематику и узнать про нее больше. Обилие информации тут играет «плохую шутку» - глаза разбегаются и не всегда понятно на что обратить внимание.
Есть awesome-подборки, которые агрегируют данные по различным тематикам/направлениям. Но они, скорее для тех, кто уже немного освоился.
Что делать тем, кто только начинает погружаться? Рекомендуем посмотреть на «Aqua Cloud Native Wiki» от Aqua Security. Отличная «мини-википедия», в которой собрано много информации:
🍭 DevSecOps
🍭 Cloud Native Applications
🍭 Kubernetes
🍭 Containerized Architecture и многое другое!
Множество полезной информации, консолидированной в едином ресурсе. Удобно читать и изучать ☺️
8 073
Несколько дней назад обновилась Container Security платформа от Palo Alto — Prisma Cloud Compute Edition v. 21-08.
Главное в этом обновлении:
🍏 Песочница для анализа образов и контейнеров перед их деплоем. Она запускается на отдельной линуксовой ВМ и анализирует активность процессов, файловой системы и сети контейнера. Результаты сообщает в консоль;
🍏 Новые фичи у встроенного WAF — теперь есть поддержка Windows хостов и Service Mesh (LinkerD, Istio);
🍏 Автоматическое создание Pull Request (GitHub) для уязвимостей в зависимостях приложений. Поддерживается Go, Python, Java, and JavaScript (Node.js).
Помимо этого, продукт получил сертификацию Red Hat, появилась обратная совместимость дефендеров с прошлыми версиями консоли, новые виды уведомлений и многое другое.
Подробности по ссылке.
8 073
Всем привет!
Peirates – open source утилита, которую можно использовать для penetration test кластеров Kubernetes.
Основной фокус – privilege escalation и lateral movement.
На текущий момент поддерживаются такие возможности как:
🍭 Reverse shell на node, через pod с hostPath-mounting
🍭 Извлечение service account tokens из secret
🍭 Запуск token-dumping команды для всех pods
🍭 Получение IAM учетных данных из AWS или GCP
🍭 Распространение самого себя в другие pods, эмулируя lateral movement
Утилита обладает удобным интерфейсом - меню, из которого можно выбрать требуемое действие. Чуть больше информации можно прочитать по ссылке. Важно (!): Peirates attacks Kubernetes cluster. Talk to your lawyer and the cluster owners before using this tool.
8 073
Привет!
Статья, посвященная контролю outbound traffic. Ребята начали с того, что ответили на вопрос – «А какие внешние соединения устанавливаются нашими приложениями?». После получения ответа команда задумалась о том, как лучше всего контролировать трафик в долгосрочной перспективе:
🍭 Нужна возможность написания политик, контролирующих трафик от specific source до specific destination
🍭 Требуется возможность использования DNS
🍭 Alerting, в случае если трафик отправляется на недоверенный источник
Ребята не смогли найти решение, которое соответствовало бы всем требованиям (статья от 2020 года) и решили начать с малого – контролировать трафик по портам с использованием Network Policy и Calico в качестве CNI.
Посмотрели в сторону Istio, но такое решение их не устроило. Дальше? DNS inspection! Однако и тут были сложности – доступные на тот момент enterprise-решения не могли быть «помещены» в K8S. К чему в итоге пришла команда после попыток и анализа различных подходов?
Ответом стали «эксклюзивные» proxy для всех внешних сервисов, с которыми устанавливаются соединения. Возможно, звучит немного страшно и overkill, но такой подход устроил команду, и она его реализовала. Как именно – рассказано в самом конце статьи ☺️
8 073
Привет!
Интересная статья от Aqua Security про «Advanced Persistent Threat Techniques Used in Container Attacks», подготовленная командой Nautilis (R’n’D команда Aqua).
В каждой атаке было идентифицировано следующее:
🍭 Running a vanilla container image. Использование Alpine-образа
🍭 Escaping to the host. Mount файловой системы host для последующего получения доступа
🍭 Downloading a malicious script. Загрузка и исполнение script cronb.sh
🍭 Loading and executing the malware. Выполнение атаки, например, установка cryptominer и сокрытие присутствия
В самой статье приведены анализ script и rootkits, использующихся злоумышленниками для совершения атаки и сокрытия собственного присутствия.
В конце – как обычно, некоторые рекомендации по противодействию
P.S. Всех с пятницей! ☺️☺️☺️
