Web Security for Developers.epub
18.7 MB
Web Security for Developers
Книга, объясняющая все основные атаки на веб с точки зрения разработчика с упором на код (injection, XSS, CSRF, compomised auth, session hijacking и тд) . Первая часть также даст азы для начинающих о том, как работает веб, что из себя представляет тестирование, SDLC, DevOps.
Особенно полезно будет для AppSec.
#dev #literature #web
Книга, объясняющая все основные атаки на веб с точки зрения разработчика с упором на код (injection, XSS, CSRF, compomised auth, session hijacking и тд) . Первая часть также даст азы для начинающих о том, как работает веб, что из себя представляет тестирование, SDLC, DevOps.
Особенно полезно будет для AppSec.
#dev #literature #web
Rootless containers
Нашел на просторах Интернета небольшой сайт Rootless Containers, который отражает прогресс решения задачи по работе с контейнерами без root в разных проектах.
В качестве примеров:
- Встроенные возможности Docker на разных версиях
- Podman rootless-mode
- BuildKit rootless-mode
- LXC unprivileged-mode
- Singularity fakeroot-mode
Есть также ряд сценариев, которые не попали в rootless, так как используются SETUID бинари или run-time контейнера продолжает работать от рута:
- Kaniko
- Makisu
- работа с docker.sock через группу
Для k8s rootless остается пока где-то в будущем. На текущий момент такая возможность есть только в Usernetes и k3s, которые не применимы для продакшн сред. Для решения rootless задачи они используют RootlessKit.
#docker #ops #k8s
Нашел на просторах Интернета небольшой сайт Rootless Containers, который отражает прогресс решения задачи по работе с контейнерами без root в разных проектах.
В качестве примеров:
- Встроенные возможности Docker на разных версиях
- Podman rootless-mode
- BuildKit rootless-mode
- LXC unprivileged-mode
- Singularity fakeroot-mode
Есть также ряд сценариев, которые не попали в rootless, так как используются SETUID бинари или run-time контейнера продолжает работать от рута:
- Kaniko
- Makisu
- работа с docker.sock через группу
docker
и —userns-nemap
режимДля k8s rootless остается пока где-то в будущем. На текущий момент такая возможность есть только в Usernetes и k3s, которые не применимы для продакшн сред. Для решения rootless задачи они используют RootlessKit.
#docker #ops #k8s
Docker Documentation
Rootless mode
Run the Docker daemon as a non-root user (Rootless mode)
Kubernetes Security Policies for Open Policy Agent
До этого я писал о том, как с помощью Open Policy Agent можно проверять Network Policies и Ingress, задавая правила на языке Rego. Аналогично на языке Rego мы можем задать правила для проверки любых других ресурсов. Чтобы облегчить себе жизнь, предлагаю взглянуть на репо k8s-security-policies, который представляет из себя набор правил CIS Kubernetes benchmark вместе с перенесенными правилами из Kubesec.io.
Как и в случае с выбором между Conftest и Hadolint для Docker, вы можете рассмотреть вариант с Conftest и Kubesec.io для k8s-манифестов в связке с правилами k8s-security-policies. Можно также рассмотреть другие инструменты из этой подборки.
Cписок политик Kubesec.io можно посмотреть здесь.
#k8s #ops
До этого я писал о том, как с помощью Open Policy Agent можно проверять Network Policies и Ingress, задавая правила на языке Rego. Аналогично на языке Rego мы можем задать правила для проверки любых других ресурсов. Чтобы облегчить себе жизнь, предлагаю взглянуть на репо k8s-security-policies, который представляет из себя набор правил CIS Kubernetes benchmark вместе с перенесенными правилами из Kubesec.io.
Как и в случае с выбором между Conftest и Hadolint для Docker, вы можете рассмотреть вариант с Conftest и Kubesec.io для k8s-манифестов в связке с правилами k8s-security-policies. Можно также рассмотреть другие инструменты из этой подборки.
Cписок политик Kubesec.io можно посмотреть здесь.
#k8s #ops
No dockershim in k8s, what about security?
Громкая новость, что в kubernetes 1.20 будет выпилен dockershim как high-level runtime. Таким образом, к концу 2021 году всем необходимо будет перейти на cri-o или containerd.
Через некоторое время появляется страница в официальной документации k8s:
Don't Panic: Kubernetes and Docker
А чтобы разобраться, что это вообще такое, советую взглянуть на следующие материалы:
- How Container Runtimes matter in Kubernetes?
- Diving Deeper Into Runtimes: Kubernetes, CRI, and Shims
С точки зрения security советую вам посмотреть следующее видео:
Security Considerations for Container Runtimes
Если коротко, то первое, в чем выиграет безопасность, так это отсутствие
#k8s #ops #docker
Громкая новость, что в kubernetes 1.20 будет выпилен dockershim как high-level runtime. Таким образом, к концу 2021 году всем необходимо будет перейти на cri-o или containerd.
Через некоторое время появляется страница в официальной документации k8s:
Don't Panic: Kubernetes and Docker
А чтобы разобраться, что это вообще такое, советую взглянуть на следующие материалы:
- How Container Runtimes matter in Kubernetes?
- Diving Deeper Into Runtimes: Kubernetes, CRI, and Shims
С точки зрения security советую вам посмотреть следующее видео:
Security Considerations for Container Runtimes
Если коротко, то первое, в чем выиграет безопасность, так это отсутствие
CAP_NET_RAW
в качестве дефолтного capability, при этом сохраняется возможность делать ping
внутри контейнера. Это должно решить проблему с CVE-2020-14386 и возможностью проведения MiTM атак.#k8s #ops #docker
GitHub
kubernetes/CHANGELOG/CHANGELOG-1.20.md at master · kubernetes/kubernetes
Production-Grade Container Scheduling and Management - kubernetes/kubernetes
Threat Alert: Fileless Malware Executing in Containers
Команда Nautilus Team обнаружила образы в Docker Hub, которые могут разворачивать так называемый "безфайловый" вредоносный софт на хостах. Образы были созданы уже известной группировкой TeamTNT, про которую я рассказывал на DevOpsFest.
В рамках атаки вредоносный образ на базе Busybox пытается развернуть на хосте малварь, которая упакована с помощью UPX и ezuri, шифруя таким образом содержимое. Все это создает сложности при определении вредоноса через AV. Далее запускается руткит для сокрытия новых процессов.
В итоге получается, что вся вредоносная активность выполняется из памяти, что вынуждает идти по пути отслеживания run-time, а не проверки имаджей.
Тут, кстати, для меня было открытие, что оказывается Aqua выпустила недавно новый open-source инструмент Tracee, который использует eBPF для отслеживания сисколов.
#k8s #ops #docker #attack
Команда Nautilus Team обнаружила образы в Docker Hub, которые могут разворачивать так называемый "безфайловый" вредоносный софт на хостах. Образы были созданы уже известной группировкой TeamTNT, про которую я рассказывал на DevOpsFest.
В рамках атаки вредоносный образ на базе Busybox пытается развернуть на хосте малварь, которая упакована с помощью UPX и ezuri, шифруя таким образом содержимое. Все это создает сложности при определении вредоноса через AV. Далее запускается руткит для сокрытия новых процессов.
В итоге получается, что вся вредоносная активность выполняется из памяти, что вынуждает идти по пути отслеживания run-time, а не проверки имаджей.
Тут, кстати, для меня было открытие, что оказывается Aqua выпустила недавно новый open-source инструмент Tracee, который использует eBPF для отслеживания сисколов.
#k8s #ops #docker #attack
Forwarded from Технологический Болт Генона
Выложены доклады с Cloud Native Security Day North America 2020
https://www.youtube.com/playlist?list=PLj6h78yzYM2Otk8i3oB_VafP7IwB6LdaT
Программа доступна тут
https://events.linuxfoundation.org/cloud-native-security-day-north-america/program/schedule/
https://www.youtube.com/playlist?list=PLj6h78yzYM2Otk8i3oB_VafP7IwB6LdaT
Программа доступна тут
https://events.linuxfoundation.org/cloud-native-security-day-north-america/program/schedule/
BenchmarkingApproachtoCompareWebApplicationsStaticAnalysisTools.pdf
721.6 KB
Learn_Kubernetes_Security.epub
9.2 MB
Learn Kubernetes Security, Kaizhe Huang
Книга от ресерчера Sysdig, мейнтейнера Falco, kube-psp-advor и участника CNCF.
Изучение Kubernetes Security начинается со знакомства с архитектурой Kubernetes и сетевой моделью. Затем автор переходит к модели угроз Kubernetes и защите кластеров. Поднимаются такие темы, как аутентификация, авторизация, сканирование образов, мониторинг ресурсов, защита компонентов кластера (kube-apiserver, CoreDNS и kubelet) и подов (усиление образа, контекста безопасности и PodSecurityPolicy). Есть также практические примеры как использовать инструменты Anchore, Prometheus, OPA и Falco.
#k8s #literature #ops
Книга от ресерчера Sysdig, мейнтейнера Falco, kube-psp-advor и участника CNCF.
Изучение Kubernetes Security начинается со знакомства с архитектурой Kubernetes и сетевой моделью. Затем автор переходит к модели угроз Kubernetes и защите кластеров. Поднимаются такие темы, как аутентификация, авторизация, сканирование образов, мониторинг ресурсов, защита компонентов кластера (kube-apiserver, CoreDNS и kubelet) и подов (усиление образа, контекста безопасности и PodSecurityPolicy). Есть также практические примеры как использовать инструменты Anchore, Prometheus, OPA и Falco.
#k8s #literature #ops
Connaisseur - Container Image Signatures in Kubernetes
connaisseur - open-source утилита, представляющая из себя admition controller в kubernetes, которая позволяет реализовать проверку подписей образов. Подробнее об этом можно прочитать в статье Container Image Signatures in Kubernetes. Альтернативный вариант, как это можно сделать - использовать ImagePolicyWebhook и Anchore Engine. Об этом в частности рассказывали коллеги из mail.ru на своей конференции. Еще один вариант - Portieris.
#k8s #ops
connaisseur - open-source утилита, представляющая из себя admition controller в kubernetes, которая позволяет реализовать проверку подписей образов. Подробнее об этом можно прочитать в статье Container Image Signatures in Kubernetes. Альтернативный вариант, как это можно сделать - использовать ImagePolicyWebhook и Anchore Engine. Об этом в частности рассказывали коллеги из mail.ru на своей конференции. Еще один вариант - Portieris.
#k8s #ops
Немного любопытной статистики с GitHub Universe 2020 - Developer Asia Pacific, который идет прямо сейчас.
#dev
#dev
OpenSSF CVE Benchmark
День назад OpenSSF релизнули проект OpenSSF CVE Benchmark. Основная цель проекта - сравнивать инструменты SAST на реальных кодовых базах, в которых была найдена CVE до и после патча. По сути, это репо, содержащее скрипты, которые запускают на текущий момент ESLint, NodeJSScan и CodeQL против различных open-source проектов на GitHub. Ссылки, версии и уязвимость содержатся в JSON-файлах для каждой CVE (пока что только JavaScript и TypeScript). После запуска сканирования автоматически генерируется сравнение результатов в веб-морде с указанием на ложные срабатывания. В roadmap обещают больше тулов и CVE.
Похожий проект 4 года назад делала команда OWASP. Они написали 2740 test cases на Java и натравили на них различные инструменты SAST, в том числе туда попал DAST - OWASP ZAP. Среди SAST были и коммерческие инструменты. Запустить бенчмарки можно и сейчас на их репо. В отличие от OpenSSF бенчмарки от OWASP содержат непосредственно сам код, а не ссылку на репо.
#sast #dev
День назад OpenSSF релизнули проект OpenSSF CVE Benchmark. Основная цель проекта - сравнивать инструменты SAST на реальных кодовых базах, в которых была найдена CVE до и после патча. По сути, это репо, содержащее скрипты, которые запускают на текущий момент ESLint, NodeJSScan и CodeQL против различных open-source проектов на GitHub. Ссылки, версии и уязвимость содержатся в JSON-файлах для каждой CVE (пока что только JavaScript и TypeScript). После запуска сканирования автоматически генерируется сравнение результатов в веб-морде с указанием на ложные срабатывания. В roadmap обещают больше тулов и CVE.
Похожий проект 4 года назад делала команда OWASP. Они написали 2740 test cases на Java и натравили на них различные инструменты SAST, в том числе туда попал DAST - OWASP ZAP. Среди SAST были и коммерческие инструменты. Запустить бенчмарки можно и сейчас на их репо. В отличие от OpenSSF бенчмарки от OWASP содержат непосредственно сам код, а не ссылку на репо.
#sast #dev
Semgrep for Cloud Security
Semgrep - инструмент статического анализа кода и всевозможных конфигурационных файлов. Он позволяет задавать паттерны, согласно которым будет осуществляться поиск той или иной конструкции в файле. В частности, учитывать одновременно сразу несколько конструкций для сокращения ложных срабатываний. На практике при анализе исходных кодов semgrep выдает все же достаточно много фолзов, уступая более умным инструментам вроде codeql.
Другое, отличное на мой взгляд, применение semgrep - terraform и kubernetes. В сравнении с OPA Conftest semgrep обладает более доступным языком описания запросов. Вот пример того, как могли бы выглядеть правила. Часть некоторых правил, с которых можно было бы начать, уже можно найти в репо semgrep-rules. Еще у semgrep есть удобный веб-интерфейс для тестирования правил.
#k8s #terraform #sast #ops #opa
Semgrep - инструмент статического анализа кода и всевозможных конфигурационных файлов. Он позволяет задавать паттерны, согласно которым будет осуществляться поиск той или иной конструкции в файле. В частности, учитывать одновременно сразу несколько конструкций для сокращения ложных срабатываний. На практике при анализе исходных кодов semgrep выдает все же достаточно много фолзов, уступая более умным инструментам вроде codeql.
Другое, отличное на мой взгляд, применение semgrep - terraform и kubernetes. В сравнении с OPA Conftest semgrep обладает более доступным языком описания запросов. Вот пример того, как могли бы выглядеть правила. Часть некоторых правил, с которых можно было бы начать, уже можно найти в репо semgrep-rules. Еще у semgrep есть удобный веб-интерфейс для тестирования правил.
#k8s #terraform #sast #ops #opa
Связь между сервисами безопасности в AWS
https://twitter.com/0xdabbad00/status/1336494125617541120
https://twitter.com/savgoust/status/1336549148502286340/photo/1
Также интересно отметить свежевышедший AWS Audit Manager.
За доп. ссылку спасибо @aws_notes
Похожую визуализацию я когда-то публиковал у себя.
#aws #ops
https://twitter.com/0xdabbad00/status/1336494125617541120
https://twitter.com/savgoust/status/1336549148502286340/photo/1
Также интересно отметить свежевышедший AWS Audit Manager.
За доп. ссылку спасибо @aws_notes
Похожую визуализацию я когда-то публиковал у себя.
#aws #ops
Security: KubeCon + CloudNativeCon North America 2020 - Virtual
Все сильнее ощущается конец года - интересных анонсов и ресерчей все меньше, поэтому предлагаю взглянуть на доклады последнего Kubecon по части безопасности.
- Using Open Policy Agent to Meet Evolving Policy Requirements - доклад о том, что такое OPA, как работает и какие правила вообще можно написать
- DevOps All the Things: Creating a Pipeline to Validate Your OPA Policies - доклад про выстраивание модульного и интеграционного тестирования политик OPA
- Customizing OPA for a "Perfect Fit" Authorization Sidecar - о том, как можно использовать API Golang OPA для собственных нужд и кастомизации
- Также Aqua Security еще раз рассказала свой доклад Handling Container Vulnerabilities with Open Policy Agent о том, как можно интегрировать Trivy и OPA вместе в виде операторов k8s.
К сожалению, выложили далеко не все доклады. В частности, нет доклада Secure Policy Distribution With OPA. Автор этого доклада также известен своим другим крутым докладом Open Policy Agent Deep Dive.
- Кроме OPA затрагивали также тему mTLS и потенциальных подводных камней - PKI the Wrong Way: Simple TLS Mistakes and Surprising Consequences
- Не забыли и про Falco. Интересно, что на Kubecon был доклад про масштабирование Falco на 100к контейнеров (Security Kill Chain Stages in a 100k+ Daily Container Environment with Falco) и обход правил Falco инженером из Sysdig 🤷♂️ (Bypass Falco)
Программа конференции
Другие доклады
#dev #ops #k8s #talks #opa
Все сильнее ощущается конец года - интересных анонсов и ресерчей все меньше, поэтому предлагаю взглянуть на доклады последнего Kubecon по части безопасности.
- Using Open Policy Agent to Meet Evolving Policy Requirements - доклад о том, что такое OPA, как работает и какие правила вообще можно написать
- DevOps All the Things: Creating a Pipeline to Validate Your OPA Policies - доклад про выстраивание модульного и интеграционного тестирования политик OPA
- Customizing OPA for a "Perfect Fit" Authorization Sidecar - о том, как можно использовать API Golang OPA для собственных нужд и кастомизации
- Также Aqua Security еще раз рассказала свой доклад Handling Container Vulnerabilities with Open Policy Agent о том, как можно интегрировать Trivy и OPA вместе в виде операторов k8s.
К сожалению, выложили далеко не все доклады. В частности, нет доклада Secure Policy Distribution With OPA. Автор этого доклада также известен своим другим крутым докладом Open Policy Agent Deep Dive.
- Кроме OPA затрагивали также тему mTLS и потенциальных подводных камней - PKI the Wrong Way: Simple TLS Mistakes and Surprising Consequences
- Не забыли и про Falco. Интересно, что на Kubecon был доклад про масштабирование Falco на 100к контейнеров (Security Kill Chain Stages in a 100k+ Daily Container Environment with Falco) и обход правил Falco инженером из Sysdig 🤷♂️ (Bypass Falco)
Программа конференции
Другие доклады
#dev #ops #k8s #talks #opa
YouTube
Using Open Policy Agent to Meet Evolving Policy Requirements - Jeremy Rickard, VMware
Don’t miss out! Join us at our upcoming event: KubeCon + CloudNativeCon Europe 2021 Virtual from May 4–7, 2021. Learn more at https://kubecon.io. The conference features presentations from developers and end users of Kubernetes, Prometheus, Envoy, and all…
How To Protect Sensitive Data in Terraform
Гайд, как хранить и прятать sensitive информацию в Terraform. В качестве безопасного хранилища данных используется DigitalOcean Space. Использование удаленного хранилища вместо локального позволит скрыть информацию
https://www.digitalocean.com/community/tutorials/how-to-protect-sensitive-data-in-terraform
#ops #terraform
Гайд, как хранить и прятать sensitive информацию в Terraform. В качестве безопасного хранилища данных используется DigitalOcean Space. Использование удаленного хранилища вместо локального позволит скрыть информацию
terraform.tfstate
от злоумышленника. Также применяется маскирование данных через инструмент tfmask, чтобы sensitive данные не отображались в terraform plan
и terraform apply
.https://www.digitalocean.com/community/tutorials/how-to-protect-sensitive-data-in-terraform
#ops #terraform
GitHub
GitHub - cloudposse/tfmask: Terraform utility to mask select output from `terraform plan` and `terraform apply`
Terraform utility to mask select output from `terraform plan` and `terraform apply` - GitHub - cloudposse/tfmask: Terraform utility to mask select output from `terraform plan` and `terraform apply`
Risk8s Business: Risk Analysis of Kubernetes Clusters
Mark Manning, автор статей и докладов про атаки на kubernetes, совместно с Clint Fiber, автором блога по AppSec/DevSecOps, выпустили раздел про анализ рисков k8s.
Анализ рисков состоит из двух важных этапов:
- Сбор информации об окружении. Сюда входит сбор всевозможных ресурсов k8s и оценка его сложности, способ его развертывания, используемые CNI, логи, RBAC-правила, сторонние сервисы (CI/CD, registry, vault)
- Анализ возможных рисков. На основе собранной информации, выявляются риски, связанные с мисконфигурацией - доступные сервисы, уязвимости кластера и хостов по итогам проверки CIS, некорректные NP, доступность директорий из подов и так далее.
Было также упомянуто много интересных статей и утилит, которые я опишу в последующих постах.
#k8s #attack #threatmodeling #ops
Mark Manning, автор статей и докладов про атаки на kubernetes, совместно с Clint Fiber, автором блога по AppSec/DevSecOps, выпустили раздел про анализ рисков k8s.
Анализ рисков состоит из двух важных этапов:
- Сбор информации об окружении. Сюда входит сбор всевозможных ресурсов k8s и оценка его сложности, способ его развертывания, используемые CNI, логи, RBAC-правила, сторонние сервисы (CI/CD, registry, vault)
- Анализ возможных рисков. На основе собранной информации, выявляются риски, связанные с мисконфигурацией - доступные сервисы, уязвимости кластера и хостов по итогам проверки CIS, некорректные NP, доступность директорий из подов и так далее.
Было также упомянуто много интересных статей и утилит, которые я опишу в последующих постах.
#k8s #attack #threatmodeling #ops