Software Supply Chain: Awesome
Всем привет!
Герой сегодняшнего поста – Awesome подборка, посвященная тематике защиты цепочек поставки программного обеспечения.
Внутри можно найти:
🍭 Материалы от «организаций» (NIST, OWASP, OpenSSF и т.д.)
🍭 Стандарты, frameworks и прочие best practices
Угрозы и атаки на цепочки поставки ПО
🍭 SBOM, VEX, KEV
🍭 Отчеты, статьи, podcast
🍭 Ссылки на полезные GitHub Repo и не только
Материалов очень много, на любой вкус и цвет. Уверены, что Вы найдете для себя что-то интересное и полезное.
Всем привет!
Герой сегодняшнего поста – Awesome подборка, посвященная тематике защиты цепочек поставки программного обеспечения.
Внутри можно найти:
🍭 Материалы от «организаций» (NIST, OWASP, OpenSSF и т.д.)
🍭 Стандарты, frameworks и прочие best practices
Угрозы и атаки на цепочки поставки ПО
🍭 SBOM, VEX, KEV
🍭 Отчеты, статьи, podcast
🍭 Ссылки на полезные GitHub Repo и не только
Материалов очень много, на любой вкус и цвет. Уверены, что Вы найдете для себя что-то интересное и полезное.
GitHub
GitHub - vishalgarg-sec/Software-Supply-Chain-Security: A compilation of Software Supply Chain Security resources including initiatives…
A compilation of Software Supply Chain Security resources including initiatives, standards, regulations, organizations, vendors, tooling, books, articles and a plethora of learning resources from t...
GitHub Actions Goat
Всем привет!
По ссылке можно ознакомиться с заведомо-уязвимым проектом для эксплуатации уязвимостей в GitHub Actions.
На текущий момент можно реализовать такие сценарии, как:
🍭 Компрометация исходного кода и учетных данных
🍭 Изменение исходного кода или артефактов во время сборки
🍭 Отсутствие корректного журналирования CI/CD конвейера
🍭 Использование «долгоживущих» учетных данных
🍭 Применение недоверенных GitHub Actions от 3rd party
Для каждого сценария приводится сопроводительная информация, поясняющая проблематику, ссылки на лучшие практики по защите и примеры того, как можно настроить GitHub Actions более правильно и безопасно.
Всем привет!
По ссылке можно ознакомиться с заведомо-уязвимым проектом для эксплуатации уязвимостей в GitHub Actions.
На текущий момент можно реализовать такие сценарии, как:
🍭 Компрометация исходного кода и учетных данных
🍭 Изменение исходного кода или артефактов во время сборки
🍭 Отсутствие корректного журналирования CI/CD конвейера
🍭 Использование «долгоживущих» учетных данных
🍭 Применение недоверенных GitHub Actions от 3rd party
Для каждого сценария приводится сопроводительная информация, поясняющая проблематику, ссылки на лучшие практики по защите и примеры того, как можно настроить GitHub Actions более правильно и безопасно.
GitHub
GitHub - step-security/github-actions-goat: GitHub Actions Goat: Deliberately Vulnerable GitHub Actions CI/CD Environment
GitHub Actions Goat: Deliberately Vulnerable GitHub Actions CI/CD Environment - step-security/github-actions-goat
👍4🔥3
Действительно ли Kubernetes лучше работает на "голом железе", чем на виртуальных машинах?
Вы когда-нибудь задумывались над тем, насколько сильно виртуализация влияет на производительность? В этой статье автор решил проверить как работает Kubernetes на bare-metal и в виртуальной среде. Сразу скажем: результаты впечатляют!
Тестировались такие показатели, как:
🍭Скорость и утилизация CPU
🍭Задержки в оперативной памяти
🍭Количество транзакций в секунду в дисковой подсистеме
🍭Пропускная способность и задержки в сети
Тесты показали, что кластер, развернутый на bare-metal:
в 2️⃣ раза производительнее в части CPU,
более чем в 2️⃣ раза лучше показал себя при работе с дисковой подсистемой
в 3️⃣ раза лучше в части работы с оперативной памятью,
более чем в 5️⃣(sic!) раз лучше в производительности сети!
Конечно, все тесты отчасти синтетические и реальные показатели в продуктовых средах могут отличаться, но в любом случае, если для ваших приложений нужна максимальная производительность, то стоит всерьёз рассмотреть вариант bare-metal инсталляций!
Вы когда-нибудь задумывались над тем, насколько сильно виртуализация влияет на производительность? В этой статье автор решил проверить как работает Kubernetes на bare-metal и в виртуальной среде. Сразу скажем: результаты впечатляют!
Тестировались такие показатели, как:
🍭Скорость и утилизация CPU
🍭Задержки в оперативной памяти
🍭Количество транзакций в секунду в дисковой подсистеме
🍭Пропускная способность и задержки в сети
Тесты показали, что кластер, развернутый на bare-metal:
в 2️⃣ раза производительнее в части CPU,
более чем в 2️⃣ раза лучше показал себя при работе с дисковой подсистемой
в 3️⃣ раза лучше в части работы с оперативной памятью,
более чем в 5️⃣(sic!) раз лучше в производительности сети!
Конечно, все тесты отчасти синтетические и реальные показатели в продуктовых средах могут отличаться, но в любом случае, если для ваших приложений нужна максимальная производительность, то стоит всерьёз рассмотреть вариант bare-metal инсталляций!
The New Stack
Does Kubernetes Really Perform Better on Bare Metal vs. VMs?
A detailed comparison of CPU, RAM, storage and network performance between Kubernetes clusters on virtual machines and bare metal.
👍8🔥5🤩2👎1😁1🤔1
ArgoCD Threat Model.pdf
1.6 MB
ArgoCD Threat Model
Всем привет!
В приложении можно найти файл (~ 47 страниц), в котором рассматриваются вопросы обеспечения информационной безопасности использования ArgoCD.
Рассматриваются такие аспекты как:
🍭 Data. Конфиденциальная информация, характерная для ArgoCD Deployments (Secrets, ConfigMaps, Credentials и т.д.)
🍭 Threats Actors. Рассматриваются как внутренние, так и внешние нарушители, обладающие различными полномочиями
🍭 Threats. В материале приведено порядка 19 угроз. Например, хранение Initial admin password в качестве Kubernetes Secret или Control plane is deployed in non HA Mode
Для каждой угрозы доступно небольшое описание и рекомендации по сокращению вероятности ее реализации. В приложении можно найти детализацию по нарушителям – описание их возможностей/мотивации и примеры Attack Trees
Всем привет!
В приложении можно найти файл (~ 47 страниц), в котором рассматриваются вопросы обеспечения информационной безопасности использования ArgoCD.
Рассматриваются такие аспекты как:
🍭 Data. Конфиденциальная информация, характерная для ArgoCD Deployments (Secrets, ConfigMaps, Credentials и т.д.)
🍭 Threats Actors. Рассматриваются как внутренние, так и внешние нарушители, обладающие различными полномочиями
🍭 Threats. В материале приведено порядка 19 угроз. Например, хранение Initial admin password в качестве Kubernetes Secret или Control plane is deployed in non HA Mode
Для каждой угрозы доступно небольшое описание и рекомендации по сокращению вероятности ее реализации. В приложении можно найти детализацию по нарушителям – описание их возможностей/мотивации и примеры Attack Trees
👍17❤6
Автоматическое создание «snapshot» компрометированного контейнера
Всем привет!
Эфемерность контейнеров, помимо плюсов, не лишена и минусов. Особенно для информационной безопасности и forensics процессов в частности. Иногда хочется покопаться «внутри» и понять, а что же там такого произошло? Однако, контейнера уже давно нет и трудно что-либо сказать. Для решения подобной задачи можно использовать observability решения, которые могут записывать все, что «происходило внутри». А можно соорудить что-то «из подручных средств». Так и поступили Авторы статьи.
Команда собрала следующее решение:
🍭 Falco. При помощи него осуществляется идентификация «вредоносных событий» и дается дальнейшая команда по созданию «snapshot’a» контейнера
🍭 OpenFAAS. Функция, которая получает команду от Falco и взаимодействует с CRIU для «сохранения» контейнера
🍭 CRIU (Checkpoint/Restore in Userspace). Как раз тот самый инструмент, который позволяет создать
«snapshot» за счет функционала checkpoint
Если захочется поэкспериментировать и воссоздать аналогичный сценарий – в статье все для этого есть. Описаны технические ограничения, установка необходимых компонентов, код функции и пример запуска тестового сценария.
Всем привет!
Эфемерность контейнеров, помимо плюсов, не лишена и минусов. Особенно для информационной безопасности и forensics процессов в частности. Иногда хочется покопаться «внутри» и понять, а что же там такого произошло? Однако, контейнера уже давно нет и трудно что-либо сказать. Для решения подобной задачи можно использовать observability решения, которые могут записывать все, что «происходило внутри». А можно соорудить что-то «из подручных средств». Так и поступили Авторы статьи.
Команда собрала следующее решение:
🍭 Falco. При помощи него осуществляется идентификация «вредоносных событий» и дается дальнейшая команда по созданию «snapshot’a» контейнера
🍭 OpenFAAS. Функция, которая получает команду от Falco и взаимодействует с CRIU для «сохранения» контейнера
🍭 CRIU (Checkpoint/Restore in Userspace). Как раз тот самый инструмент, который позволяет создать
«snapshot» за счет функционала checkpoint
Если захочется поэкспериментировать и воссоздать аналогичный сценарий – в статье все для этого есть. Описаны технические ограничения, установка необходимых компонентов, код функции и пример запуска тестового сценария.
Medium
Navigating Kubernetes Incident Response with Falco, CRIU and OpenFaaS
In this blog we delve into creating a simple, yet effective, incident response mechanism within Kubernetes.
👍12❤2
VulnerableCode: база данных по уязвимостям в пакетах
Всем привет!
VulnerableCode – проект, цель которого агрегировать информацию по CVE в пакетах из различных источников. Основная идеология проекта заключается в том, что подобная информация должна быть открыта для сообщества и удобна для использования.
Помимо «традиционной» базы данных от NIST, VulnerableCode агрегирует данные по
Также проект предоставляет web-интерфейс и REST API, которые можно использовать для автоматизации процесса управления уязвимостями. Кстати, можно посмотреть, что он из себя представляет по ссылке (можно искать как по пакетам через
Важно: проект пока находится в стадии доработки и не вся информация может отображаться «полностью».
Больше подробностей, как обычно – либо в документации, либо на GitHub Repo проекта.
Всем привет!
VulnerableCode – проект, цель которого агрегировать информацию по CVE в пакетах из различных источников. Основная идеология проекта заключается в том, что подобная информация должна быть открыта для сообщества и удобна для использования.
Помимо «традиционной» базы данных от NIST, VulnerableCode агрегирует данные по
Rust, npm, ubuntu, openssl и не только (с полным перечнем можно ознакомиться тут).Также проект предоставляет web-интерфейс и REST API, которые можно использовать для автоматизации процесса управления уязвимостями. Кстати, можно посмотреть, что он из себя представляет по ссылке (можно искать как по пакетам через
purl, так и по CVE ID).Важно: проект пока находится в стадии доработки и не вся информация может отображаться «полностью».
Больше подробностей, как обычно – либо в документации, либо на GitHub Repo проекта.
GitHub
GitHub - aboutcode-org/vulnerablecode: A free and open vulnerabilities database and the packages they impact. And the tools to…
A free and open vulnerabilities database and the packages they impact. And the tools to aggregate and correlate these vulnerabilities. Sponsored by NLnet https://nlnet.nl/project/vulnerabilitydatab...
👍3❤2
Не Golang'ом единым...
Встречайте: Youki (яп. 容器 - контейнер). Новый container runtime, написанный на Rust!
"Rust один из лучших языков для реализации oci-runtime спецификаций. Много крутых контейнерных тулзов написано на Go. Однако, container runtime используют SYSCALL'ы, которые не так то легко реализовать на Go (например namespaces(7) и fork(2). На Rust это сделать гораздо проще!"
По заверениям авторов, Youki потенциально быстрее и использует меньше памяти, чем runc.
Поддерживаются:
🍭Containerd
🍭Docker
🍭Podman
Решение полностью совместимо с OCI Runtime Spec.
Проект уже собрал 5.5к звезд на Github и имеет внушительное количество контрибьютеров.
Учитывая активное развитие языка, ожидаем версию Kubernetes на Rust😁
Встречайте: Youki (яп. 容器 - контейнер). Новый container runtime, написанный на Rust!
"Rust один из лучших языков для реализации oci-runtime спецификаций. Много крутых контейнерных тулзов написано на Go. Однако, container runtime используют SYSCALL'ы, которые не так то легко реализовать на Go (например namespaces(7) и fork(2). На Rust это сделать гораздо проще!"
По заверениям авторов, Youki потенциально быстрее и использует меньше памяти, чем runc.
Поддерживаются:
🍭Containerd
🍭Docker
🍭Podman
Решение полностью совместимо с OCI Runtime Spec.
Проект уже собрал 5.5к звезд на Github и имеет внушительное количество контрибьютеров.
Учитывая активное развитие языка, ожидаем версию Kubernetes на Rust😁
GitHub
GitHub - youki-dev/youki: A container runtime written in Rust
A container runtime written in Rust. Contribute to youki-dev/youki development by creating an account on GitHub.
👍9🔥4🤩4❤2👎2
DevSecOps Pipelines
Всем привет!
Неплохой long read на предстоящие выходные! Если верить «оценке», то потребуется ~ 53 минуты, чтобы прочесть статью.
В ней собраны примеры исходного кода на
Например:
🍭 Создание и анализ проекта с SonarQube (взаимодействие через REST API)
🍭 Анализ кода с использованием Semgrep (взаимодействие через
🍭 Запуск сканирования web-приложения с использованием ZAP
🍭 Анализ образов контейнеров с использованием Trivy
🍭 Запись и получение секретов из HashiCorp Vault через
🍭 Подпись артефактов и еще много-много-много чего, рекомендуем ознакомиться лично
Для каждого сценария приводится описание workflow и небольшие рекомендации как можно его улучшить. Например, анализировать результаты, отправляя их в сторонние системы с использованием того же REST API.
В материале нет ничего революционного: если вы писали собственные
Всем привет!
Неплохой long read на предстоящие выходные! Если верить «оценке», то потребуется ~ 53 минуты, чтобы прочесть статью.
В ней собраны примеры исходного кода на
Python, которые можно использовать для запуска анализаторов и последующей обработки результатов.Например:
🍭 Создание и анализ проекта с SonarQube (взаимодействие через REST API)
🍭 Анализ кода с использованием Semgrep (взаимодействие через
cmd)🍭 Запуск сканирования web-приложения с использованием ZAP
🍭 Анализ образов контейнеров с использованием Trivy
🍭 Запись и получение секретов из HashiCorp Vault через
hvac🍭 Подпись артефактов и еще много-много-много чего, рекомендуем ознакомиться лично
Для каждого сценария приводится описание workflow и небольшие рекомендации как можно его улучшить. Например, анализировать результаты, отправляя их в сторонние системы с использованием того же REST API.
В материале нет ничего революционного: если вы писали собственные
jobs с проверками, то увидите знакомые команды. Однако, приятно, когда все «под рукой» и «рядом» 😊Devsecopsguides
DevSecOps Pipelines
In the fast-paced world of software development, ensuring the security and reliability of applications is a top priority.
👍16
Советы по Custom Controller для Kubernetes
Всем привет!
«В любой непонятной ситуации – пиши свой operator!». Как и в любой шутке, в этой есть доля правды, ведь Kubernetes Operators крайне сильный инструмент, который позволяет расширить функциональность Kubernetes так, как нужно именно Вам.
Однако, разработка operators, поначалу, может быть не очень понятной и простой. Сегодняшняя статья направлена на то, чтобы немного упростить порог вхождения.
В ней собраны следующие советы:
🍭 Обработка ресурсов, помеченных для удаления
🍭 Фильтрация событий, влияющих на реконсиляцию
🍭 Binding ресурсов с использованием ownership
🍭 Запись событий
🍭 Проверка того, запускается ли operator в Red Hat OpenShift и не только
Всего в статье собрано 8 советов, для каждого из которых приводится описание, потребность в использовании и, конечно же, примеры исходного кода с пояснениями.
Всем привет!
«В любой непонятной ситуации – пиши свой operator!». Как и в любой шутке, в этой есть доля правды, ведь Kubernetes Operators крайне сильный инструмент, который позволяет расширить функциональность Kubernetes так, как нужно именно Вам.
Однако, разработка operators, поначалу, может быть не очень понятной и простой. Сегодняшняя статья направлена на то, чтобы немного упростить порог вхождения.
В ней собраны следующие советы:
🍭 Обработка ресурсов, помеченных для удаления
🍭 Фильтрация событий, влияющих на реконсиляцию
🍭 Binding ресурсов с использованием ownership
🍭 Запись событий
🍭 Проверка того, запускается ли operator в Red Hat OpenShift и не только
Всего в статье собрано 8 советов, для каждого из которых приводится описание, потребность в использовании и, конечно же, примеры исходного кода с пояснениями.
Medium
Kubernetes Custom Controllers Recipes for Beginners
Explaining the most common Kubernetes custom controllers development scenarios that can frustrate you as a beginner.
🔥3👍1
DevNetOps
Всем привет!
Автоматизация управлением сетевыми железками всегда вызывала много вопросов. Есть несколько решений:
🍭 Вендорские решения - предлагают большую функциональность, однако и стоят они достаточно дорого.
🍭 Скрипты и костыли - популярное решение, к которому приходит со временем каждый админ.
Но мир движется вперед. IaC и GitOps приходят из мира IT и в мир сетей. Профильные издания уже по полной используют термин DevNetOps.
В статье автор попытался разобраться, как можно управлять сетевыми устройствами из пайплайнов, на примере GitlabCI и Arista cEOS.
Всем привет!
Автоматизация управлением сетевыми железками всегда вызывала много вопросов. Есть несколько решений:
🍭 Вендорские решения - предлагают большую функциональность, однако и стоят они достаточно дорого.
🍭 Скрипты и костыли - популярное решение, к которому приходит со временем каждый админ.
Но мир движется вперед. IaC и GitOps приходят из мира IT и в мир сетей. Профильные издания уже по полной используют термин DevNetOps.
В статье автор попытался разобраться, как можно управлять сетевыми устройствами из пайплайнов, на примере GitlabCI и Arista cEOS.
Welcome to the World of Tomorrow
Network CI and Open Source
Introduction Wow, it’s been a long time since my last blog post. I recently attended the first AutoCon event focusing on network automation. Long story short, it was terrific. Check it out and be on the lookout for the next one. Shortly after AutoCon, two…
🔥6👍4❤🔥1
Bash Golf
Всем привет!
В современном мире господствующего DevOps'а каждый пишет множество скриптов. Каждый из них, по сути, маленькая программа, как и завещали нам отцы Unix.
В цикле статей автор предлагает свои "маленькие программы" и хитрости на языке Bash для решения различных задач.
🍭 Умеет ли Bash отправлять TCP запросы без дополнительных утилит?
🍭 Есть ли встроенная переменная, со случайным числом?
🍭 Как экспортировать функцию в xargs?
Прочитать все части цикла можно по ссылкам ниже.
Часть 1
Часть 2
Часть 3
Всем привет!
В современном мире господствующего DevOps'а каждый пишет множество скриптов. Каждый из них, по сути, маленькая программа, как и завещали нам отцы Unix.
В цикле статей автор предлагает свои "маленькие программы" и хитрости на языке Bash для решения различных задач.
🍭 Умеет ли Bash отправлять TCP запросы без дополнительных утилит?
🍭 Есть ли встроенная переменная, со случайным числом?
🍭 Как экспортировать функцию в xargs?
Прочитать все части цикла можно по ссылкам ниже.
Часть 1
Часть 2
Часть 3
👍8🔥6🥰2
Git, SVN и все все все
Всем привет!
В последние годы мы все чаще сталкиваемся с необходимостью замены устаревших решений на более современные. Одно из таких решений - Subversion, когда-то бывший(а для кого-то и сейчас являющийся), конкурент Git.
Git стал де-факто индустриальным стандартом, многие разработчики умеют работать только с ним. Возникает вопрос миграции
В статье от разработчиков Git достаточно подробно описывается:
🍭Как мигрировать с Subversion, Mercurial и Perforce в Git
🍭Как перенести коммиты, чтобы разработчики и не заметили
🍭Как автоматизировать эти задачи
Всем привет!
В последние годы мы все чаще сталкиваемся с необходимостью замены устаревших решений на более современные. Одно из таких решений - Subversion, когда-то бывший(а для кого-то и сейчас являющийся), конкурент Git.
Git стал де-факто индустриальным стандартом, многие разработчики умеют работать только с ним. Возникает вопрос миграции
В статье от разработчиков Git достаточно подробно описывается:
🍭Как мигрировать с Subversion, Mercurial и Perforce в Git
🍭Как перенести коммиты, чтобы разработчики и не заметили
🍭Как автоматизировать эти задачи
👍3🔥3👏3
Minder: защита repos, артефактов и зависимостей
Всем привет!
Minder – open source проект от Stacklok, которые позволяет повысить уровень защищенности Компаний против software supply chain атак. Пока что решение работает только с GitHub, однако в планах есть и такое «In the future, Minder will support other source control and artifact repositories».
Основными функциями являются:
🍭 Управление конфигурациями repo, параметрами его безопасности
🍭 Аттестация артефактов: контроль подписей артефактов, их целостности
🍭 Управление зависимостями: за счет интеграции с Trusty (общая информация по пакету), Minder позволяет реализовать policy-driven подход к управлению зависимостями (например, на основании уровня риска)
🍭 Уведомления: отправка сообщений о нарушениях политик или auto remediation (там, где это возможно)
Представляет из себя cli-утилиту и сервер, обрабатывающий запросы. Сервер может быть облачным (только для public repo), а если надо – можно развернуть его локально. Web-интерфейс отсутствует, только консоль и, конечно же, YAML!(возможно, кто-то сделает видео со Стивом Балмером, где он говорит YAML, YAML, YAML, YAML… 😊)
Процесс работы примерно такой: установка Minder, регистрация repository, создание profiles и rules (с перечнем из коробки можно ознакомиться тут) с последующим применением и анализов результатов. Можно создавать свои правила, подробнее про это написано в статье. И, как всегда, больше подробностей можно найти в документации.
Важно: пока что Minder (кстати, как и Trusty), находится в стадии «experimental»
Всем привет!
Minder – open source проект от Stacklok, которые позволяет повысить уровень защищенности Компаний против software supply chain атак. Пока что решение работает только с GitHub, однако в планах есть и такое «In the future, Minder will support other source control and artifact repositories».
Основными функциями являются:
🍭 Управление конфигурациями repo, параметрами его безопасности
🍭 Аттестация артефактов: контроль подписей артефактов, их целостности
🍭 Управление зависимостями: за счет интеграции с Trusty (общая информация по пакету), Minder позволяет реализовать policy-driven подход к управлению зависимостями (например, на основании уровня риска)
🍭 Уведомления: отправка сообщений о нарушениях политик или auto remediation (там, где это возможно)
Представляет из себя cli-утилиту и сервер, обрабатывающий запросы. Сервер может быть облачным (только для public repo), а если надо – можно развернуть его локально. Web-интерфейс отсутствует, только консоль и, конечно же, YAML!
Процесс работы примерно такой: установка Minder, регистрация repository, создание profiles и rules (с перечнем из коробки можно ознакомиться тут) с последующим применением и анализов результатов. Можно создавать свои правила, подробнее про это написано в статье. И, как всегда, больше подробностей можно найти в документации.
Важно: пока что Minder (кстати, как и Trusty), находится в стадии «experimental»
GitHub
GitHub - mindersec/minder: Software Supply Chain Security Platform
Software Supply Chain Security Platform. Contribute to mindersec/minder development by creating an account on GitHub.
❤4👍4🔥3
Написание Semgrep-правил: основы
Всем привет!
В статье описываются основы написания собственных правил анализа исходного кода с использованием Semgrep.
Например:
🍭 Поиск patterns
🍭 Адаптация patterns для более точного поиска
🍭 Написание правил для поиска ошибок аутентификации в API Endpoints
🍭 Передача пользовательских данных в качестве параметров в
Для каждого правила приводится его описание и пример реализации, а также результаты которые оно сможет найти.
Всем привет!
В статье описываются основы написания собственных правил анализа исходного кода с использованием Semgrep.
Например:
🍭 Поиск patterns
🍭 Адаптация patterns для более точного поиска
🍭 Написание правил для поиска ошибок аутентификации в API Endpoints
🍭 Передача пользовательских данных в качестве параметров в
os.system() и не толькоДля каждого правила приводится его описание и пример реализации, а также результаты которые оно сможет найти.
❤3🔥1
Fuzzing на примере использования libFuzzer
Всем привет!
Fuzzing – интересная, но далеко не самая очевидная тема, особенно «в начале пути». Чтобы чуть упростить погружение предлагаем Вашему вниманию статью. В ней собрана как теоретическая информация, так и пара практических примеров.
Рассматривается следующий «процесс»:
🍭 Инструментация. Грубо говоря – добавление в код или в исполняемый файл средств, которые позволяют понять какие части кода были выполнены в момент тестирования (code coverage)
🍭 Генерация входных данных. Первичные данные, которые будут использованы в дальнейшем – можно генерировать как «руками», так и с использованием средств автоматизации
🍭 Мутация входных данных. Генерация новых тестовых данных за счет изменения существующих
🍭 Тестирование. Применение сгенерированных тестовых данных для анализа программного обеспечения
🍭 Сбор обратной связи. Анализ code coverage, запуск повторных тестов для получения лучшего результата
Для указанного выше «процесса» Автор статьи создает PoC на примере минималистичного приложения, написанного на
Всем привет!
Fuzzing – интересная, но далеко не самая очевидная тема, особенно «в начале пути». Чтобы чуть упростить погружение предлагаем Вашему вниманию статью. В ней собрана как теоретическая информация, так и пара практических примеров.
Рассматривается следующий «процесс»:
🍭 Инструментация. Грубо говоря – добавление в код или в исполняемый файл средств, которые позволяют понять какие части кода были выполнены в момент тестирования (code coverage)
🍭 Генерация входных данных. Первичные данные, которые будут использованы в дальнейшем – можно генерировать как «руками», так и с использованием средств автоматизации
🍭 Мутация входных данных. Генерация новых тестовых данных за счет изменения существующих
🍭 Тестирование. Применение сгенерированных тестовых данных для анализа программного обеспечения
🍭 Сбор обратной связи. Анализ code coverage, запуск повторных тестов для получения лучшего результата
Для указанного выше «процесса» Автор статьи создает PoC на примере минималистичного приложения, написанного на
C++. Второй пример чуть интереснее: в качестве «подопытного» выступает библиотека libxml2. Комментарии, код, описание, результаты – все на месте!❤2👍1🔥1
SSSC_Recos.pdf
2.1 MB
Recommended Practices for Managing Open-Source Software and Software Bill of Materials
Всем привет!
В приложении доступен материал от NSA (~ 45 страниц), посвященный безопасности цепочки поставки ПО, а именно – управлению open source и SBOM.
Внутри можно найти:
🍭 Создание собственного безопасного repo для open source
🍭 Управление рисками ИБ при работе с open source компонентами
🍭 Использование электронной подписи для артефактов
🍭 Рекомендации по созданию/управлению SBOM и не только
Материал по большей части теоретический, в нем отсутствуют детальные how to. Однако, много полезной информации для размышления относительно того, «какой может быть целевая картина».
Всем привет!
В приложении доступен материал от NSA (~ 45 страниц), посвященный безопасности цепочки поставки ПО, а именно – управлению open source и SBOM.
Внутри можно найти:
🍭 Создание собственного безопасного repo для open source
🍭 Управление рисками ИБ при работе с open source компонентами
🍭 Использование электронной подписи для артефактов
🍭 Рекомендации по созданию/управлению SBOM и не только
Материал по большей части теоретический, в нем отсутствуют детальные how to. Однако, много полезной информации для размышления относительно того, «какой может быть целевая картина».
👍7
Edge Computing
Всем привет!
Представьте себе, что вам нужно провести очень крупное событие 🏟, которое подразумевает огромнейшее количество людей в одном месте
🏃🏻♀🏃🏃♂🏃🏻♀🏃🏃♂
и, при этом, необходимо обеспечить качественное оказание
📱💻 телекоммуникационных услуг
на данном событии как для зрителей события (для того чтобы они могли без каких-либо задержек обмениваться видео со своими друзьями и стримить видео онлайн), так и
🧑💻 🎥📽 технического персонала
(для проведения качественной онлайн-трансляции спортивного события).
❓Что для этого необходимо?.. 🤔
Скорее всего для этого понадобится в кратчайшие сроки развернуть
🚐 мобильные микродатацентры
и
🗼мобильные базовые станции
вблизи проведения данного события!
При этом, чтобы была возможность оказать качественные телекоммуникационные услуги, необходимо обеспечить отказоустойчивость таких телекоммуникационных решений, но, при этом, соответствовать оптимальному критерию SWaP-C, то есть сделать так чтобы само решение не было очень громоздким (не занимало много места, чтобы его можно было беспроблемно доставить и развернуть в рамках плотной городской застройки) и не было очень дорогим.
Чтобы всё это реализовать существует архитектура Edge Computing, которая подразумевает что часть полезных вычислений будет выполняться в точке, которая максимально приближена к конечному пользователю. За счёт этого можно частично снять нагрузку с каналов связи для передачи трафика за счёт обработки трафика на стороне Edge, тем самым, снизить задержки передачи обработанного трафика и обеспечить качественное предоставление телекоммуникационных услуг.
Для более подробного знакомства с тем, что такое Edge Computing советуем почитать следующие статьи:
🍉 Computing platform types
🍉 What are Various Types of Edge Computing that Exist Today?
🍉 4 Types of Edge Computing — Broadly Categorized
🍉 Far-edge future
С этого поста мы начинаем небольшой цикл заметок на тему Edge Computing!
В следующей серии расскажем при чём тут💻 Kubernetes! 😉
Всем привет!
Представьте себе, что вам нужно провести очень крупное событие 🏟, которое подразумевает огромнейшее количество людей в одном месте
🏃🏻♀🏃🏃♂🏃🏻♀🏃🏃♂
и, при этом, необходимо обеспечить качественное оказание
📱💻 телекоммуникационных услуг
на данном событии как для зрителей события (для того чтобы они могли без каких-либо задержек обмениваться видео со своими друзьями и стримить видео онлайн), так и
(для проведения качественной онлайн-трансляции спортивного события).
❓Что для этого необходимо?.. 🤔
Скорее всего для этого понадобится в кратчайшие сроки развернуть
🚐 мобильные микродатацентры
и
🗼мобильные базовые станции
вблизи проведения данного события!
При этом, чтобы была возможность оказать качественные телекоммуникационные услуги, необходимо обеспечить отказоустойчивость таких телекоммуникационных решений, но, при этом, соответствовать оптимальному критерию SWaP-C, то есть сделать так чтобы само решение не было очень громоздким (не занимало много места, чтобы его можно было беспроблемно доставить и развернуть в рамках плотной городской застройки) и не было очень дорогим.
Чтобы всё это реализовать существует архитектура Edge Computing, которая подразумевает что часть полезных вычислений будет выполняться в точке, которая максимально приближена к конечному пользователю. За счёт этого можно частично снять нагрузку с каналов связи для передачи трафика за счёт обработки трафика на стороне Edge, тем самым, снизить задержки передачи обработанного трафика и обеспечить качественное предоставление телекоммуникационных услуг.
Для более подробного знакомства с тем, что такое Edge Computing советуем почитать следующие статьи:
🍉 Computing platform types
🍉 What are Various Types of Edge Computing that Exist Today?
🍉 4 Types of Edge Computing — Broadly Categorized
🍉 Far-edge future
С этого поста мы начинаем небольшой цикл заметок на тему Edge Computing!
В следующей серии расскажем при чём тут
Please open Telegram to view this post
VIEW IN TELEGRAM
Delltechnologies
Computing platform types | Integrated Edge Management in Smart Manufacturing - White Paper | Dell Technologies Info Hub
As manufacturing enterprises embark on a smart manufacturing journey, this document provides practical advice for aligning an enterprise strategy with deployment of edge computing, as well as a methodology for the life cycle management of edge estates.
👍6🔥4🤡2❤🔥1⚡1🆒1
DevSecOps Maturity Model 2023
Всем привет!
Хорошо это или плохо, но мир информационной безопасности любит «меряться». Одной из таких «мер» является уровень зрелости, моделей оценки которых очень много. Сегодня представляем Вашему вниманию еще одну – DevSecOps Maturity Model 2023.
Модель описывает 4 «уровня» (stage) среди 6 основных областей (доменов) компетенций и деятельности. Уровни «классические» - от Beginner до Expert. Для каждого из них модель описывает некоторые качественные характеристики, которые помогут определиться с «местоположением».
Области, в свою очередь, включают в себя:
🍭 People & Culture
🍭 Plan & Develop
🍭 Build & Test
🍭 Release and Deploy
🍭 Operate
🍭 Observe & Respond
Для каждого домена, описываются некоторые активности, характерные для разных уровней. В завершении статьи приводятся средства автоматизации, которые можно использовать и наборы контролей (требований), которые помогут развивать DevSecOps. Для контролей, что удобно, приводится mapping на их аналоги в других стандартах и лучших практиках.
P.S. А какая Ваша любимая песня Pink Floyd? 😊 Пишите в комментариях!
Всем привет!
Хорошо это или плохо, но мир информационной безопасности любит «меряться». Одной из таких «мер» является уровень зрелости, моделей оценки которых очень много. Сегодня представляем Вашему вниманию еще одну – DevSecOps Maturity Model 2023.
Модель описывает 4 «уровня» (stage) среди 6 основных областей (доменов) компетенций и деятельности. Уровни «классические» - от Beginner до Expert. Для каждого из них модель описывает некоторые качественные характеристики, которые помогут определиться с «местоположением».
Области, в свою очередь, включают в себя:
🍭 People & Culture
🍭 Plan & Develop
🍭 Build & Test
🍭 Release and Deploy
🍭 Operate
🍭 Observe & Respond
Для каждого домена, описываются некоторые активности, характерные для разных уровней. В завершении статьи приводятся средства автоматизации, которые можно использовать и наборы контролей (требований), которые помогут развивать DevSecOps. Для контролей, что удобно, приводится mapping на их аналоги в других стандартах и лучших практиках.
Devsecopsguides
DevSecOps Maturity Model 2023
DevSecOps represents the integration of security practices within the DevOps framework.
👍4🔥4❤2
Роль Kubernetes в Edge Comuting
Всем привет!
В предыдущем посте шла речь про то, что такое Edge Computing и про то, какие факторы являются важными:
🍉 обеспечение отказоустойчивости
🍉 мобильность
🍉 быстрое развёртывание
Платформы на базе Kubernetes идеально сочетают все вышеописанные свойства! В частности Kubernetes позволяет быстро развернуть необходимые прикладные приложения в микродатацентрах и мобильных базовых станциях и оперативно заскейлиться в зависимости от изменения типа трафика.
Тут также на помощь приходят принципы GitOps, которые позволяют из одной центральной точки распространить необходимую версию приложения на все базовые станции с установленным Kubernetes на борту.
Ну что, нравится такой подход?
Тогда читаем более подробно про это:
🍉 https://www.cncf.io/blog/2022/08/18/kubernetes-on-the-edge-getting-started-with-kubeedge-and-kubernetes-for-edge-computing/
🍉 https://thenewstack.io/a-new-kubernetes-edge-architecture/
🍉 https://www.f5.com/company/blog/managing-thousands-of-edge-kubernetes-clusters-with-gitops
В следующей серии расскажем о том как можно сократить затраты на кластер Kubernetes в Edge Computing.
Всем привет!
В предыдущем посте шла речь про то, что такое Edge Computing и про то, какие факторы являются важными:
🍉 обеспечение отказоустойчивости
🍉 мобильность
🍉 быстрое развёртывание
Платформы на базе Kubernetes идеально сочетают все вышеописанные свойства! В частности Kubernetes позволяет быстро развернуть необходимые прикладные приложения в микродатацентрах и мобильных базовых станциях и оперативно заскейлиться в зависимости от изменения типа трафика.
Тут также на помощь приходят принципы GitOps, которые позволяют из одной центральной точки распространить необходимую версию приложения на все базовые станции с установленным Kubernetes на борту.
Ну что, нравится такой подход?
Тогда читаем более подробно про это:
🍉 https://www.cncf.io/blog/2022/08/18/kubernetes-on-the-edge-getting-started-with-kubeedge-and-kubernetes-for-edge-computing/
🍉 https://thenewstack.io/a-new-kubernetes-edge-architecture/
🍉 https://www.f5.com/company/blog/managing-thousands-of-edge-kubernetes-clusters-with-gitops
В следующей серии расскажем о том как можно сократить затраты на кластер Kubernetes в Edge Computing.
CNCF
Kubernetes on the edge: getting started with KubeEdge and Kubernetes for edge computing
Guest post originally published on the InfluxData blog by Charles Mahler Developers are always trying to improve the reliability and performance of their software, while at the same time reducing…
👍6🔥3❤1👏1
2-нодовый отказоустойчивый кластер Kubernetes!
(нет, это не опечатка)
Всем привет!
В предыдущих постах мы познакомились с понятием Edge Computing и роли Kubernetes в Edge Computing и обещали рассказать о том как можно сократить затраты на кластер Kubernetes в Edge Computing.
Помимо уже разобранных факторов также являются достаточно важными факторами:
🍉 мобильность/компактность
🍉 стоимость решения
Чтобы удовлетворить данным факторам необходимо спроектировать Платформу на базе Kubernetes, которая будет состоять из одной ноды, но тогда теряется отказоустойчивость, или же из классических трёх нод для обеспечения кворума.
И тут встаёт архитектурная диллема: купить один сервер под решение или три, но, при этом, заплатить в три раза больше за обеспечение отказоустойчивости... 🤔
❓А можно как-то сэкономить?..🤔
‼️Да, можно - сделать двухнодовый кластер Kubernetes! 🤓
❓Что нам для этого потребуется?..🤔
Всего лишь найти замену etcd, который требует наличия кворума! И это позволит реализовать 2-нодовый отказоустойчивый кластер Kubernetes! 🤓
На просторах Интернет вы, возможно с трудом, но найдёте готовые решения (1, 2), но такое решение возможно собрать самим, например, из следующих кубиков:
🍉 kine - транслятор запросов etcd в PostgreSQL/MySQL/SQLite(который, кстати, используется в легковесном k3s и он прекрасно подходит для Edge Computing)
🍉 Собственно СУБД PostgreSQL/MySQL в режиме Active/Standby
(нет, это не опечатка)
Всем привет!
В предыдущих постах мы познакомились с понятием Edge Computing и роли Kubernetes в Edge Computing и обещали рассказать о том как можно сократить затраты на кластер Kubernetes в Edge Computing.
Помимо уже разобранных факторов также являются достаточно важными факторами:
🍉 мобильность/компактность
🍉 стоимость решения
Чтобы удовлетворить данным факторам необходимо спроектировать Платформу на базе Kubernetes, которая будет состоять из одной ноды, но тогда теряется отказоустойчивость, или же из классических трёх нод для обеспечения кворума.
И тут встаёт архитектурная диллема: купить один сервер под решение или три, но, при этом, заплатить в три раза больше за обеспечение отказоустойчивости... 🤔
❓А можно как-то сэкономить?..
‼️Да, можно - сделать двухнодовый кластер Kubernetes! 🤓
❓Что нам для этого потребуется?..
Всего лишь найти замену etcd, который требует наличия кворума! И это позволит реализовать 2-нодовый отказоустойчивый кластер Kubernetes! 🤓
На просторах Интернет вы, возможно с трудом, но найдёте готовые решения (1, 2), но такое решение возможно собрать самим, например, из следующих кубиков:
🍉 kine - транслятор запросов etcd в PostgreSQL/MySQL/SQLite(который, кстати, используется в легковесном k3s и он прекрасно подходит для Edge Computing)
🍉 Собственно СУБД PostgreSQL/MySQL в режиме Active/Standby
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
DevSecOps Talks
Edge Computing
Всем привет!
Представьте себе, что вам нужно провести очень крупное событие 🏟, которое подразумевает огромнейшее количество людей в одном месте
🏃🏻♀🏃🏃♂🏃🏻♀🏃🏃♂
и, при этом, необходимо обеспечить качественное оказание
📱💻 телекоммуникационных…
Всем привет!
Представьте себе, что вам нужно провести очень крупное событие 🏟, которое подразумевает огромнейшее количество людей в одном месте
🏃🏻♀🏃🏃♂🏃🏻♀🏃🏃♂
и, при этом, необходимо обеспечить качественное оказание
📱💻 телекоммуникационных…
👍6🔥5😁2❤1⚡1👏1
В чём преимущества Kubernetes перед виртуализацией при использовании в Edge Computing?
Всем привет!
Продолжаем повествование про Edge Computing! ;)
В последние годы ко многим пришло понимание того как ещё больше удовлетворить критерию SWaP-C. В частности, поняли что необходимо сократить оверхэд, возникающий от виртуализации за счёт перехода к контейнеризации. При этом, за счёт использования Kubernetes, появляются ряд преимуществ над виртуализацией:
🍉 эффективность использования вычислительных ресурсов
🍉 более высокая производительность и снижение задержек (latency)
🍉 быстрое масштабирование и принцип самовосстановления (self-healing)
🍉 лучшая переносимость приложений между разными контейнерными платформами
🍉 высокая скорость разработки и сокращение Time to Market
🍉 высокая безопасность
Более подробно о преимуществах Kubernetes можно узнать из следующих статей:
🍉 https://symphony.rakuten.com/blog/better-telco-with-kubernetes
🍉 https://www.weave.works/solutions/telco/
🍉 https://www.influxdata.com/blog/kubernetes-edge-kubeedge-edge-computing/
Ну что удивлены какая связь данных заметок с DevSecOps?...
В следующей серии расскажем про способы обеспечения безопасности в Edge-кластерах Kubernetes! ;)
Всем привет!
Продолжаем повествование про Edge Computing! ;)
В последние годы ко многим пришло понимание того как ещё больше удовлетворить критерию SWaP-C. В частности, поняли что необходимо сократить оверхэд, возникающий от виртуализации за счёт перехода к контейнеризации. При этом, за счёт использования Kubernetes, появляются ряд преимуществ над виртуализацией:
🍉 эффективность использования вычислительных ресурсов
🍉 более высокая производительность и снижение задержек (latency)
🍉 быстрое масштабирование и принцип самовосстановления (self-healing)
🍉 лучшая переносимость приложений между разными контейнерными платформами
🍉 высокая скорость разработки и сокращение Time to Market
🍉 высокая безопасность
Более подробно о преимуществах Kubernetes можно узнать из следующих статей:
🍉 https://symphony.rakuten.com/blog/better-telco-with-kubernetes
🍉 https://www.weave.works/solutions/telco/
🍉 https://www.influxdata.com/blog/kubernetes-edge-kubeedge-edge-computing/
Ну что удивлены какая связь данных заметок с DevSecOps?...
В следующей серии расскажем про способы обеспечения безопасности в Edge-кластерах Kubernetes! ;)
Telegram
DevSecOps Talks
Edge Computing
Всем привет!
Представьте себе, что вам нужно провести очень крупное событие 🏟, которое подразумевает огромнейшее количество людей в одном месте
🏃🏻♀🏃🏃♂🏃🏻♀🏃🏃♂
и, при этом, необходимо обеспечить качественное оказание
📱💻 телекоммуникационных…
Всем привет!
Представьте себе, что вам нужно провести очень крупное событие 🏟, которое подразумевает огромнейшее количество людей в одном месте
🏃🏻♀🏃🏃♂🏃🏻♀🏃🏃♂
и, при этом, необходимо обеспечить качественное оказание
📱💻 телекоммуникационных…
🔥5👍3❤1🤩1🤡1🤣1💊1